mybatis重复查询导致内存地址相同bug

bug记录

java 复制代码
        DeathMedicalProve deathMedicalProve = deathMedicalProveMapper.selectById(dMPCA.getReda());
                    //新增签照
                    DeathMedicalProve prove = iDeathMedicalProveService.selectById(dMPCA.getReda());
                    prove.setId(null);
                    prove.setOldDeathBh(prove.getBh());
                    prove.setBh(null);
                    prove.setQfjgmc(null);
                    prove.setQfjgdm(null);
                    prove.setCreateTime(new Date());
                    prove.setJmswyxzmzjzt(CertificateStatusEnum.EFFECTIVE.getType());
                    prove.setQflx(MedicalIssueTypeEnum.FIRST_ISSUANCE.getType());
                    prove.setAuditStatus(MedicalIssueStatusEnum.ISSUING.getType());
                    prove.setDeleteRemark(null);
                    prove.setRemake(null);
                    prove.setPrintCount(0);
                    prove.setPrintDate(null);
                    prove.setDataTrans(null);
                    deathMedicalProveMapper.insert(prove);

为什么会导致deathMedicalProveid被重新赋值

都是指向的同一个内存地址导致后续修改一致

解决方法:

org.springframework.beans.BeanUtils.copyProperties(originalProve, newProve);

相关推荐
一条泥憨鱼13 小时前
苍穹外卖【day5|Redis与店铺营业状态设置】
java·后端·mybatis·苍穹外卖
来杯@Java1 天前
学生选课管理系统(基于springboot+vue前后端分离的项目)计算机毕业设计java
java·spring boot·spring·vue·毕业设计·maven·mybatis
我是唐青枫1 天前
Java MyBatis 实战指南:XML 映射、动态 SQL 与数据访问层设计
java·mybatis
疏狂难除2 天前
X86-64 Assembly中printf 打印 float 和 double的bug的解决
bug·assembly
碎碎念_4922 天前
SpringBoot和MyBatis框架·速通版
spring boot·后端·mybatis
唐青枫2 天前
Java MyBatis 实战指南:XML 映射、动态 SQL 与数据访问层设计
java·mybatis
一条泥憨鱼3 天前
苍穹外卖【day3|菜品管理】
java·数据库·sql·mysql·mybatis
INFINI Labs3 天前
Elasticsearch 6/7/8 到 Easysearch 2.x 迁移指南
大数据·elasticsearch·mybatis·向量·snapshot
CodeStats3 天前
从JDBC时代到MyBatis封神:SQL全流程手写ORM实战
sql·mysql·mybatis
nashane3 天前
HarmonyOS 6学习:指南针“文图反向”Bug修复——从“北偏东”变“北偏西”的坐标系纠错
学习·华为·bug·harmonyos