通用Mapper报错: tk.mybatis.mapper.provider.base.BaseSelectProvider.<init>()

本文介绍了如何解决因jar包冲突及MapperScan配置错误导致的通用Mapper初始化问题,并提供了正确的依赖和配置示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

出现这个错误是通用Mapper初始化的错误,排查的方向就是往这个方向,可能的情况有以下几种:

1.jar包冲突

<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper</artifactId>
<version>3.3.9</version>
</dependency>
<dependency>
   <groupId>tk.mybatis</groupId>
   <artifactId>mapper-spring-boot-starter</artifactId>
   <version>2.0.0</version>
</dependency>

如图所示这里有两个tk.mybatis通用Mapper的包了,所以springboot不知道该初始化哪个

<dependency>
   <groupId>tk.mybatis</groupId>
   <artifactId>mapper-spring-boot-starter</artifactId>
   <version>2.0.0</version>
</dependency>

这里使用这个包,重启后运行正常

2,MapperCan 扫包配置错误

@SpringBootApplication
@MapperScan(basePackages = "com.example.demo.*.dao")
@ComponentScan("com.example.demo.*")
public class DemoApplication extends SpringBootServletInitializer{

之前配置的是

@MapperScan(basePackages = "com.example.demo.*.dao")

应该改成

@MapperScan(basePackages = "com.example.demo.*.dao.*")

我思考了以下应该是扫包的话是扫很多个包,所以应该是以*结尾的

这样重启后正常


评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值