java - 基于参数/条件的值,我想在我的类中注入一个依赖项。我怎么能在弹簧靴中做到这一点?
问题描述
我有一个接口,它的实现有很多。我有一个哈希图,其中包含 rendererId(例如 1,2,3)作为相应渲染器实现的键和类名。现在在我的服务类中,我想根据 Id 注入依赖 bean。假设对于一个请求,id 是 1 在我想注入 implementation1 的服务类中。如何在 Spring Boot 中完成(带注释)?如果你能提供伪代码那就太好了。提前致谢。
解决方案
无法动态更改 @Autowire 限定符,因此您可以使用 ApplicationContext
@Autowired
private ApplicationContext applicationContext;
public void requestMethod(){
MyServiceImpl1 myServiceImpl1= applicationContext.getBean("id1");
}
推荐阅读
- javascript - $(this).nextAll("#...").eq(0).text("***") 不起作用
- php - 通过 exec -ssh key issue 在 php 中执行 ssh 命令
- javascript - 按升序和降序对多个数组键进行排序,带数字的字符串
- javascript - 滚动到 react-native-web 中的位置
- asp.net-mvc - 在 MVC 应用程序中提交后如何返回相同的部分?
- php - 如何在 my-subscriptions.php 模板之外使用 $subscriptions 变量?
- javascript - 加载资源失败:服务器在 koa2 & nodejs 中响应状态为 404(未找到)
- ios - 如何在 GMSMapView 中创建地理围栏?
- javascript - 无法在 Firefox (window.open()) 中设置新的“about:blank”窗口的 body.innerHTML
- python - 如何在 python 数据类中定义日期时间字段?