获取对象的属性
使用reflectAsm库
目前发现通过reflectAsm获取属性值的效率是最高的。远远超越BeanUtils方法
以下通过对象getter方法获取属性值
public static Object getPropertyValue(Object target, String fieldName) {
if (target==null || StringUtils.isEmpty(fieldName)) {
return null;
}
String methodName = "get" + fieldName.substring(0, 1).toUpperCase()
+fieldName.substring(1);
MethodAccess methodAccess = MethodAccess.get(target.getClass());
return methodAccess.invoke(target, methodName);
}
引入maven依赖
<dependency>
<groupId>com.esotericsoftware</groupId>
<artifactId>reflectasm</artifactId>
<version>1.11.9</version>
</dependency>