Spring的BeanUtil的copyProperties方法 慎用!!

2020-09-27 10:19:38 浏览数 (1)

背景

笔者在用工作场景中发现代码中一个bug,有两批对象,A批和B批,发现对B批没有进行什么操作,但是对象的内容变化了。

所以,就看B的对象是如何创建的,发现B的对象是A批对象通过Spring的BeanUtil的copyProperties方法进行赋值的,虽然,B是new出来后,然后进行拷贝,而不是直接使用A批对象的引用。 什么意思呢? 就是

代码语言:javascript复制
A a = new A();
B b = new B();
//省略对a对象进行属性set操作后...
listA.add(<

0 人点赞