描述
Java语言的标准JavaBeans可用于使用正确的getter方法访问bean的属性值. Java语言提供 java.beans.Introspector 类以在运行时检查Java类.这表示 getter 和 setter 方法的属性名称以及动态调用此类方法的 Reflection 功能.您可以使用BeanUtils包中的API动态获取和设置bean属性.
JavaBean属性类型分为三种类型(支持某些属性类型)通过JavaBeans规范,一些得到BeanUtils包的支持):
简单:简单属性包含可以检索或更改的单个值.您可以使用类似Java语言原语的属性类型(如int),简单对象(如 java.lang.String )或通过使用Java语言,应用程序或类指定的复杂对象带有应用程序的库.
索引:有序的对象集合可以存储在索引属性中,可以使用整数值,非负索引或下标单独访问. BeanUtils 包中包含名为 java.util.List 的数据类型必须在JavaBeans规范中编入索引.
映射: BeanUtils 包中包含名为 java.util.Map 的数据类型,该数据类型应映射到标准JavaBeans API和可以使用字符串值键设置和访问各个值.
您可以获取和设置属性值通过使用 PropertyUtils 类中指定的API方法获取数据类型.考虑下面用 getter 和 setter 方法定义的两个bean类的代码片段:
public class Employee { public FullName getFullName(); public void setFullName(String type, FullName fullname); public Employee getSubordinate(int index); public void setSubordinate(int index, Employee subordinate); public String getFirstName(); public void setFirstName(String first_name); public String getLastName(); public void setLastName(String last_name);}