SpringBean初始化顺序

2023-06-18  本文已影响0人  代码的路

原文链接

Spring bean是Spring框架在运行时管理的对象。Spring bean是任何Spring应用程序的基本构建块。我们编写的大多数应用程序逻辑代码都将放在Spring bean中。

执行顺序:

Constructor > @Autowired > @PostConstruct > InitializingBean > init-method

因此不能在构造函数中直接使用@Autowired定义的参数,而应该在@PostConstruct中调用。

例如:

public class Metric {

    @Autowired
    MonitorMetric monitorMetric;

    final String string;

    // 构造函数
    public Metric(String string){
        this.string = string;
    }

    // 在 PostConstruct 中获取 Autowired 的值
    @PostConstruct
    public String initialize(){
        return monitorMetric.getStr();
    }
}
上一篇下一篇

猜你喜欢

热点阅读