如何在执行Object object = new Object()时注入依赖项

时间:2016-01-11 13:47:46

标签: java spring-mvc dependency-injection

当我使用经典代码Object object = new Object()实例化对象时,有没有办法注入所有依赖项和子依赖项?

从下面的代码中可以看出,A类自动装配B类,B类自动装配C类。

当我以这种方式实例化A类A a = new A();当然A类没有它的依赖关系B,而B也没有它等等。

遵循这个example我能够加载A的依赖关系(所以B加载到A中),但不是B的相对依赖关系。

有办法吗?

谢谢

public class Start{
    public void start(){
       A a = new A();
    }
}

public class A{
    @Autowired B b;
}

public class B{
   @Autowired C c;
}

public class C{   
}

1 个答案:

答案 0 :(得分:1)

Spring引擎是否创建了一个对象,并将创建的实例放在一个用@Autowired注释的字段中。

如果对象不在弹簧引擎的控制之下,则不会立即显示@Autowired字段。

因此,如果使用new显式创建容器对象,则无法正确初始化字段(因此,如果它不在spring引擎的控制之下)。