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);

相关推荐
小趴菜不能喝17 小时前
若依Plus 的XSSFilter 的bug
bug
sunddy_x17 小时前
Spring事务
java·spring·mybatis
阿杰 AJie18 小时前
MyBatis-Plus 的内置方法
java·数据库·mybatis
橘橙黄又青18 小时前
MyBatis篇
数据库·oracle·mybatis
一直都在57218 小时前
Spring3整合MyBatis实现增删改查操作
前端·vue.js·mybatis
迪霸戈19 小时前
MyBatis动态SQL避坑:为什么List用`[0]`而不是`get(0)`
sql·list·mybatis
不凡而大米、19 小时前
报错:传入的请求具有过多的参数。该服务器支持最多2100个参数
java·开发语言·mybatis
BD_Marathon19 小时前
MyBatis的一级缓存
spring·缓存·mybatis
啊吧怪不啊吧19 小时前
极致性能的服务器Redis之Hash类型及相关指令介绍
大数据·数据库·redis·sql·mybatis·哈希算法
小马爱打代码1 天前
MyBatis:反射模块详解
mybatis