這個問題好奇怪,
出現這個錯誤是通用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.*") 我思考了以下應該是掃包的話是掃很多個包,所以應該是以*結尾的 這樣重啟后正常 --------------------- 作者:躍躍的呢 來源:CSDN 原文:https://blog.csdn.net/y2446421841/article/details/80566082 版權聲明:本文為博主原創文章,轉載請附上博文鏈接!
看起來好像BaseSelectProvider 需要一個無參的構造器,但是查看了BaseSelectProvider源碼,確實是沒有的,怎么辦呢? 感覺好像是版本問題,
嘗試導入:
import tk.mybatis.spring.annotation.MapperScan;
但是沒有這個類,只有另外的一個,但是 那個恰恰是 好像是錯誤的根源。
<dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper-spring-boot-starter</artifactId> <!--<version>1.1.5</version>--> <version>2.0.0</version> </dependency>
后面把版本從1.1.5 改成了 2.0.0 就好了, 奇怪了。
https://www.jianshu.com/p/71fe3b73479c
https://blog.csdn.net/Dongguabai/article/details/80729563