Apache的PropertyUtils.setProperty()设置属性,报错找不到目标属性

  • Post author:
  • Post category:其他


测试代码:
String dateString = "2202-03-05";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
    Date date = sdf.parse(dateString);
    PropertyUtils.setProperty(tCollectivePolicy, "cValiDate",date);
    if(tCollectivePolicy.getCValiDate()!=null){
        System.out.println("1");
    }else{
        System.out.println("2");

    }
} catch (Exception e) {
    e.printStackTrace();
}

private Date cValiDate;是tCollectivePolicy的一个属性

getBeanInfo获取类的属性描述符的时候,会得到标准化处理过的属性名 CValiData ,自然在提供的类中就找不到这个属性了,自然就报错了,解决方法要么把这个属性从新命名,要么就是用反射,单独处理这个属性




版权声明:本文为weixin_47061157原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。