如何将 @Value 属性注入到使用 Spring 5 和 Kotlin Bean Definition DSL 定义的 bean 中
How to inject @Value properties into beans defined using Spring 5 and Kotlin Bean Definition DSL
我正在使用 Kotlin 开发 Spring Boot (2.0.0 M7) 应用程序,并且需要利用新的 Bean 定义 DSL 来定义一些 Bean。我无法想出一种方法来注入来自@Value 属性的值。让我们考虑这个简化的例子:
fun beans() = beans {
for (i in 1..10) {
bean<String>("myString${i}" + someProperty) { "myString${i}" + someProperty}
}
}
someProperty
应该来自这样的东西:
@Value("${myProperty}") someProperty: String
如何让 beans {}
DSL 可以访问它?
解决了通过环境变量访问值的问题:
fun beans() = beans {
for (i in 1..10) {
bean<String>("myString${i}" + env.getProperty("myProperty") { "myString${i}" + env.getProperty("myProperty")}
}
}
我正在使用 Kotlin 开发 Spring Boot (2.0.0 M7) 应用程序,并且需要利用新的 Bean 定义 DSL 来定义一些 Bean。我无法想出一种方法来注入来自@Value 属性的值。让我们考虑这个简化的例子:
fun beans() = beans {
for (i in 1..10) {
bean<String>("myString${i}" + someProperty) { "myString${i}" + someProperty}
}
}
someProperty
应该来自这样的东西:
@Value("${myProperty}") someProperty: String
如何让 beans {}
DSL 可以访问它?
解决了通过环境变量访问值的问题:
fun beans() = beans {
for (i in 1..10) {
bean<String>("myString${i}" + env.getProperty("myProperty") { "myString${i}" + env.getProperty("myProperty")}
}
}