在非Web注释配置的应用程序中初始化Spring

时间:2014-01-11 16:31:26

标签: spring annotations applicationcontext

我的java应用程序使用Spring构造型注释(@Controller,@ Component)和autowire注释来管理依赖注入。

它不是Web应用程序,只是简单的jar。它也是基于纯注释的代码,即根本没有xml。

使用main方法初始化基于Spring注释的应用程序上下文和默认配置的正确方法是什么?

1 个答案:

答案 0 :(得分:5)

使用@Configuration命名AppConfig,它等同于applicationContext.xml。

@Configuration
public class AppConfig {

  @Bean(initMethod = "init")
  public Foo foo() {
      return new Foo();
  }

  @Bean(destroyMethod = "cleanup")
  public Bar bar() {
      return new Bar();
  }
}

在main方法中新建一个AnnotationConfigApplicationContext。

public static void main(String[] args) {
  ApplicationContext ctx = new AnnotationConfigApplicationContext(AppConfig.class);
  Foo foo = ctx.getBean(Foo.class);
  //etc
}