spring - 实现相同接口的spring应用程序中服务bean之间的优先级
问题描述
我有@RestController
一个自动装配的UserService
接口,我有两个服务 bean UserInMemoryService
,UserJpaService
它们都实现了UserService
接口。
现在UserInMemoryService
正在使用内存存储库,并且UserJpaService
正在使用 JPA 存储库进行数据操作。问题是spring如何决定走哪条路?因为在控制器中,我所拥有@Autowired
的是接口,没有关于要选择的具体类的详细信息。
解决方案
问题是spring如何决定走哪条路?因为在控制器中,我使用@Autowired 是接口,没有详细说明要选择的具体类。
春天不会决定。它只会以一个异常结束,说“找到了多个 UserService 类型的 bean”
您可能需要使用@Qualifier
来告诉 Spring 使用哪个 bean
推荐阅读
- python - Ubuntu 18.04 上的 VSCode 无法运行 Python 程序
- c# - 针对 .NET Core 2.1 的解决方案使用旧的 System.ServiceModel.Primitives 和 System.Private.ServiceModel 构建
- neural-network - 神经网络收敛太快,预测空白结果
- hibernate - 如何使用 HQL 正确创建 Spring JPA 查询?
- checkbox - 在 Android Studio 中检查 Sharedpreferences 保存复选框
- python - 如何替换网格中的对角线条目
- qt - 在主窗口 PyQt5 中打开窗口
- gitlab - gitlab-runner & fastlane - 找不到 OneSignal 扩展配置文件
- parsley.js - Parsley 错误消息中的变量未更新
- python-3.x - Python3,如何正确编码这个字符串?