spring中使用@Autowired注解无法注入的情况及解决
作者:王志威-yc 发布时间:2023-06-10 21:48:24
标签:spring,@Autowired,注解,注入
spring @Autowired注解无法注入
问题简述
在使用spring框架的过程中,常会遇到这种两情况:
1、在扫描的包以外使用需要使用mapper
2、同目录下两个controller或者两个service,在使用@Autowired注解注入mapper或者service时,其中一个可以注入,另一个却为空。
原因:(此处只说第二种)
楼主在经过调试后发现,在框架启动的过程中,此注解其实是注入过的,并非没有注入,只是在其后某处抹除了,至于原因,原谅楼主能力有限还未弄清楚,欢迎大家指正交流。
解决方案
这里楼主给出一种解决方案,实在无法注入的情况下,我们可以采用工具类的方法来注入:
@Component //当前类注解为spring组件
public class AbnormalRateUtil {
// 定义一个该类的静态变量
private static AbnormalRateUtil abnormalRateUtil;
//注入所需mapper
@Autowired
private InterFaceInfoMapper interFaceInfoMapper;
@PostConstruct //此注解的方法在bean加载前执行
private void init() {
abnormalRateUtil = this;
abnormalRateUtil.interFaceInfoMapper=this.interFaceInfoMapper;
//初始化时将静态化的interFaceInfoMapper进行了实例化
}
//静态get方法
public static AbnormalRateUtil getAbnormalRateUtil() {
return abnormalRateUtil;
}
//静态get方法
public static InterFaceInfoMapper getInterFaceInfoMapper() {
return abnormalRateUtil.interFaceInfoMapper;
}
}
调用方式
在使用时可直接通过此工具类进行调用,如下:
List<InterFaceRuler> ruleList=AbnormalRateUtil.getInterFaceInfoMapper().findRuleById(id);
@Autowired注解注入失败,提示could not autowire
controller层无法调用接口层提示could not autowire的解决办法
主要原因是因为我们的spring检验级别的问题,我们可以通过降低检验的安全级别就可以解决这一问题。
File —> Settings—>Editor—>Inspections—>Spring————》将最右边的Serverity改为Warning
来源:https://blog.csdn.net/qq_20503733/article/details/99671136


猜你喜欢
- 本文实例为大家分享了Android实现画画板的具体代码,供大家参考,具体内容如下① 准备一个布局文件<?xml version=&qu
- 序章简介:bean的加载控制指根据特定情况对bean进行选择性加载以达到适用项目的目标。根据之前对bean加载的八种方式,其中后面四种是可以
- 前言在介绍使用微信自定义分享前,我们来先了解一下什么是自定义分享?访问自定义微信外链地址页面,点击红色框位置进行分享给朋友或者朋友圈,具体操
- 1. 概述锁是Java并发编程中最重要的同步机制。锁除了让临界区互斥执行外,还可以让释放锁的线程获取同一个锁的线程发送消息。锁在实际使用时只
- 关于ListBoxListBox是WinForm中的列表控件,它提供了一个项目列表(一组数据项),用户可以选择一个或者多个条目,当列表项目过
- 我们在设计layout的时候,使用Split视图,就是左侧是代码,右侧是设计图,但是我们忽视了最上方的工具栏,这里才是真正的宝藏。下面教大家
- 1.概述做一个项目,突然需要实现回复功能,所依记录一下此次的一个实现思路,也希望给别人分享一下,估计代码还是不够完善,有空在实现分页功能。话
- 最近项目里有用到ViewPager来做广告运营位展示,看到现在很多APP的广告运营位都是无限循环的,所以就研究了一下这个功能的实现。先看看效
- 节点折叠 this.treeList1.CollapseAll(); 一、简介二、属性列表1、OptionsSelection:
- FeignClient发送post请求异常这个问题其实很基础。但是却难倒了我。记录一下在发送post请求的时候要指定消息格式正确的写法是这样
- MyBatis 本是apache的一个开源项目iBatis, 2010年这个项
- 近期,公司推行正版化,本人使用的是JetBrains教育版,是不允许进行商业开发的,因此开启了艰难的备用IDE选型之路。最终,我选定了轻量级
- MyBatis查询返回null可能原因SQL语句查询条件有问题数据库中没数据返回字段与Entity的属性不对应解决方案针对 SQL
- 自从接触javascript以来,对this参数的理解一直是模棱两可。虽有过深入去理解,但却也总感觉是那种浮于表面,没有完全理清头绪。但对于
- 各位早上好,话不多说,先上效果图:注意顶部:首页TextView的变化(显示和隐藏)!首先分析下:UI状态,其是由RecyclerView添
- 这几天琢磨写一个Android的Runtime用来加速HTML5 Canvas,让GameBuilder+CanTK 不但开发速度快,运行速
- 游标查询(scroll)简介scroll 查询 可以用来对 Elasticsearch 有效地执行大批量的文档查询,而又不用付出深度分页那种
- 这个问题属于非常初级的问题,但是对于初学不知道的人可能会比较头疼。C++ 中函数是不能直接返回一个数组的,但是数组其实就是指针,所以可以让函
- 带返回值的方法练习需求: 设计一个方法可以获取两个数的较大值,数据来自于参数思路:1. 定义一个方法,用于获取两个数中的较大数public
- springboot去除控制台打印的debug日志1.创建logback-spring.xml文件文件内容如下<?xml versio