Spring的常用注解

① @Component:使用在普通java类上

② @Service:使用在业务层类上

作用:声明一个类的对象为bean对象,相当于配置了bean标签。

注意:相当于使用的是无参数构造器来创建对象。

问题:

只使用@Service注解,和 A a=new A();的效果是相同的,创建的

是一个没有初始化数据的bean对象,但是在实际生产环境中很多时候

需要Spring容器帮我们创建一个带有初始化数据的对象(属性注入|依赖注入)

解决:

仍然使用注解,告诉Spring容器对象,如何给注解声明的对象进行初始化

的赋值.,基本类型属性赋值和引用类型属性赋值

实现:

依赖注入的注解:@Autowire和@Resource

属性注入的注解:@Value

③ @Controller:使用在控制层类上,SpringMVC

作用:声明一个类的对象为bean对象,相当于配置了bean标 签

使用:在SpringMVC的控制器类上使用。

④ @Repository
 作用:声明一个类的对象为bean对象,相当于配置了bean标签

 使用:在数据库功能类上使用。比如Dao层对象

⑤ @Resource

 作用:替换在配置文件的依赖注入的。

         使用:在有依赖关系的属性上使用,比如A中有B属性,则在B属性上声明,告 Spring容器对象将B的bean对象注入到A的bean对象中

 注意:此注解是jdk官方的注解,不是Spring的注解,会先按照byName的方式注入,如果没有则按照byType的方式 继续注入,如果都没有则不注入。并且不需要提供get/set方法

⑥ @Autowired

作用:和@Resource相同,都是替换依赖注入的配置的。

使用:在需要依赖注入的属性上声明

注意:该注解是Spring官方提供的,默认使用byType.

⑦ @Value

作用:用来替换配置文件中的属性注入的。

使用:在属性上声明,值为${“键名”}

 示例: @Value(${“name”})

注意:使用此注解的注入,无需提供get/set方法。

示例:

 

posted @ 2021-01-21 12:52  巧克力曲奇  阅读(75)  评论(0编辑  收藏  举报