问题?
弹簧豆是弹簧框架的最基本构建块。我们已经看到了在this post春季创建豆类及其好处的方法。我们还理解,将@Component
注释用于Bean Creation存在。
使用
@Component
,您无法指定或配置bean的创建方式,Spring Framework负责创建和配置BEAN。使用正常的@Bean
注释开发人员对豆类的创建具有更多的控制。
解决?
为了解决使用@Component
注释对创建的Bean进行某些控制的问题,Spring提供了另一种注释,该注释称为@PostConstruct
注释,启发了Java EE Edition。
在创建BEAN之后,开发人员可以执行所需的代码。此注释应用于标记为@Component
的Bean类的方法。
@Component
class BeanExample {
private String name;
public BeanExample() {
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
@PostConstruct
public void initialize() {
this.name = "DEFAULT_STRING";
}
public void printName() {
System.out.println(this.name);
}
}
如果我们在春季创建了BeanExample
类的bean之后获得对象,我们可以在bean上调用printName()
,并验证DEFAULT_STRING
设置为PostContruct
代码执行的一部分。
使用?
每当应用程序要求在创建特定对象之后应用某些业务逻辑时,我们就可以使用此注释来执行操作,例如用默认值初始化。