您的位置:首页 > 编程语言 > Java开发

Java-内省机制

2017-07-07 17:13 190 查看
JavaBean:相当于一种规范,通常只包含一些信息字段和存储方法,该类只有一些属性和针对该属性的get、set方法。没有功能性方法。例如下面的User类就是一个JavaBean。
public class User {
private String pname;
private String price;

public String getPname() {
return pname;
}
public void setPname(String pname) {
this.pname = pname;
}
public String getPrice() {
return price;
}
public void setPrice(String price) {
this.price = price;
}
}

内省机制:通过反射的方式操作JavaBean的属性。
1.创建PropertyDescriptor对象,传入属性和字节码对象
PropertyDescriptor propertyDescriptor = new PropertyDescriptor(属性名称,类);

columnName为数据库中一个表的某个列名,而User.class为User类的字节码对象
PropertyDescriptor propertyDescriptor = new PropertyDescriptor(columnName,User.class);

2.获取属性的set方法
Method writeMethod = propertyDescriptor.getWriteMethod();

3.根据set方法设置属性
writeMethod.invoke(对象,参数);

4.获取属性的get方法
Method readMethod = propertyDescriptor.getReadMethod();

5.根据get方法获取属性值
Object invoke = readMethod.invoke(对像,参数);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: