Java BeanUtils - Background (DynaBeans)

描述

借助 PropertyUtils 类,您可以对现有 JavaBean 类进行动态属性访问,而无需进行更改。 作为 JavaBean 的动态计算的属性值也可以通过使用动态属性访问来表示,而无需编写 Java 类来呈现这些属性。 此功能不仅可以节省您的时间,还可以处理动态指定属性集的情况。

DynaBean 接口由 BeanUtils 包生成,该包通过定义 DynaBeans 组支持的属性集来实现接口的方法和 DynaClass 接口。 java.lang.Class 提供 JavaBean 类实例支持的属性。

下面的简单代码片段展示了如何访问 DynaBean 属性:

DynaBean car = ...; // Details depend on which DynaBean implementation you use
String companyName = (String) car.get("companyName");
Model modelName = (Model) car.get("model");
Object subordinate = car.get("subordinate", 2);
 

PropertyUtils属性的getter和setter方法可用于访问DynaBeans中的属性。 例如,PropertyUtils.getSimpleProperty() 方法是一个 DynaBean 实现,当您进行调用时,它将清楚地转换为合适的 DynaBean getter 方法。 因此,应用程序的动态属性访问基于 PropertyUtils API,并且可用于检索 JavaBean 或 DynaBean。