本人想通过解析字符串如:“controller.类名.方法标识”用反射机制来动态的调用某类的方法。
在用class.getMethod(方法名,类型数组).invoke(实例对象,参数数组),由此可以看到,方法标识就很复杂。我就想能否像springMVC样,给方法取别名,通过这个别名就能找到这个方法调用。求高人解救啊 !!!!!!!!!!!!!
在用class.getMethod(方法名,类型数组).invoke(实例对象,参数数组),由此可以看到,方法标识就很复杂。我就想能否像springMVC样,给方法取别名,通过这个别名就能找到这个方法调用。求高人解救啊 !!!!!!!!!!!!!
解决方案 »
- java的苦恼
- EJB 3.0 no session or session was closed,急啊!
- The method querySubCategory(int) is undefined for the type GoodsCatedao
- c#如何调用java
- 百分求助:如何通知JAVA程序获得Weblogic服务器的上可用线程、等待队列、连接池的连接数及JTA数
- 请推荐一个制作报表的开源项目
- 什么样的类需要作成EJB(会话Bean)?
- weblogic建立的server,用startWebLogic.cmd启动后要求输入用户名和密码,system/security输入后自动跳出
- 急…急…急..java连接oracle数据库时的身份问题!!!
- 不在方法签名中加入throw Exception, 那么方法还能抛出异常吗
- struts.xml中需要session中参数,如何做到?
- win7下 ip和域名在hosts下绑定不生效问题。。。
Class<?> c = Test.class;
Method[] methods = c.getDeclaredMethods();
for(Method method : methods){
if("fun".equals(method.getName())){
Class<?>[] types = method.getParameterTypes();
System.out.println("方法名称:" + method.getName());
System.out.println("参数类型:");
for(Class<?> c1 : types){
System.out.println(c1.getName());
}
System.out.println("==========================");
}
}
}
public void fun(int a, String b, long c){
}
public void fun(int a, String b){
}
}
这怎么没问题,你的fun方法是重载了的,当根据方法名找方法的时候,不是有两个方法吗,怎么动态的调用方法呢。