如何实例化参数calss 得到属性get set 方法

J2EE 码拜 10年前 (2015-04-11) 1111次浏览 0个评论

package com.boeh.leshang.test;

import java.lang.reflect.Field;
import java.util.List;

public class TestReflect {
public static void main(String[] args) {

 List<APerson> listresult= dy(APerson.class);
//   for (int i=0;i<listresult.size();i++){
//   System.out.print(listresult.get(i).getName());
//   }
}

public static <T> List<T>  dy( Class<T> entityClass  ){  

/**
* 这里怎么得到entityClass的get set 方法呢? 然后把值返回给list集合
*/
return null;

}

class APerson {
private String name;
private String sex;

// APerson(){
// name= “John “;
// sex= “男 “;
// age=45;
// }

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getSex() {
return sex;
}

public void setSex(String sex) {
this.sex = sex;
}
}
}

如何实例化参数calss 得到属性get set 方法
8分
抢个沙发。
看看这篇帖子能解决你的问题不 。
http://blog.csdn.net/chenyi0834/article/details/7639708
如何实例化参数calss 得到属性get set 方法
8分
http://blog.csdn.net/chenyi0834/article/details/7639708
链接无法点吗 
如何实例化参数calss 得到属性get set 方法
8分
如果你的get set 方法是 标准的话。

那就可以这么做.

Class entityClass   = Integer.class;

		 Field[] temp = entityClass.getDeclaredFields();
		 for (Field field : temp) {
			 
			 Class<?> tempc = field.getType();
			 
			  String fieldName =  field.getName();
			  fieldName = fieldName.substring(0, 1).toUpperCase()+fieldName.substring(1, fieldName.length());
			 if(temp.equals(boolean.class)){
				 System.out.println("get "+ entityClass.getDeclaredMethod("is"+fieldName, null) );
				 System.out.println("set "+ entityClass.getDeclaredMethod("set"+fieldName, boolean.class);

			 }else {
				 System.out.println("get "+ entityClass.getDeclaredMethod("get"+fieldName, null) );
				 System.out.println("set "+ entityClass.getDeclaredMethod("set"+fieldName, boolean.class);

			 }
		 
		 
		 }
如何实例化参数calss 得到属性get set 方法
6分
上面的 entryClass 是 Integer 类型的, 只是示例。 改成你自己的即可

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明如何实例化参数calss 得到属性get set 方法
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!