springboot 常用注解整理
@controller 控制器(注入服务)
用于标注控制层,相当于struts中的action层
@service 服务(注入dao)
用于标注服务层,主要用来进行业务的逻辑处理
@repository(实现dao访问)
用于标注数据访问层,也可以说用于标注数据访问组件,即DAO组件.
@component (把普通pojo实例化到spring容器中,相当于配置文件中的 <bean id="" class=""/>)
泛指各种组件,就是说当我们的类不属于各种归类的时候(不属于@Controller、@Services等的时候),我们就可以使用@Component来标注这个类。
@Data (实体类注解)
省去代码中大量的 get()、 set()、 toString() 等方法,提高代码的简洁。
@ConfigurationProperties(读取配置文件里指定的内容)
只要在 Bean 上添加上了这个注解,指定好配置文件的前缀,那么对应的配置文件数据就会自动填充到 Bean 中。
@Value(属性赋值)
标注在属性上面,可以将外部文件的配置数据注入到bean的字段中。
@PropertySource(加载指定的配置文件)
加载指定的属性文件(*.properties)到 Spring 的 Environment 中。可以配合 @Value 和 @ConfigurationProperties 使用。
@Slf4j(输出日志)
一般会在项目每个类的开头加入该注解,如果不写下面这段代码,并且想用log,
private final Logger logger = LoggerFactory.getLogger(当前类名.class);就可以用@Slf4来代替;这样就省去这段很长的代码。
@Autowired(自动装配)
可以对成员变量、方法和构造函数进行标注,来完成自动装配的工作,@Autowired标注可以放在成员变量上,也可以放在成员变量的set方法上,也可以放在任意方法上表示,自动执行当前方法,如果方法有参数,会在IOC容器中自动寻找同类型参数为其传值。@Autowired是根据类型进行自动装配的,如果需要按名称进行装配,则需要配合@Qualifier使用。