我们以前写mybatis的dao的时候,基本上都是使用的xml文件来处理的。

xml相对来讲,一般的比较复杂点的单表还好点,但是简单的增删改查,使用xml就有点重了。

所以后来就出现了mybatis-plus之类的框架。

但是有些业务使用mybatis-plus在效率方面还是有点不太好看。

例如批量功能。

mybatis-plus的批量是一条条操作的。如果数据太大,可能就是个悲伤的故事。。。

如果要自己写,一般就使用dao,在xml中使用sql语句来实现。

操作流程:

1、先写个测试SQL;

update table set status=0 

2、dao定义接口

Integer updateBatch();

3、找到对应的mapper xml文件,xml中写对应的sql映射块

<update id="updateBatch">update table set status=0
</update>

我们发现,这个方式下,我们需要修改dao和xml文件。

有没有更简单的实现呢?

这里推荐使用@Update注解。

直接在dao接口上面写就可以了。

@Update("update table set status=0")
Integer updateBatch();

这样就剩下了第3步了。xml文件也不用建了。后续查找的时候也不用去找xml文件了。

下面列下常用的XML注解

Mybatis常用注解
注解 说明
@Insert 新增
@Delete 删除
@Update 更新
@Select  查询
@Result  结果集封装
@Results 与@Result 一起使用,封装多个结果集
@ResultMap 引用@Results 定义的封装
@One 一对一结果集封装
@Many 一对多结果集封装
@SelectProvider 动态 SQL 映射
@CacheNamespace 注解二级缓存的使用

使用mybatis注解解放xml相关推荐

  1. mybatis 注解和xml同时实现

    一.pox文件引入mysql和mybatis <dependency><groupId>mysql</groupId><artifactId>mysql ...

  2. mybatis使用注解替代xml配置,动态生成Sql

    mybatis使用注解替代xml配置时,遇到判断条件是否为null或者为空时,@Select很难搞定,不知道怎么办? mybatis3中增加了使用注解来配置Mapper的新特性,使用 SelectPr ...

  3. Mybatis注解配置与xml配置不能同时使用

    错误信息 Error parsing SQL Mapper Configuration. Cause: java.lang.IllegalArgumentException: Mapped State ...

  4. Mybatis中注解和xml可以同时使用吗?

    今天开始使用注解的方式写dao层的接口,注解比xml文件更加的方便,但是感觉不利于代码的维护,也不利于动态sql的书写,而且需要在全局配置文件中配置<mappers>标签,注解需要使用&l ...

  5. java xml快捷注释_详解SpringBoot 快速整合Mybatis(去XML化+注解进阶)

    序言:使用MyBatis3提供的注解可以逐步取代XML,例如使用@Select注解直接编写SQL完成数据查询,使用@SelectProvider高级注解还可以编写动态SQL,以应对复杂的业务需求. 一 ...

  6. 博为峰JavaEE技术文章 ——MyBatis 注解

    2019独角兽企业重金招聘Python工程师标准>>> 前面在介绍Mybatis时,我们都是使用mapper xml文件来配置SQL语句的.Mapper xml使用起来比较方便,但是 ...

  7. java 注解生成实例_Java 8 开发的 Mybatis 注解代码生成工具

    MybatisAnnotationTools MybatisAnnotationTools 是基于 Java8 开发的一款可以用于自动化生成 MyBatis 注解类的工具,支持配置数据源.类路径,表名 ...

  8. mybatis注解详解

    mybatis注解详解 首 先当然得下载mybatis-3.0.5.jar和mybatis-spring-1.0.1.jar两个JAR包,并放在WEB-INF的lib目录下 (如果你使用maven,则 ...

  9. 3、SpringBoot整合MyBatis注解版及配置文件版

    目录 1.配置pom.xml 2.配置application.yml 3.配置DruidConfig关联yml的配置文件spring.datasource 4.创建数据库及数据库表结构 5.创建对应的 ...

最新文章

  1. 实体嵌入Entity Embedding及代码实现
  2. Python的隐藏功能
  3. golang 切片排序
  4. python break语句作用_Python
  5. 基于新版 node 的 vue 脚手架搭建
  6. Nginx 概述(2)
  7. 麦克纳姆轮全向移动机器人自旋转运动分析
  8. 高级软件工程第六次作业:东理三剑客团队作业-3
  9. 这次聊聊Promise对象
  10. 企业全面运营管理沙盘模拟心得_企业经营沙盘模拟心得体会
  11. matlab 多项式输入,MATLAB多项式
  12. 多种方法教你如何让手机免费上网
  13. php显示某年某月某日,C++_C++自定义函数判断某年某月某日是这一年中第几天,本文实例讲述了C++自定义函数 - phpStudy...
  14. Oracle之排序会影响rownum混乱的问题
  15. 驭势领读 | 《让大象飞》:资本寒冬正好能让市场回归理性
  16. 高德地图api调用demo_高德地图定位如何调用api?
  17. Tampermonkey谷歌浏览器插件
  18. matlab提取数据画图,matlab提取excel表格数据画图-如何将Excel中的数据导入MATLAB并在MATLAB中画出图......
  19. 一文搞定pandas的数据合并
  20. 4个方面入手 TiledMap 地图优化!W字干货分享

热门文章

  1. PICT工具的安装与使用
  2. html网页怎么设置背景照片墙,照片墙.html
  3. android+照片墙流布局,Android照片墙应用技巧
  4. windows 程序禁用中文输入法
  5. 利用jQuery实现h5播放器播放组件
  6. 读《人人都能用英语》
  7. LATEX图片(子图)排版
  8. python中画图时x,y轴名称出现中文乱码的解决方法
  9. Unity3D制作简单的太阳系
  10. Ubuntu挂载3T硬盘或大于2T磁盘