springboot+mybatis报错找不到实体类的问题
目录
- springboot+mybatis报错找不到实体类
- 找不到实体类的错误可能有很多,接下来列举几个地方
- springboot+mybatis 找不到实体类问题
- No qualifying bean of type‘com.wj.bfsh.mapper.SysUserMapper‘ available
- 问题出现在
springboot+mybatis报错找不到实体类
找不到实体类的错误可能有很多,接下来列举几个地方
启动类位置不对,启动类应该在你的service和dao 的上一层,因为Spring是从启动类所在目录的同级目录开始扫描的,当然你也可以放在其他地方,但需要配置,具体配置可以参考网上的其他文章!
文章图片
mapper.xml文件的路劲配置是否正确,classpath指的是resources目录,如果不在resources目录下,注意正确配置路劲。
文章图片
mapper接口类是否添加@Repository注解,表示这是数据访问组件。如果采用注解的形式使用mybatis需要加@Mapper
文章图片
service层是否添加@Service注解,将bean注入到上下文中.
文章图片
启动类是否添加@MapperScan(扫描mapper),@EntityScan(扫描实体类),如果启动类不在上面(1)所说的位置,则需要自己添加@ComRepositor注解,自定义扫描的路径从中找出标识了需要装配的类自动装配到spring的bean容器中。
springboot+mybatis 找不到实体类问题
No qualifying bean of type‘com.wj.bfsh.mapper.SysUserMapper‘ available
报错如下
2021-02-18 09:45:58,826 - Starting BfshApplication on DESKTOP-AAPVN38 with PID 10552 (F:\IdeaIu\work_place\bfsh\target\classes started by AoDexiusi in F:\IdeaIu\work_place\bfsh)我的启动类:
2021-02-18 09:45:58,828 - Running with Spring Boot v2.3.7.RELEASE, Spring v5.2.12.RELEASE
2021-02-18 09:45:58,829 - No active profile set, falling back to default profiles: default
2021-02-18 09:45:58,868 - Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable
2021-02-18 09:45:58,868 - For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'
2021-02-18 09:45:59,438 - No MyBatis mapper was found in '[com.wj.bfsh.mapper.*]' package. Please check your configuration.
2021-02-18 09:45:59,809 - Tomcat initialized with port(s): 8888 (http)
2021-02-18 09:45:59,816 - Starting service [Tomcat]
2021-02-18 09:45:59,816 - Starting Servlet engine: [Apache Tomcat/9.0.41]
2021-02-18 09:45:59,925 - Initializing Spring embedded WebApplicationContext
2021-02-18 09:45:59,925 - Root WebApplicationContext: initialization completed in 1057 ms
2021-02-18 09:45:59,969 - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysUserController': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sysUserServiceImpl': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.wj.bfsh.mapper.SysUserMapper' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@javax.annotation.Resource(shareable=true, lookup=, name=, description=, authenticationType=CONTAINER, type=class java.lang.Object, mappedName=)}
2021-02-18 09:45:59,971 - Stopping service [Tomcat]
2021-02-18 09:45:59,978 - The web application [bfsh] appears to have started a thread named [Abandoned connection cleanup thread] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
java.lang.Object.wait(Native Method)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
com.mysql.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:40)
2021-02-18 09:45:59,986 -
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2021-02-18 09:46:00,105 -
***************************
APPLICATION FAILED TO START
***************************
Description:
A component required a bean of type 'com.wj.bfsh.mapper.SysUserMapper' that could not be found.
Action:
Consider defining a bean of type 'com.wj.bfsh.mapper.SysUserMapper' in your configuration.
@SpringBootApplication@MapperScan(basePackages = "com.wj.bfsh.mapper.*")public class BfshApplication {public static void main(String[] args) {SpringApplication.run(BfshApplication.class, args); }}
项目结构:
文章图片
【springboot+mybatis报错找不到实体类的问题】
问题出现在
@MapperScan(basePackages = “com.wj.bfsh.mapper.*”)
修改为:
@MapperScan(basePackages = “com.wj.bfsh.mapper”)
其实就是dao层扫描的位置不对。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
推荐阅读
- java理论基础Stream元素的匹配与查找
- mysql|mysql 手工报错注入_MYSQL手工注入(详细步骤)—(2)实战演练
- springcloud|springcloud gateway网关服务启动报错的解决
- 室内定位程序_在哪都能找到你!苹果新iPhone将支持UWB高精度室内定位
- 苹果uwb_在哪都能找到你!苹果新iPhone将支持UWB高精度室内定位
- vue|vue3.0 typescript 创建项目,路由RouteConfig 报错 has no exported member ‘RouteConfig‘.ts
- 路径查找算法应用之A*算法
- Ubuntu安装交叉编译工具,执行./arm-none-linux-gnueabi-gcc -v命令提示找不到该文件或目录()
- 实践2(如何使用word2vec和k-means聚类寻找相似的城市)
- Maven项目报错:“|Maven项目报错:“ SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder”的解决方案