现在的需求是想通过类型,方法名,和参数,运行相应方法的需求。
现在的问题是,目标的方法中如果为基本类型,或者是自定义的bean都可以正确取得。
1、但是当目标参数传入List<自定义Bean>的形式时就无法正常取出了,会报出找不到匹配方法的异常
2、如果我把参数改成“自定义Bean[]”是可正常取得方法的,但是invork却报参数类型错误
很困惑,请有此方面经验的大侠指点一下怎么解决
希望可以给个实现代码,本人理解有限
现在的问题是,目标的方法中如果为基本类型,或者是自定义的bean都可以正确取得。
1、但是当目标参数传入List<自定义Bean>的形式时就无法正常取出了,会报出找不到匹配方法的异常
2、如果我把参数改成“自定义Bean[]”是可正常取得方法的,但是invork却报参数类型错误
很困惑,请有此方面经验的大侠指点一下怎么解决
希望可以给个实现代码,本人理解有限
解决方案 »
- Struts2中的传值方式的好处与坏处
- unix ,java 专家来看,疑难问题。java 通过Runtime 调用unxi 系统命令的一个小问题
- 关于api过时的问题 请教
- 新问题!
- swing 和 awt??
- jre的版本问题
- 请问一下各位关于ServerSocket和jsp页面的问题,急~~~
- httpclient 4.3 通过验证码登录总是失败,请高手指教!
- 有回應就給分!!!!
- Visual j++6.0 能否与 JDK1.2.1 配合使用?
- 急!!!请求帮助!!! aptana插件在eclipse中没有提示,怎么办?
- 奇怪的java.lang.NoClassDefFoundError错误
package Test;import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;public class Test {
public static void main(String[] args) throws Exception {
Test test = new Test();
A a = test.new A();
a.setA("a");
A b = test.new A();
b.setA("b");
A c = test.new A();
c.setA("c");
List<A> list = new ArrayList<A>();
list.add(a);
list.add(b);
list.add(c);
Class cls = Class.forName("Test.Test");
Method m = cls.getMethod("show", List.class);
m.invoke(test, list);
}
public void show(List<A> list){
for(A a:list){
System.out.println(a.getA());
}
}
class A{
private String a; public String getA() {
return a;
} public void setA(String a) {
this.a = a;
}
}
}
能出来啊!