本次使用Spring Boot 版本 1.5.9
1 使用@PostConstruct
在任意方法上加入@PostConstruct
,例如
@PostConstruct
public void init(){
// do something
}
2 使用Bean注入初始化方法
这种方法需要一个配置类,也就是加上了@Configuration
注解
在返回某个类的方法上加入@Bean
注解进行注入,其参数需带有initMethod
,其值为想要执行初始化方法的名称,配置类例如
@Configuration
public class Config {
@Bean(initMethod = "initMethod")
public InitTest initTest() {
return new InitTest();
}
}
实际使用的类例如
public class InitTest{
public void initMethod(){
// do something
}
}
3 使用接口InitializingBean
该接口的定义如下
public interface InitializingBean {
void afterPropertiesSet() throws Exception;
}
通过实现这个接口的afterPropertiesSet
方法,来完成初始化操作,例如
public class InitTestInterface implements InitializingBean {
@Override
public void afterPropertiesSet() throws Exception {
// do something
}
}
Spring Bean初始化执行顺序
构造方法 --> @PostConstruct --> InitializingBean接口 --> @Bean 注入的init-method
在大型系统里千万要注意顺序
网友评论