spring IoC-创建工程基于注解开发(二)(@Configuration、@ComponentScan)

spring 目录

介绍

Spring3.0提出注解 @Configuration 、@ComponentScan 替代application-config.xml配置文件

使用纯java代码,不需要xml配置文件

@Configuration 注解

使用方法

修饰类

作用

表示该类是 配置类,相当于spring配置文件 spring.xml

配置类的要求

配置类有如下要求:

  1. 不可以是final类;
  2. 不可以是匿名类;
  3. 嵌套的配置类必须是静态类。

总之一句话:将一个普通的干净的类作为配置类,最为稳妥

有时可省略该注解

参见下面例子

@ComponentScan

使用

修饰类方法

作用

指定要扫描某包下的注解

创建 ApplicationConfig 类

该类用于替代 spring.xml 配置文件

@Configuration
@ComponentScan("top.malaoshi") //指定扫描该包下的注解
public class ApplicationConfig {
}

实现主启动类

public class Main {
    public static void main(String[] args) {
        ApplicationContext ac=new AnnotationConfigApplicationContext(ApplicationConfig.class);

        IUserService srv=(IUserService)ac.getBean("userSrvImpl");
        srv.save("lilei","123456");
    }
}

执行结果:

UserSrvImpl构造方法
调用UserSrvImpl的save()方法,参数:lilei-123456

可省略 @Configuration 注解

由于 ApplicationConfig 类传入到 AnnotationConfigApplicationContext 类中,此时,ApplicationConfig 类上可省略 @Configuration 注解


原文出处:/show_1IX2A3KPFHN.html