BeanUtils bug: Bean中的List<String>类型可以拷贝到另一个Bean中的List<Long>类型中

如题:

BeanUtils bug: Bean中的List<String>类型可以拷贝到另一个Bean中的List<Long>类型中_第1张图片

如果有A和B两个类,属性名称一样,使用 org.springframework.beans.BeanUtils进行拷贝时,能拷贝进去,取值的时候才会报错。

正常执行

BeanUtils bug: Bean中的List<String>类型可以拷贝到另一个Bean中的List<Long>类型中_第2张图片

get、set时,会报类型转换异常,编译时就会报错。

原因:

 BeanUtils bug: Bean中的List<String>类型可以拷贝到另一个Bean中的List<Long>类型中_第3张图片

BeanUtils中使用反射进行执行,他认为都是List类型,属于同一类型,所以能拷贝。 

你可能感兴趣的:(bug,java)