263.Spring Boot MyBatis集成TkMybatis
Posted SpringBoot
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了263.Spring Boot MyBatis集成TkMybatis相关的知识,希望对你有一定的参考价值。
需求缘起
在之前的章节中介绍了Spring Boot MyBatis的注解使用方式和xml的使用方式,但是不管是哪一种方式都存在对表的简单增啥改查操作重复的代码。TkMybatis就是为了解决是为了解决 MyBatis 使用中 90% 的基本操作,使用它可以很方便的进行开发,可以节省开发人员大量的时间。
一、集成TkMybatis
1.1 使用方式说明
对于TkMybatis的使用非常简单:
(1)引入相关依赖;
(2)自定义Mapper继承tk.mybatis.mapper.common.Mapper
(3)指定扫描的Mapper包路径
1.2 具体使用操作
(1)在pom.xml文件添加TkMybatis的相关依赖
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper</artifactId>
<version>4.1.5</version>
</dependency>
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper-spring-boot-starter</artifactId>
<version>2.1.5</version>
</dependency>
(2)让自定义mapper继承tkmybatis的mapper
package com.kfit.demo.mapper;
import com.kfit.demo.bean.Demo;
import tk.mybatis.mapper.common.Mapper;
public interface DemoMapper extends Mapper<Demo>{
}
这里对于DemoMapper继承Mapper就有CRUD方法:
demoMapper.insert(demo);
demoMapper.delete(demo);
demoMapper.deleteByPrimaryKey(key);
demoMapper.updateByPrimaryKey(demo);
demoMapper.select(demo);
demoMapper.selectAll();
(3)在启动类配置@MapperScan
@MapperScan("com.kfit.*.mapper")
注意这里的MapperScan的包路径是:tk.mybatis.spring.annotation.MapperScan
到这里就可以进行测试了。
二、其它
2.1 xml的额外配置
如果只是使用注解的方式那么这一步就可以不需要了,如果要使用xml自定义sql的话,那么就需要在application.properties进行配置:
mybatis.mapper-locations=classpath:com/kfit/*/mapper/*.xml
2.2 报错:
NoSuchMethodException:tk.mybatis.mapper.provider.base.BaseInsertProvider
如果是报如下的异常信息的话:
NoSuchMethodException:tk.mybatis.mapper.provider.base.BaseInsertProvider
那么很有可能就是MapperScan的包路径引入有问题,
Mybatis提供的是:org.mybatis.spring.annotation.MapperScan
Tkmybatis提供的是:tk.mybatis.spring.annotation.MapperScan
我就是我,是颜色不一样的烟火。
我就是我,是与众不同的小苹果。
à悟空学院:http://t.cn/Rg3fKJD
学院中有Spring Boot相关的课程!点击「阅读原文」进行查看!
SpringBoot视频:http://t.cn/R3QepWG
Spring Cloud视频:http://t.cn/R3QeRZc
SpringBoot Shiro视频:http://t.cn/R3QDMbh
SpringBoot交流平台:http://t.cn/R3QDhU0
SpringData和JPA视频:http://t.cn/R1pSojf
SpringSecurity5.0视频:http://t.cn/EwlLjHh
Sharding-JDBC分库分表实战:http://t.cn/E4lpD6e
以上是关于263.Spring Boot MyBatis集成TkMybatis的主要内容,如果未能解决你的问题,请参考以下文章