私は春3.0のWebアプリケーションを持っています。私はappcontext xmlで定義されたbeanを使用するcronのmainメソッドを使ってクラスを実行する必要があります(コンポーネントのスキャンアノテーションを使用します)。私は同じsrcディレクトリに私のメインクラスを持っています。 WebコンテキストからメインメソッドにBeanを挿入するにはどうすればいいですか?私はAutoWiredを使用しようと、それがnull Beanを返しメインメソッドクラスのSpring beanインジェクション
ApplicationContext context = new ClassPathXmlApplicationContext("appservlet.xml");
を使用して、それを実行しようとしました。だから、私はApplication ctxを使っていました。これは、mainメソッドを実行すると(期待どおりの)新しいコンテキストを作成しています。しかし、コンテナから既存のBeanを使用することは可能でしょうか。
@Autowired
static DAO dao;
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("xman- servlet.xml");
TableClient client = context.getBean(TableClient.class);
client.start(context);
}
将来の読者のために、密接に関連する質問:http://stackoverflow.com/questions/3659720/spring-3-autowire-in-standalone-application – Jonik