[后端]使用BeanUtils.copyProperties()赋值后,Java对象数据错乱

文章讨论了在使用Spring框架的BeanUtils.copyProperties方法时,由于误将父类属性赋值给子类对象导致的数据错乱问题。作者建议改用逐一设置变量的方式避免此类问题。
摘要由CSDN通过智能技术生成

问题

一些Java对象经过工具方法赋值后 , 出现数据错乱

原因

位于package org.springframework.beans;的 BeanUtils.copyProperties(b,c); 方法 会将b作为资源 然后把这些资源值赋值给c对象 , 但是注意 ,这里所说的资源 也包含b对象的父类a的资源值

所以预期的是想要b对象的值 但是不小心把b对象的父类a的值也用了 就导致c对象出现了数据错乱,例如错误的使用b对象的父类a的id 把c对象原id覆盖

解决

1.不使用BeanUtils.copyProperties() , 而是一个个变量的set

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值