码迷,mamicode.com
首页 > 编程语言 > 详细

[新手学Java]使用内省(Introspector)操作JavaBean属性

时间:2016-10-04 01:35:42      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:

获取类bean中的所有属性:

@Test
//获取类bean中的所有属性
public void test1() throws Exception{
    BeanInfo info = Introspector.getBeanInfo(Person.class);
    PropertyDescriptor[] decriptors = info.getPropertyDescriptors();
    for(PropertyDescriptor decriptor : decriptors){
        //输出属性的名称
        System.out.println(decriptor.getName());
        //输出属性的类型
        System.out.println(decriptor.getPropertyType());
    }
        
}

读/写bean中某个属性:

@Test
//操纵bean中某个属性
public void test2() throws Exception{
    Person p=new Person();
    
    PropertyDescriptor decriptor = new PropertyDescriptor("username",Person.class);
    
    //得到属性的写方法
    Method method=decriptor.getWriteMethod();
    method.invoke(p, "张三");

    //得到属性的读方法
    method=decriptor.getReadMethod();
    String username= (String) method.invoke(p);
    System.out.println(username);
}

[新手学Java]使用内省(Introspector)操作JavaBean属性

标签:

原文地址:http://www.cnblogs.com/JiaoWoWeiZai/p/5929817.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!