7.12.2 Instantiating the Spring container using AnnotationConfigApplicationContext

AnnotationConfigApplicationContext

当@Configuration类被提供作为输入时,这个@Configuration类自己注册为bean,所有声明的@Bean方法也会注册为bean

当@Commponent类被提供作为输入时,他们自己会被注册为bean,且假定他们依赖也会自动注入

Simple construction

ApplicationContext ctx = new AnnotationConfigApplicationContext(AppConfig.class);
ctx.getBean(...);

像上面提到的那样,AnnotationConfigApplicationContext也可以与标记了@Commponent的组件一起工作

ApplicationContext ctx = 
    new AnnotationConfigApplicationContext(MyServiceImpl.class, Dependency1.class, Dependency2.class);

Build the container programmatically using register(Class<?> ...)

public static void main(String[] args){
    AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext();
    ctx.register(AppConfig.class, OtherConfig.class);
    ctx.refresh();
}

Enabling component scanning with scan(String...)

public static void main(String[] args){
    AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext();
    ctx.scan("com.acme");
    ctx.refresh();
}

results matching ""

    No results matching ""