内省技术是为了操作java beans的技术
Person p = new Person();
一:传统方式
通过对象实例p调用方法
二:内省技术
PropertyDescriptor p = new PropertyDescriptor("属性名",类)
Method method = p.getWriterMethod() 或
Method method = p.getReadMethod()
method.invoke(这个类的实例p,参数)
三:获得一个类的所有属性
BeanInfo 用于封装bean属性
BeanInfo bi = Introspector.getBeanInfo(类)
PropertyDescriptor[] pd = bi.getProperDescriptors()
四:通过BeanUtils操作bean
注册转化器
ConvertUtils.register(new Converter,目标类型)
Converter是带有一个抽象方法的接口,需要我们实现它
有很多已经做好的转化器,比如LocalDateConverter()等;
BeanUtils.setProperty(对象实例,“属性名”,属性值)