SpringBoot 常用注解 – Spring Dependency Inject 注解
摘自:https://mp.weixin.qq.com/s/dWIO1bfmMhVWo1ZPVIS09Q
@DependsOn
说明:
@DependsOn注解可以配置Spring IoC容器在初始化一个Bean之前,先初始化其他的Bean对象。
示例:
public class FirstBean{
@Autowired
private SecondBean secondBean;
@Autowired
private ThirdBean thirdBean;
public FirstBean(){
//..
}
// ..
}
public class SecondBean{
public SecondBean(){
// ..
}
}
public class ThirdBean{
public ThirdBean(){
//..
}
}
@Configuration
public class CustomBeanConfig{
@Bean("firstBean")
@Dependson(value={"secondBean","thirdBean"})
public FirstBeanfirstBean(){
return new FirstBean();
}
@Bean("secondBean")
public SecondBean secondBean(){
return new SecondBean();
}
@Bean("thirdBean")
public ThirdBean thirdBean(){
return new ThirdBean();
}
}
@Bean
说明:
@Bean注解主要的作用是告知Spring,被此注解所标注的类将需要纳入到Bean管理工厂中。
示例:
@Component
public class DataBaseInitializer{
public void init(){
System.out.println("This is init method.");
//..
}
public void destroy(){
System.out.println("This is destroy method.");
}
@Configuration
public class SpringBootApplicatioinConfig{
@Bean(initMethod="init",destroyMethod="destroy")
public DataBaseInitializer databaseInitializer(){
return new DataBaseInitializer();
}
}