如何获取并操作JavaBean属性
2017-08-01 15:02
302 查看
http://blog.csdn.net/caidie_huang/article/details/52372923
我们要是想要获取或是设置JavaBean中的属性,一般会使用内省机制来实现,其核心类为Introspector
Introspector 类为通过工具学习有关受目标Java Bean 支持的属性、事件和方法的知识提供了一个标准方法。
简单地说,想操作JavaBean中属性,可通过内省机制,使用Introspector类中的
static BeanInfo getBeanInfo(Class<.?> beanClass)方法和PropertyDescriptor[] getPropertyDescriptors()
主要步骤如下:
1)获取指定类型的BeanInfo对象:
BeanInfo beanInfo = Introspector.getBeanInfo(Person.class)或
BeanInfo beanInfo = Introspector.getBeanInfo(Person.class,Object.class);
插入一点,第一种方式最后会得到包括父类在内的属性信息(即是说第二种有过滤作用)
2)获取所有的属性描述器:
PropertyDescriptor[] pds = info.getPropertyDescriptors() ;
3)遍历设置或取出属性:
我们要是想要获取或是设置JavaBean中的属性,一般会使用内省机制来实现,其核心类为Introspector
Introspector 类为通过工具学习有关受目标Java Bean 支持的属性、事件和方法的知识提供了一个标准方法。
简单地说,想操作JavaBean中属性,可通过内省机制,使用Introspector类中的
static BeanInfo getBeanInfo(Class<.?> beanClass)方法和PropertyDescriptor[] getPropertyDescriptors()
主要步骤如下:
1)获取指定类型的BeanInfo对象:
BeanInfo beanInfo = Introspector.getBeanInfo(Person.class)或
BeanInfo beanInfo = Introspector.getBeanInfo(Person.class,Object.class);
插入一点,第一种方式最后会得到包括父类在内的属性信息(即是说第二种有过滤作用)
2)获取所有的属性描述器:
PropertyDescriptor[] pds = info.getPropertyDescriptors() ;
3)遍历设置或取出属性:
//获取属性描述器 PropertyDescriptor[] pds = info.getPropertyDescriptors() ; for (PropertyDescriptor pd : pds) { System.out.println(pd.getName());//得到属性名 System.out.println(pd.getPropertyType());//得到属性数据类型 Method read = pd.getReadMethod();//得到JavaBean中的getter方法 Method write = pd.getWriteMethod();//得到JavaBean中的setter方法 System.out.println(read); System.out.println(write); }
相关文章推荐
- 如何获取并操作JavaBean属性
- 反射机制的概述和字节码对象的获取方式 JavaBean的概述&BeanUtils的使用 反射操作构造方法、成员方法、成员属性
- 如何使用C#操作快捷方式(获取快捷方式属性、创建快捷方式)
- 如何使用C#操作快捷方式(获取快捷方式属性、创建快捷方式)
- 如何能实现javabean的属性拷贝
- C++如何获取文件属性
- vue.js 中如何监听watch:{}对象中的某个属性的变化,做相应的操作
- JS 如何获取自定义属性
- Asp.Net 文件操作基类(读取,删除,批量拷贝,删除,写入,获取文件夹大小,文件属性,遍历目录)
- 有关复选框的操作,如何获取多选id,
- 如何从Subversion的dump备份中获取指定目录的数据操作步骤
- 如何获取Input标签自定义属性的值
- Java如何获取xml文件中子节点的属性
- 如何实时对ios中麦克风的数据进行解析,获取声音频率等相关的属性?
- HDFS java操作(二)FileStatus 获取文件属性,globStatus 进行路径过滤
- 原生JS中如何获取CSS属性中的值
- Asp.Net_文件操作基类(读取,删除,批量拷贝,删除,写入,获取文件夹大小,文件属性,遍历目录)
- 如何通过javascript操作web控件的自定义属性
- java如何获取mongodb的连接并执行简单的操作?
- C# Winform中如何实现获取当前用户的网络名和登录名【数据库操作】