为了加强对Java Bean的操作支持,Java提供了Introspector类来对Java Bean的属性(Property)、方法(Method)、事件(Event)进行操作。
Introspector类机制的主要思想是,通过Introspector来取得BeanInfo对象。再通过BeanInfo对象再取得EventSetDescriptor、MethodDescriptor、PropertyDescriptor对象,来进行进一步操作。机制图如下:
EventSetDescriptor、MethodDescriptor、PropertyDescriptor几个类的作用如下:
PropertyDescriptor:进行设置实例的property的值,取得对象的setter和getter方法的Method对象(反射用)等。
MethodDescriptor:取得Method对象(反射用)和ParameterDescriptor对象(方法参数相关的Descriptor类)。
EventSetDescriptor:取得Event(事件)相关方法的Method对象(反射用),和MethodDescriptor对象。
相关的例子,可以参看:http://gccg.iteye.com/blog/1835608
Apache为了简化上面的操作,出了相应的BeanUtils工具包。下载地址:http://commons.apache.org/beanutils/(注意:应用的时候还需要一个logging包 http://commons.apache.org/logging/)
关于这个工具包的使用例子可以参看:http://www.cnblogs.com/peida/archive/2013/06/03/3090842.html