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) {まず、を含む2番目のコードブロックがアプリケーションを起動するためのメインメソッドとして機能しないことは間違いありません。

この方法で自動配線を使用することはできません。静的mainメソッドはアプリケーションへのエントリであることを忘れないでください。これは、クラスとは異なるものと考えてください。このメソッドを入力すると、自動配線を処理するSpringコンテキストを含め、オブジェクトはまだインスタンス化されていません。

于 2013-02-22T01:16:57.473 に答える