【发布时间】:2021-06-03 05:58:38
【问题描述】:
我目前正在寻找一种将属性动态设置为对象的方法,我有这个:
public static void assign(Object instance, String attribute, Object value) {
try {
if (value != null) {
BeanUtils.setProperty(instance, attribute, value);
}
} catch (IllegalAccessException | InvocationTargetException ex) {
throw new TechnicalException(ex.getMessage(), ex);
}
}
但是 Sonarqube 给我一个错误:
“确保在此处设置 JavaBean 属性是安全的。”
所以我需要一种替代方法来动态填充我的对象,或者一种方法来避免“BeanUtils.setProperty”中的异常(避免异常,因为由于项目的性质,没有漏洞风险)。
或者以某种方式接收一个对象,并通过动态转换值的数据类型给一个字段分配一个特定的值。
有什么想法吗?
非常感谢您。
【问题讨论】:
标签: java reflection java-8 sonarqube apache-commons-beanutils