SpringBean初始化顺序

秒速五厘米 2023-10-12 15:42 132阅读 0赞

原文链接

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

执行顺序:

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

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

例如:

  1. public class Metric {
  2. @Autowired
  3. MonitorMetric monitorMetric;
  4. final String string;
  5. // 构造函数
  6. public Metric(String string){
  7. this.string = string;
  8. }
  9. // 在 PostConstruct 中获取 Autowired 的值
  10. @PostConstruct
  11. public String initialize(){
  12. return monitorMetric.getStr();
  13. }
  14. }

学习更多编程知识,请关注我的公众号:

代码的路

7fbcac3781ce36c7d4dfe5dcecb332ce.png

发表评论

表情:
评论列表 (有 0 条评论,132人围观)

还没有评论,来说两句吧...

相关阅读

    相关 java初始化顺序

    静态变量、静态语句块、成员变量、构造语句块(就是只有大括号的那块)以及构造函数的执行顺序。 对象的初始化顺序:(1)类加载之后,按从上到下(从父类到子类)执行被st