概述
SpringBoot遇到的坑@Qualifier报红
今天写项目的时候@Qualifier一直报红,排查半天后面才知道原来是idea生成项目的时候把主配置的类放在一个包中导致默认包结构扫描发生改变,扫描不到你定义的组件,具体可以去看看SpirngBoot默认包结构规则。
解决方法
主配置类必须放在是你所扫描的包的父包上
SpringBoot注解@Qualifier用法
在Controller中需要注入service那么我的这个server有两个实现类如何区分开这两个impl呢?
根据注入资源的注解不同实现的方式有一点小小的区别
下面上铺垫图
请忽略我的红线
##在Controller中使用 @Autowired注入时
Qualifier的意思是合格者,通过这个标示,表明了哪个实现类才是我们所需要的,添加@Qualifier注解,需要注意的是@Qualifier的参数名称为我们之前定义@Service注解的名称之一。
##使用@Resource注入时
使用@resource注入时比较简单了注解自带了“name”的val就是@Service注解的名称之一。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持靠谱客。
最后
以上就是忧伤白羊为你收集整理的SpringBoot遇到的坑@Qualifier报红的解决的全部内容,希望文章能够帮你解决SpringBoot遇到的坑@Qualifier报红的解决所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复