按顺序注入豆子

时间:2015-06-12 22:33:47

标签: spring

我是Spring的新手,这是我在独立java应用程序中的用例。

有一个需要创建4个服务的入口点:s1,s2,s3和s4。

S1 init属性当前位于属性文件中。 S1将填充创建S2,s3和s4所需的属性。

想知道如何利用Spring来做到这一点。总体目标是为这些服务实现不同的实施。

感谢您的帮助, 问候 cabear

2 个答案:

答案 0 :(得分:0)

您可以使用@DependsOn(“beanName”)注释(或XML中的depends-on =“beanName”)。

@Component
public class S2{

    @Autowired
    public S1 s1;

    @PostConstruct
    public void init(){
      //read data from s1
    }

}

Do the same for s3 and s4

答案 1 :(得分:0)

为了加载用于其他bean的属性,我建议使用property-placeholder。

<context:property-placeholder location="classpath:foo.properties" />
<bean id="someBean" class="...">
    <property name="myProperty" value="${keyOfProperty}" />
</bean>

快速谷歌后,我找到this blog post了解更多详情。