springboot启动扫描不到dao层接口的解决方案
作者:yangqifan_simplelife 发布时间:2021-06-29 19:56:06
标签:springboot,扫描,dao层,接口
今天启动springboot项目时失败了
解决
检查原因发现是启动类的MapperScan("")的值写到类名了,改成类所在的包名错误就修复了。
springboot 扫描不到dao层和controller
一、提示
A component required a bean of type ‘com.imooc2.product.category.dao.ProductCategoryDao' that could not be found即dao层找不到了
解决:使用@MapperScan 注解或者@MapperScans注解
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.ComponentScans;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@EnableSwagger2
@SpringBootApplication
@MapperScan("com.imooc2.product.**.dao")
public class ProductApplication {//extends SpringBootServletInitializer
public static void main(String[] args) {
SpringApplication.run(ProductApplication.class, args);
}
}
二、问题:
提示controller和services层找不到
访问controller的方法显示404错误
解决:
1、启动类放到跟目录下面,如图,我的controller和service分别在com.imooc2.product的product文件夹和category文件夹里面,所以启动类要放在根目录com.imooc2.product下
原因:sprigboot 会自动扫描根目录以下的全部包
2、有可能是缓存还是项目启动类识别不了controller层和service层,或者你不想把启动类放到根目录下去默认扫描,可以更新至springboot 2.0.5.RELEASE,使用自定义扫描包注解
@ComponentScan(basePackages = {“com.imooc2.product.product”, “com.imooc2.product.category”})
或者
@SpringBootApplication(scanBasePackages = {“com.imooc2.product.product”, “com.imooc2.product.category”})
二选一即可如图所示
@SpringBootApplication(scanBasePackages = {"com.imooc2.product","com.imooc2.product.**.dao"})//二选一
@ComponentScan(basePackages = {"com.imooc2.product.product", "com.imooc2.product.category"})//二选一
@MapperScan("com.imooc2.product.**.dao")
public class ProductApplication {
public static void main(String[] args) {
SpringApplication.run(ProductApplication.class, args);
}
}
注意:不要使用错误注解
来源:https://blog.csdn.net/weixin_42065545/article/details/80976524
0
投稿
猜你喜欢
- 效果图如下所示: 1、在Adapter中加入如下代码<pre style="background-color:#2
- Spring流程Debug1.1 Spring测试环境搭建Spring模块概览,绿色是模块,Spring中八大模块,黑色表示该模块包含的ja
- 这篇文章主要介绍了Java数据封装树形结构代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可
- 一、重载(Overload)重载是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。每个重载的方法(或者构造函数)都必须有
- 什么是Java垃圾回收器Java垃圾回收器是Java虚拟机(JVM)的三个重要模块(另外两个是解释器和多线程机制)之一,为应用程序提供内存的
- 一、ObjectContext对象上下文Entity SQL 语言 - ADO.NET | Microsoft 官当文档ObjectCont
- 这篇文章主要介绍了Java类加载器ClassLoader用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值
- 1、profiles是什么?有什么作用在maven构建的项目都存在一个pom.xml的项目对象模型配置文件,用于约束项目(如:jar包管理、
- 1. 日志的作用日志是程序的重要组成部分,在程序报错的时候,如果我们不看日志,是很难排查出错误的,除非你真的是很有经验.所以日志最主要的作用
- 一、简介Spring Cache是一个框架,实现了基于注解的缓存功能,只需要简单地加一个注解,就能实现缓存功能。Spring Cache提供
- 一、RESTful风格API的好处API(Application Programming Interface),顾名思义:是一组编程接口规范
- 本文实例为大家分享了Unity封装延时调用定时器的具体代码,供大家参考,具体内容如下封装一个延时调用定时器类using System.Col
- 1. 添加程序集2. 引入命名空间using System.Management;3. 方法M
- 目录1、Java内存模型2、硬件内存架构3、实际执行3.1 共享对象可见性3.2 竞争条件Java是一门支持多线程执行的语言,要编写正确的并
- eclipse运行tomcat提示端口被占用今天碰到一个问题,在eclipse中运行一个程序,eclipse里面的tomcat一启动就报错说
- 前几天有个客户在系统上写了一段html语句,打开页面就显示一张炒鸡大的图片,影响美观。后来仔细想想,幸亏注入的仅仅是html语句,知道严重性
- 前言 侧滑的实现方式有很多方式来实现,这次总结的ViewDragHe
- 本文实例为大家分享了SpringBoot实现动态多线程并发定时任务的具体代码,供大家参考,具体内容如下实现定时任务有多种方式,使用sprin
- 情况一:问题idea项目突然无法运行,提示找不到某个类。查看了编译输出目录out,发现没有class文件。尝试解决尝试删除out、重新导入项
- 目录前言实现思路实测前言需求 导出Excel:本身以为是一个简单得导出,但是每行得记录文件中有一列为图片url,需要下载所有记录行对应得图片