Spring @Value不会将一个bean的属性注入另一个bean的属性

时间:2013-08-15 11:35:50

标签: spring

我有一个bean A,属性为pA。现在,我想将此属性注入另一个bean B的属性pB。使用@Value尝试使用$和#,但它不起作用。这是我的B级。

@Component
public class B
{

    @Value("${a.aP}")
    private boolean bP;

}

A类如下所示:

@Component
public class A
{
    private boolean aP;

if(some condition){

aP = true;

}

}

1 个答案:

答案 0 :(得分:2)

您可以将bean A注入B,然后使用@PostConstruct设置bP:

@Component
public class B {

   private boolean bP;

   @Autowired
   private A a;

   @PostConstruct
   public void postConstructMenthod() {
      bP = a.getAP();
   }
}