有条件的@PostConstruct 注解
Posted
技术标签:
【中文标题】有条件的@PostConstruct 注解【英文标题】:Conditional @PostConstruct annotation 【发布时间】:2018-03-15 14:04:12 【问题描述】:我有时可能不需要根据通过 JVM 参数传递的值在启动时对 bean 进行后期构造。
我尝试了@Conditional
注释,但它只适用于@Bean
注释。
您以前尝试过/需要这样的东西吗?
【问题讨论】:
【参考方案1】:AFAIK Conditional 不能与 postconstruct 混合使用。所以我的建议
在 beans 声明中添加两个不同的 beans,一个带有 postconstruct,一个没有 as use @Conditional
添加验证您的应用程序参数的程序代码,例如:
import org.springframework.core.env.Environment;
private final Environment env;
public void execute()
if (env.getProperty("condition") == "condition")
在 1 中使用近似值但 @Profile
并将活动配置文件作为参数 -Dspring.profiles.active=my_profile
传递
【讨论】:
以上是关于有条件的@PostConstruct 注解的主要内容,如果未能解决你的问题,请参考以下文章
@PostConstruct和@PreConstruct注解
@PostConstruct与@PreConstruct注解