在运行时在 2 个 Bean 之间进行选择
Choose between 2 Beans in runtime
我正在使用 Java Spring.
我有一个 Bean,我可以使用 .yml
文件中的参数(布尔值)以两种不同的方式创建,这将仅在运行时决定。
解决它的简单方法是在参数上使用一个简单的 if
条件,并根据它的值调用所需的函数。
有没有办法使用 Spring 注释而不是在我的代码中做到这一点?
是,使用 ConditionalOnProperty 注释。
@ConditionalOnProperty(name = "key", havingValue = "true")
doThis() {
}
@ConditionalOnProperty(name = "key", havingValue = "false")
doThat() {
}
我正在使用 Java Spring.
我有一个 Bean,我可以使用 .yml
文件中的参数(布尔值)以两种不同的方式创建,这将仅在运行时决定。
解决它的简单方法是在参数上使用一个简单的 if
条件,并根据它的值调用所需的函数。
有没有办法使用 Spring 注释而不是在我的代码中做到这一点?
是,使用 ConditionalOnProperty 注释。
@ConditionalOnProperty(name = "key", havingValue = "true")
doThis() {
}
@ConditionalOnProperty(name = "key", havingValue = "false")
doThat() {
}