使用mybatis注解解放xml

Posted 沛沛老爹

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用mybatis注解解放xml相关的知识,希望对你有一定的参考价值。

我们以前写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的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot 快速整合Mybatis(去XML化+注解进阶)

Mybatis在接口上使用注解配置SQL语句以及接口与xml一起使用

Mybatis11 注解的使用

springboot整合mybatis使用xml映射文件和使用注解两种方式的切换

MyBatis笔记----MyBatis 入门经典的两个例子: XML 定义与注解定义

面试官:说说你对Mybatis 中xml和注解映射的理解