这些注解在spring3.0版本就有了,而且用的频率非常高。这里就此来记录一下
@Configuration
之前我们用xml的形式来配置ioc或者aop,但是以后都是零配置的时代,就是不需要xml的代码,那xml配置文件怎么办呢?就是用这个注解来声明的
@Configuration //加上这个注解这个类就相当于是一个xml的配置文件,让spring扫描即可
public class config(){
}
@Bean
用@bean这个注解来注入bean
@Configuration //加上这个注解这个类就相当于是一个xml的配置文件,让spring扫描即可
public class config(){
@Bean
public A getA(){
return new A(); //这就相当于在xml配置文件中注册一个beanA
}
@Bean
public C getC(){
return new C(getB()); //这就相当于在xml配置文件中注册一个beanC,并且C依赖B
}
@Bean
public B getB(){
return new B(); //这就相当于在xml配置文件中注册一个beanB
}
}
@ComponentScan
这个注解就相当与在xml文件中的<context : component-scan >
用来扫描配置指定的包。如果不指定包的话,spring就默认扫描这个注解所在类的包下面的文件
@propertySource与@propertySource
这个注解是加载配置文件的比如 *.properties文件
@Configuration //加上这个注解这个类就相当于是一个xml的配置文件,让spring扫描即可
@propertySource("classpath:1.properties") //可以加载多个配置文件
@propertySource("classpath:2.properties")
public class config(){
}
如果是低于java1.8版本的话只能用下面这种方法来加载多配置文件
@Configuration //加上这个注解这个类就相当于是一个xml的配置文件,让spring扫描即可
@propertySources({
@propertySource("classpath:1.properties") //可以加载多个配置文件
@propertySource("classpath:2.properties")
})
public class config(){
}
@ConfigurationProperties(prefix = “”)
这个注解的作用是把yml文件中你自定义的值映射到类的字段中。比如
package com.imooc.dataobject;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
/**
* Created by 敲代码的卡卡罗特
* on 2018/3/5 23:07.
*/
@Data
@Component
@ConfigurationProperties(prefix = "")
public class Date {
private String xixi;
}
yml文件
xixi: lzh
这就可以了,这就已经注入好了。好屌有没有