基本的生命周期
为了演示生命周期的过程,我们直接使用 SpringApplication.run()
方法,他会直接诶返回一个容器对象。
import org.springframework.boot.SpringApplication;
import org.springframework.context.ConfigurableApplicationContext;
@SpringBootApplication
public class BeanLifecycleTest {
public static void main(String[] args) {
ConfigurableApplicationContext context = SpringApplication.run(BeanLifecycleTest.class, args);
context.close();
}
}
然后定义一个Bean,如下:
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
@Component
public class LifeCycleBean {
public LifeCycleBean() {
System.out.println("构造方法");
}
/**
* 依赖注入方法
* 当参数是一个对象时,可以直接注入
* 但是如果是String类型,则需要使用@Value,找到环境变量JAVA_HOME
*
* @param home
*/
@Autowired
public void autowired(@Value("${JAVA_HOME}") String home) {
System.out.println("依赖注入");
}
/**
* @PostConstruct 用来标记 bean 初始化完成后的回调方法
*/
@PostConstruct
public void init() {
System.out.println("初始化"