遇到一个问题:lombok增加@Accessors(chain = true), 导致apache.commons.beanutils.BeanUtils设置对象字段属性失效
当创建一个对象的时候,想用BeanUtils.setProperty设置对象属性的时候,当对象设置@Accessors(chain = true)的时候,BeanUtils.setProperty不生效。
记录一下。
public static void setFieldName(Object target, String fieldName, Object value) throws NoSuchFieldException, IllegalAccessException, InvocationTargetException {
Class<?> clazz = target.getClass();
//获取属性
Field field = clazz.getDeclaredField(fieldName);
//设置访问权限,私有属性设置为可访问
field.setAccessible(true);
BeanUtils.setProperty(target, fieldName, value);
}
文章讨论了在使用Lombok的@Accessors(chain=true)注解后,如何尝试通过ApacheCommonsBeanUtils.setProperty设置对象字段属性时发现方法失效的问题,以及提供了解决此问题的方法。
3990

被折叠的 条评论
为什么被折叠?



