我想根据Spring Boot应用程序的application.yml文件中的某些属性的值来定义一些bean。例如,使用number-of-beans: 5
我构建一个for循环来创建5个bean实例:
application.yml
number-of-beans: 5
BeanDsl.kt
fun beans() = beans {
val n = env.getProperty("number-of-beans")
for (i in 1..n) {
bean<String>("string${i}") { "string${i}" }
}
}
问题是如何在那时访问环境,因为那里的env变量不可用。它很有趣,它位于bean{}
元素内。
答案 0 :(得分:0)
使用Spring Framework 5.0是不可能的,但我刚刚通过this commit添加了这样的支持,从Spring Framework 5.1 / Spring Boot 2.1开始就可以使用这种改进。