首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spring @PostConstruct执行顺序?

Spring @PostConstruct执行顺序?
EN

Stack Overflow用户
提问于 2019-04-12 06:32:58
回答 1查看 497关注 0票数 0
代码语言:javascript
复制
Class User
{

        @Autowired
        private MyOtherBean;

        @PostConstruct
        public void init(){
                for(MyObject value : myOtherBean.getValues()){

                }
        }
}



Class MyOtherBean
{
        @Autowired
        private MyOtherBean1;

        @PostConstruct
        public void init(){
                MyOtherBean1.populateValues();
        }

        public Collection<MyObject> getValues(){

        }
}

问题:间歇性

Description:现在在我的例子中,用户的PostCostruct首先被调用。MyOtherBean PostConstruct是在实际填充值之后调用的。

当用户PostConstruct尝试getValues时,它返回null并将结果转化为getValues。

问题

  1. 有办法避免这种情况吗?
  2. 避免这种依赖的正确标准方法是什么?
EN

回答 1

Stack Overflow用户

发布于 2019-04-12 06:38:20

@PostConstruct在Bean构造后调用,设置属性,但在注入上下文之前。理想情况下,您应该将任何依赖于其他bean的代码放在那里--因为这些bean可能还没有初始化。

https://hobione.wordpress.com/2009/04/22/jsf-postconstruct/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55645763

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档