Update方法

更新某条记录

public void recycleAccount(Long Id) {Account account = new Account();account.setId(Id);account.setAccountStatus(RecordStatusEnum.VALID.getValue());accountService.update(account);
}

updateByPrimaryKeySelective方法

只是更新实体model中,不为空的字段

public void lockAccount(Long Id) {Account account = new Account();account.setId(Id);account.setAccountStatus(RecordStatusEnum.LOCKED.getValue());accountService.updateByPrimaryKeySelective(account);
}

updateByExample方法

更新实体所有的字段

如果,example定义了两个字段,数据库共4个字段
则修改数据库的两个字段,其余两个字段改为null

private void makedAssayOrderSample(String sampleNo) {AssayOrderSampleExample assayOrderSampleExample = new AssayOrderSampleExample();AssayOrderSampleExample.Criteria criteria1 = assayOrderSampleExample.createCriteria();criteria1.andRecordStatusEqualTo(RecordStatusEnum.VALID.getValue());criteria1.andSampleNoEqualTo(sampleNo);AssayOrderSample assayOrderSample = new AssayOrderSample();assayOrderSample.setStatusFlag(AssayTaskStatusEnum.SAMPLE_PREPARATION_FINISHED.getValue());assayOrderSampleService.updateByExample(assayOrderSample, assayOrderSampleExample);
}

updateByExampleSelective方法

选择性更新实体中的字段

如果,example定义了两个字段,数据库共4个字段
则修改数据库的两个字段,其余两个字段不动

public void deleteSelfAndChild(TestObjectCategoryTree tree) {TestObjectCategoryExample testObjectCategoryExample = new TestObjectCategoryExample();TestObjectCategoryExample.Criteria criteria1 = testObjectCategoryExample.createCriteria();criteria1.andIdEqualTo(tree.getId());TestObjectCategoryExample.Criteria criteria2 = testObjectCategoryExample.createCriteria();criteria2.andParentIdsLike(tree.makeSelfAsNewParentIds() + "%");testObjectCategoryExample.or(criteria2);TestObjectCategory testObjectCategory = new TestObjectCategory();testObjectCategory.setModifyTime(new Date());testObjectCategory.setRecordStatus(RecordStatusEnum.DESTROYED.getValue());testObjectCategoryService.updateByExampleSelective(testObjectCategory, testObjectCategoryExample);
}

Mybatis的update方法相关推荐

  1. 诡异!MyBatis的Insert方法一直返回-2147482646?

    作者 | 占小狼的博客 来源 | https://mp.weixin.qq.com/s/iV6BwQkjTXCvfrAwgj2V4w 前几天在做项目demo的时候,发现有一个很奇怪的现象,就是MyBa ...

  2. python合并两个字典的内容,使用update方法

    python合并两个字典的内容,使用update方法 update() 方法可使用一个字典所包含的键值对来更新己有的字典. 在执行 update() 方法时,如果被更新的字典中己包含对应的键值对,那么 ...

  3. MongoDB学习笔记~Update方法更新集合属性后的怪问题

    回到目录 在对MongoDB进行封装后,对于Update更新对象里的集合属性时出现了一个现象,让人感到很恶心,人家更新前是个美丽的Array,但是更新之后集合对象变成了键值对,键是集合的类型名称,值是 ...

  4. 关于Session接口的update方法主要有如下几点要注意

    1.输入参数 一般而言,传递给update的对象要是处于游离状态的对象.如果传一个持久化对象,那么update方法就是多余的,因为Hibernate的脏检查机制会自动根据对象属性值的变化向数据库发送一 ...

  5. 警惕 | 警惕,mybatis的size()方法竟然有坑!

    Hi ! 我是小小,今天我们又见面了,今日的主要内容是MyBatis的size方法使用的主要的注意事项. 前言 MyBatis 是一个开源的轻量级的半自动化的 ORM 框架,用于面向对象和关系型数据库 ...

  6. Hibernate之Session merge与update方法

    2019独角兽企业重金招聘Python工程师标准>>> 项目中使用Hibernate时报了一个异常:org.hibernate.NonUniqueObjectException;经从 ...

  7. java hibernate更新_Hibernate更新某些字段的几种update方法

    Hibernate 中如果直接使用 Session.update(Object o); 会把这个表中的所有字段更新一遍. 比如: public class TeacherTest { @Test pu ...

  8. Python元组和字典的使用、使用字典的注意事项、字典查找数据、字典的增删改、字典的合并 update方法、字典的遍历

    1.元组的使用 count 和index方法 -元组和列表很像,都是用来保存多个数据: -使用一对小括号()来表示一个元组: -元组和列表的区别在于,列表是可变的,而元组是不可变数据类型: -由于它是 ...

  9. DRF--序列化器类中的to_internal_value,to_representation方法,save,create,update方法

    1.to_internal_value方法 def to_internal_value(self, data): 1.1 to_internal_value方法,是所有字段开始校验时的入口方法,最先调 ...

最新文章

  1. 写给程序员的最好的13条建议
  2. 牛客题霸 NC3 链表中环的入口结点
  3. django国际化与html语言,Django 国际化
  4. 远程桌面无法连接服务器,启动Terminal Services 服务报1053错误
  5. umpy知识点补充:np.vstack()np.hstack()
  6. mysql中tab键作用_MySQL小技巧-mysql命令 tab键数据表名、字段名补全功能
  7. 用c#语言制作点歌程序,c#实现KTV点歌系统
  8. Vue实现表格的分页打印和导出Excel功能
  9. 数据分析的终极目标-预测第1辑
  10. Gatekeeper代码导读
  11. 数论 判断素数:普通素数判别 线性筛 二次筛法求素数 米勒拉宾素数检验
  12. 理工生文言文的致谢——小木虫
  13. 免疫荧光实验相关的注意事项汇总
  14. GHost++ CB (Custom Build) MOD
  15. 中国四大发明原理//2021-2-6
  16. 关于高德地图问题总结 (二)地理围栏的使用
  17. 使用TeXpad iOS实现移动办公(一)
  18. hamlet.txt英文哈姆雷特下载及实现文本词频统计
  19. 【CTF】图片马制作
  20. cisco learn book index 2

热门文章

  1. 【转载】OI生涯结束……在逸夫楼那些的日子里
  2. 创建游戏场(实战演习)
  3. python中strip(),lstrip(),rstrip()函数的讲解
  4. 关于JQUery.parseJSON()函数的知识札记
  5. 配置错误定义了重复的“system.web.extensions/scripting/scriptResourceHandler” 解决办法...
  6. 递归遍历文件夹,并添加到TreeView控件中
  7. CreateBindGroupNode.txt
  8. Prism4文档翻译(第四章 第一部分) 转载bluesky234
  9. stm32IAP代码升级小结
  10. javascript 和 jq 的调试 用console.log() 函数