springboot 无法自动装配的问题

目录
  • springboot 无法自动装配
    • @Autowired 报错:无法自动装配
    • 基本上是因为
    • 放到org.example下,问题解决
    • 原因
  • 无法自动装配。未找到“xxxMapper”类型的bean
    • 说明Spring框架没有识别到你的xxxMapper中的类
    • 如果你得类不需要管理或者继承或实现一些规则

springboot 无法自动装配

@Autowired 报错:无法自动装配

基本上是因为

1、项目里有类似mybatis @Mapper这种第三方映射类,需要用到springboot autoconfigration扫描解析。

2、@SpringBootApplication类,没有放到java根目录下

放到org.example下,问题解决

原因

因为springboot只扫描@SpringBootApplication类目录及子目录下的自动配置:

For example, it will be used when scanning for @Entity classes. It is generally recommended that you place @EnableAutoConfiguration (if you're not using @SpringBootApplication) in a root package so that all sub-packages and classes can be searched.

真想骂他一句,约定就约定吧,能聪明点吗

无法自动装配。未找到“xxxMapper”类型的bean

Could not autowire. No beans of ‘xxxMapper’ type found.

说明Spring框架没有识别到你的xxxMapper中的类

也就是说,xxxMapper的类没有被Spring框架给管理,如果你所需要的类需要给Spring给管理,那么你得在他上面加上@Repository注解,这样你在service层自动注入时他才不会报错。

如果你得类不需要管理或者继承或实现一些规则

并且程序没有产生一些错误,那么这些都是可以被允许的。

@Repository
public interface AdminMapper  {
    public void xxx(){}
}
public class AdminServiceImpl  {
    @Autowired
    private AdminMapper adminMapper;
    }

这样他就不会报错了。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 聊聊SpringBoot自动装配的魔力

    目录 一. springBoot自动配置的好处 1. 回想一下当你在使用spring来搭建一个项目的时候 2.这时我们会有一个疑问 二.@Conditional注解相关介绍 1.@Conditional小demo 三.自定义一个条件配置类/springBoot自定义注解 1.简单解释@Condition注解家族 2.自定义条件注解 一. springBoot自动配置的好处 1. 回想一下当你在使用spring来搭建一个项目的时候 你需要编写很多的有关spring的xml.例如读取属性配置的bea

  • SpringBoot自动装配Condition的实现方式

    目录 1. 简介 2. 定义 2.1 @Conditional 2.2 Condition 3. 使用说明 3.1 创建项目 3.2 测试 3.3 小结 4. 改进 4.1 创建注解 4.2 修改UserCondition 5. Spring内置条件注解 1. 简介 @Conditional注解在Spring4.0中引入,其主要作用就是判断条件是否满足,从而决定是否初始化并向容器注册Bean. 2. 定义 2.1 @Conditional @Conditional注解定义如下:其内部只有一个参数

  • Java SpringBoot自动装配原理详解及源码注释

    目录 一.pom.xml文件 1.父依赖 2.启动器: 二.主程序: 剖析源码注解: 三.结论: 一.pom.xml文件 1.父依赖 主要是依赖一个父项目,管理项目的资源过滤以及插件! 资源过滤已经配置好了,无需再自己配置 在pom.xml中有个父依赖:spring-boot-dependencies是SpringBoot的版本控制中心! 因为有这些版本仓库,我们在写或者引入一些springboot依赖的时候,不需要指定版本! 2.启动器: 启动器也就是Springboot的启动场景; 比如sp

  • springBoot2.6.2自动装配之注解源码解析

    目录 前言 一.@SpringBootConfiguration 二.@ComponentScan 三.@EnableAutoConfiguration 3.1@AutoConfigurationPackage 3.2 @import 四.按需装配 前言 自动装配的核心即@SpringBootApplication注解中三大注解核心 @SpringBootApplication @SpringBootConfiguration @ComponentScan @EnableAutoConfigur

  • 浅谈springboot自动装配原理

    一.SpringBootApplication @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented @Inherited @SpringBootConfiguration @EnableAutoConfiguration @ComponentScan(excludeFilters = { @Filter(type = FilterType.CUSTOM, classes = TypeExcludeFi

  • springboot 无法自动装配的问题

    目录 springboot 无法自动装配 @Autowired 报错:无法自动装配 基本上是因为 放到org.example下,问题解决 原因 无法自动装配.未找到“xxxMapper”类型的bean 说明Spring框架没有识别到你的xxxMapper中的类 如果你得类不需要管理或者继承或实现一些规则 springboot 无法自动装配 @Autowired 报错:无法自动装配 基本上是因为 1.项目里有类似mybatis @Mapper这种第三方映射类,需要用到springboot auto

  • 基于SpringBoot实现自动装配返回属性的设计思路

    目录 一:需求背景 二:设计思路 三:使用方法 四:注解解析器(核心代码) 五:需要思考的技术点 一:需求背景 在业务开发中经常会有这个一个场景,A(业务表)表中会记录数据的创建人,通常我们会用userId字段记录该数据的创建者,但数据的使用方会要求展示该数据的创建者姓名,故我们会关联用户表拿该用户的姓名.还有一些枚举值的含义也要展示给前端.导致原本一个单表的sql就要写成多表的关联sql,以及枚举含义的转换很是恶心. 例如:业务对象BusinessEntity.java public clas

  • SpringBoot(cloud)自动装配bean找不到类型的问题

    目录 SpringBoot自动装配bean找不到类型 今天我就犯了因为boot扫不到包的问题 看项目结构 很明显 无法自动装配.未找到“xxxMapper”类型的bean SpringBoot自动装配bean找不到类型 Spring基于注解的@Autowired是比较常用的自动装配注解,但是会因为个人的疏忽,SSM进行配置的时候没有将对应bean所在包给扫描进去:或者使用Boot的时候,没有放在启动类所在包及其子包下导致报错. 今天我就犯了因为boot扫不到包的问题 Description: F

  • 深入浅析SpringBoot中的自动装配

    SpringBoot的自动装配是拆箱即用的基础,也是微服务化的前提.这次主要的议题是,来看看它是怎么样实现的,我们透过源代码来把握自动装配的来龙去脉. 一.自动装配过程分析 1.1.关于@SpringBootApplication 我们在编写SpringBoot项目时,@SpringBootApplication是最常见的注解了,我们可以看一下源代码: /* * Copyright 2012-2017 the original author or authors. * * Licensed un

  • SpringBoot自动装配原理详解

    首先对于一个SpringBoot工程来说,最明显的标志的就是 @SpringBootApplication它标记了这是一个SpringBoot工程,所以今天的 SpringBoot自动装配原理也就是从它开始说起. 自动装配流程 首先我们来看下@SpringBootApplication 这个注解的背后又有什么玄机呢,我们按下 ctrl + 鼠标左键,轻轻的点一下,此时见证奇迹的时刻.. 我们看到如下优雅的代码: 这其中有两个比较容易引起我们注意的地方,一个是@SpringBootConfigur

  • 浅析SpringBoot自动装配的实现

    目录 背景 解析 起始 具体解析 结论 备注 背景 众所周知,如下即可启动一个最简单的Spring应用.查看@SpringBootApplication注解的源码,发现这个注解上有一个重要的注解@EnableAutoConfiguration,而这个注解就是SpringBoot实现自动装配的基础 import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.Spri

  • 深入了解Java SpringBoot自动装配原理

    目录 自动装配原理 SpringBootApplication EnableAutoConfiguration AutoConfigurationImportSelector 总结 在使用springboot时,很多配置我们都没有做,都是springboot在帮我们完成,这很大一部分归功于springboot自动装配,那springboot的自动装配的原理是怎么实现的呢? 自动装配原理 springboot 版本:2.4.3 SpringBootApplication springboot启动类

  • SpringBoot 自动装配的原理详解分析

    目录 前言 自动装配案例 自动装配分析 自动装配总结 前言 关于 ​​SpringBoot​​​ 的自动装配功能,相信是每一个 ​​Java​​ 程序员天天都会用到的一个功能,但是它究竟是如何实现的呢?今天阿粉来带大家看一下. 自动装配案例 首先我们通过一个案例来看一下自动装配的效果,创建一个 ​​SpringBoot​​ 的项目,在 ​​pom​​ 文件中加入下面的依赖. <dependency> <groupId>org.springframework.boot</gro

  • springboot如何实现自动装配源码解读

    Spring Boot 自动装配 最重要的注解@SpringBootApplication @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented @Inherited @SpringBootConfiguration @EnableAutoConfiguration @ComponentScan(excludeFilters = { @Filter(type = FilterType.CUSTOM, c

随机推荐