在Spring中,bean的初始化可以通過兩種方式來完成:使用@Bean注解的initMethod屬性或者實現InitializingBean接口。
@Bean(initMethod = "init")
public MyBean myBean() {
return new MyBean();
}
這樣,在bean實例化之后,就會調用指定的初始化方法init()。
public class MyBean implements InitializingBean {
@Override
public void afterPropertiesSet() throws Exception {
// 初始化操作
}
}
在bean實例化之后,Spring會自動調用afterPropertiesSet()方法進行初始化操作。
以上兩種方式可以單獨使用,也可以同時使用。當兩種方式一起使用時,首先會調用實現InitializingBean接口的afterPropertiesSet()方法,然后再調用使用@Bean注解的initMethod屬性指定的方法。