mybatis plus saveOrUpdate实现有重复数据就更新,否则新增方式
作者:一写代码就开心
这篇文章主要介绍了mybatis plus saveOrUpdate实现有重复数据就更新,否则新增方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
你的实体类有id这个字段
mybatis plus 默认是根据ID查询数据库,看是否有一样的数据的;所以我们要求你的表里面一定要有一个ID字段
Test testDemo = new Test(); testDemo.setId("555"); testDemo.setBbb(555.33f); gbaseTestService.saveOrUpdate(testDemo);
以上的代码意思就是,先根据ID查询数据库,看有没有数据,如果有,那么久更新,如果没有,那么久新增
你的实体类里面没有ID字段
不是所有的表里面都有ID字段,那么如何实现以上的功能,也就是根据特定的字段进行判断,如果这个字段一样,那么久更新,否则新增;
首先我们先找到实体类,在我们要判断的那个字段上面加
之后写代码
Test testDemo = new Test(); testDemo.setAaa("555"); testDemo.setBbb(555.33f); UpdateWrapper<Test> unite_demo = new UpdateWrapper<Test>() .eq("aaa", testDemo.getAaa()); gbaseTestService.saveOrUpdate(testDemo,unite_demo);
总结
以上就实现了新增或者更新的操作
这些仅为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。