Spring中的新注解
@Configuration
作用:指定当前类是一个配置类
细节:当配置类作为AnnotationConfigApplicationContext对象创建的参数时,该注解可以不写,这时系统将直接扫描该配置类。
@ComponentScan
作用:用于通过注解指定spring在创建容器时要扫描的包
属性:
value:和basePackages的作用一样的,用于指定创建容器时要扫描的包
使用此注解等于在xml中配置了:<context:component-scan base-package="com"></context:component-scan>
@Bean注解
作用:把当前方法的返回值作为bean对象存入spring的ioc容器中
属性:
name:用于指定bean的id。默认值是当前方法的名称
细节:当使用注解配置方法时,如果方法有参数,spring框架会去容器中查找有没有可用的bean对象。查找的方式和@Autowired注解的方式一样
@Import注解
作用:导入其他的配置类。
属性:
value:指定其他配置类的字节码。
使用方法:@Import(xxxx.class) //xxxx为导入的配置类名
使用了Import注解后,有Import注解的为父配置类,而导入的都是子配置类。
@PropertySource
作用:导入properties文件
属性:
value:指定文件的名称和路径。关键字:classpath:表示类路径下
使用方法:@PropertySource("classpath:jdbcConfig.properties")
properties文件:
创建ioc容器方法:
常规配置文件创建ioc容器使用方法:ApplicationContext ac = new ClassPathXmlApplicationContext("bean.xml");
新注解代替配置文件用法:ApplicationContext ac = new AnnotationConfigApplicationContext(SpringConfiguration.class);
//SpringConfiguration为配置过@Configuration的配置类.