SpringBoot整合mybatis通用Mapper+自定义通用Mapper方法解析
下面我将详细讲解“SpringBoot整合mybatis通用Mapper+自定义通用Mapper方法解析”的完整攻略。
一、什么是通用Mapper
通用Mapper是Mybatis官方提供的一个插件,它可以自动化生成Mybatis的基本CRUD方法,避免了开发人员重复编写大量类似的Sql代码的繁琐工作。这样能够大大提高开发效率,让我们把重点放在业务逻辑上。
二、SpringBoot整合mybatis通用Mapper
1. 引入依赖
首先,我们需要在pom.xml中引入mybatis-spring-boot-starter和mapper-spring-boot-starter两个依赖。
2. 配置数据源和mapper扫描
在application.properties中配置数据源和mapper扫描路径。
3. 编写实体类和mapper
接下来,我们需要按照约定的规则编写实体类和mapper。
例如,我们先定义一个User实体类:
然后,我们定义一个UserMapper接口,继承自通用Mapper的接口和tk.mybatis.mapper.common.example.SelectByExampleMapper接口。
4. 编写Mapper.xml
最后,我们需要编写Mapper.xml文件,这里就不展示简单的CRUD方法了。我们来看一个自定义方法的示例。
5. 测试自定义方法
编写好自定义Mapper方法后,我们就可以在Service类中调用该方法了。
以上就是SpringBoot整合mybatis通用Mapper的基本流程,没有涉及到一些高级用法,但足以应付大部分开发工作。
三、自定义通用Mapper方法解析
通过上面的例子,我们可以看到自定义通用Mapper方法的调用方式和实际编写一个Mapper方法的步骤是相似的。
自定义通用Mapper方法的步骤如下:
-
在Mapper接口中,添加你需要自定义的方法,提供参数和返回值的定义。
-
在Mapper.xml中,编写自定义方法的sql语句,参数名和Mapper接口中定义的一致。
-
在Service类中,按照自定义方法的定义编写Service方法,然后调用Mapper接口中定义的自定义方法,即可完成对应的业务逻辑。
下面,我们再举一个示例。假如我们要查询所有的用户,并根据年龄和创建时间的先后顺序排序。
- 在Mapper接口中,添加自定义方法。
- 在Mapper.xml中,编写sql语句。
- 在Service类中,编写业务逻辑。
通过上面的示例,我们可以看到自定义通用Mapper方法的使用方法和常规的Mapper方法的使用方法基本一致。
最后,需要注意的是自定义通用Mapper方法也可以通过Mapper接口的继承来实现,只需要按照规范在对应的Mapper.xml文件中定义Sql语句即可。同时需要注意,自定义的Mapper方法的命名需要和Mapper接口中定义的方法名保持一致。