【发布时间】:2021-12-28 01:27:39
【问题描述】:
我是 Spring 依赖注入的新手,我想了解最佳实践。我想知道将用@ConfigurationProperties 注释的类注入服务层类(用@Service 注释)是否是一种好的设计理念。我试图将我的application.yml 中的属性映射到一个配置类,如下所示-
@ConstructorBinding
@ConfigurationProperties(prefix = "application")
class ApplicationConfig(
val kafka: someDeeplyNestedType = SomeDeeplyNestedObj()
) {
// helper functions
}
然后我在服务层中注入上面的配置类,如下所示 -
@Service
@EnableConfigurationProperties(ApplicationConfig::class)
class RestService(val config: ApplicationConfig) {
init {
// Reference config object
// Reference application.yml properties via config object.
}
}
我很想知道我是否可以改进我当前的实现 - 不确定是否可以将 configuration 类传递给 service-layer 类。我也很想知道是否有更好的方法来连接ApplicationConfig 而无需使用EnableConfigurationProperties 注释。
【问题讨论】:
标签: spring-boot dependency-injection configurationproperties