0

是否可以在这样的静态方法中注入依赖项:

@Component
public class MyClass {
    @Autowired
    public static void main(String[] args) {
        // do stuff 
    }
}

我想要实现的是为此工作代码实现自动装配:

@Component
public class MyClass {

    public static void main(String[] args, MyClass mc) {
        ApplicationContext ctx = new GenericXmlApplicationContext("context.xml");
        MyClass p = ctx.getBean(MyClass.class);
        // do stuff
    }
}
4

1 回答 1

1

首先,我很确定包含的第二个代码块public static void main(String[] args, MyClass mc) {不会作为启动应用程序的主要方法。

您将无法以这种方式使用自动装配。请记住,静态 main 方法是应用程序的入口,请将其视为与您的类不同。输入此方法时,还没有实例化任何对象,包括处理自动装配的 Spring Context。

于 2013-02-22T01:16:57.473 回答