Spring的常用注解@Component,@Service,@Autowired等

用于直接生成Bean对象

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

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

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

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

以上三个标签的作用都是声明一个类的对象为bean对象,相对于是SpringIOC中配置好的bean标签。

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

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

问题: 只使用以上所述注解,和 A a=new A();的效果是相同的,创建的是一个没有初始化数据的bean对象,但是在实际生产环境中很多时候需要Spring容器帮我们创建一个带有初始化数据的对象(属性注入|依赖注入)

解决:仍然使用注解,告诉Spring容器对象,如何给注解声明的对象进行初始化
的赋值.,基本类型属性赋值和引用类型属性赋值

实现:依赖注入的注解:@Autowire和@Resource,属性注入的注解:@Value

用于依赖注入和属性注入

所谓依赖注入说白了就是类中有引用数据类型(其他类),因此我们需要告诉Spring如何给这些引用类型赋值

⑤ @Resource

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

⑥ @Autowired

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

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

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

⑦ @Value

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

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

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

使用这种方式相当于从一个配置文件(该文件中含有键值对)中将值注入。因此还需要在xml中声明该配置文件的扫描路径

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值