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