Spring有条件地实例化Class(Restcontroller)

时间:2018-03-23 14:29:39

标签: java spring

我试图仅在某个属性不存在时实例化一个类,或者如果某个个人资料处于活动状态,则尝试实例化(如果可能)。

我尝试使用@ConditionalOnProperty。该属性设置在yml文件中:

some:
  service:
    address: some.adress.org
    port: 5200

如果我使用配置文件模拟启动应用程序,则缺少完整的块。只有在这种情况下我才想要实例化某个@RestController。怎么做到这一点?

到目前为止我尝试的是没有用的。控制器在两种情况下实例化或从不实例化。 在两种情况下都实例化控制器:

  • @ConditionalOnProperty(value = "some.service.address", matchIfMissing = true)
  • @ConditionalOnProperty(name = "some.service.address", matchIfMissing = true)

永远实例化:

  • @ConditionalOnProperty(value = "some.service.address", matchIfMissing = true, havingValue="xyz")
  • @ConditionalOnProperty(name = "some.service.address", matchIfMissing = true, havingValue="xyz")

0 个答案:

没有答案