BeanUtils.copyProperties操作List集合失败的处理方法分享

戚薇 Java经验 发布时间:2023-05-10 17:14:41 阅读数:13332 1
今天在使用BeanUtils.copyProperties复制list时,出现失败,那么为什么会出现这个失败的现象呢?
出现这种现象的原因是由于:
    BeanUtils.copyProperties(Object source, Object target)方法
	    source对象和target对象相应属性的名称和类型必须都一样才可以成功拷贝属性值
	BeanUtils.copyProperties只对bean属性进行复制
	    此处复制属于浅复制
	BeanUtils.copyProperties使用反射
	    直接将对象的引用set进去,并不是深拷贝

修复BeanUtils.copyProperties的方法

public class MyBeanUtils extends BeanUtils {
    
    public static<T> List copyList(List<T> sourceList) {
        if (CollectionUtils.isEmpty(sourceList)) {
            return Collections.emptyList();
        }
        return JSON.parseArray(JSON.toJSONString(sourceList), sourceList.get(0).getClass());
    }
}
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202305/16837101106397.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者