【发布时间】:2018-01-04 06:04:34
【问题描述】:
在我们项目的一个通用库中,我需要根据 Service 使用的接口来区分接口的两种实现。
我通过构造函数注入来注入这个接口,并且需要找出如何根据我们的 application.yml 中的属性值来确定使用什么实现。
我查看了@Qualifier 注释,但这似乎确实需要 xml 模式中的属性。我们没有这样的东西。
在我们的代码的一部分中,我们以这种方式读出了 KafkaListener 的属性
@KafkaListener(topics = "#{PathToProperties.getPrefix()}#OurBusinessProperties.getRelevantProperties()}"
我可以在 Spring 中使用相同的语法吗?
【问题讨论】:
-
检查 Spring 中的
@Value注释,与SpEL表达式混合。根据该值,您可以手动从上下文中获取 bean。
标签: java spring spring-boot dependency-injection yaml