expected single matching bean but found 2: xxx, yyy

字面意思理解,期望得到一个类,但是发现了两个:xxx,yyy。

这时解决方案有两个,一个是在引用的地方指定。比如使用@Autowired引入,则可以使用@Qualifier("xxx")进行指定,或者直接将@Autowired替换为@Resource("xxx")。

另一个方法是在创建Bean的地方加Primary,比如如果是@Bean方式生成,则可以加@Primary注解;如果是SpringMVC的xml文件中的bean,则可以直接加primary="true"。

第一个方案比较灵活,但有些情况不适用,比如@Autowired地方太多,改起来很耗时,或者引入的地方都是jar包class文件,无法改动,这时候就只能用第二种方案了。

相关推荐
星轨zb4 分钟前
从通用到专属:文迹(WenJi)引入 RAG 向量库的技术复盘
java·spring·langchain4j
我是一颗柠檬7 分钟前
【Java后端技术亮点】Feed流三级缓存设计,从10秒到100毫秒的优化实战
java·开发语言·后端·缓存
超梦dasgg13 分钟前
Java 正则表达式 完整详解(语法 + 核心类 + 常用方法 + 实战案例)
java·开发语言·正则表达式
码语智行13 分钟前
操作日志注解模块
java·前端·python
方也_arkling14 分钟前
【Java-Day17】API篇-BigInteger和BigDecimal
java·开发语言
程序员三明治14 分钟前
【AI】RAG 数据分块(Chunk)策略与实践
java·人工智能·后端·ai·大模型·llm·rag
星辰_mya16 分钟前
ThreadLocal之微服务链路追踪
java·开发语言·前端
松仔log18 分钟前
Jetpack——DataStore
java·kotlin
咸鱼翻身小阿橙19 分钟前
文件读写 + Qt Model/View + 自定义分页+搜索过滤
java·数据库·qt
在繁华处22 分钟前
Java从零到熟练(十):JVM基础与性能优化
java·jvm·性能优化