Spring学习:三、Spring IoC 容器配置-注解方式

5. Spring IoC 容器配置-注解方式

5.1 注解定义Bean对象

  1. 在Bean class 添加 注解

    Spring2.5 提供 @Component 效果相当于 <bean> 元素
    在这里插入图片描述

  2. 配置包扫描,通知spring 注解Bean 在哪个包下面

    使用 <context> 命名空间 ,在spring的配置文件中添加context命令空间

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EkF41nFo-1670413554236)(assets/image-20220731182821091.png)]

     <context:component-scan base-package="com.suke"/>
    

    Spring 容器提供@Component 等效三个衍生注解

    @Repository 用于注册DAO(持久层 )

    @Service 用于注册 Service(业务层)

    @Controller 用于注册 Action (表现层)

5.2 注解实现属性依赖注入

通过上一步,我们已经把UserDaoImpl和UserServiceImpl使用对应的注解,交给Spring管理了:
在这里插入图片描述

但是在我们的UserServiceImpl类中依赖UserDao, 那我们需要使用属性注入的注解把UserDao注入到UserServiceImpl类:

5.2.1 注入基本类型属性

简单类型属性注入,只有变量才有意义 !

Spring3.0之后,通过@Value注解 结合 spEL 表达式实现

在这里插入图片描述

5.2.2 注入类类型的属性
  • Spring3.0提供@Value注解

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SGLKf2bi-1670413554239)(assets/image-20220731183503395.png)]

  • Spring2.0 提供@Autowired 注解 结合 @Qualifier 注解
    在这里插入图片描述

或者:
在这里插入图片描述

  • 单独使用@Autowired,表示按照类型匹配注入
  • @Autowired结合@Qualifier(“bean名称”),表示按照bean的name进行匹配注入
  • JSR-250规范 提供 @Resource 注解实现注入

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-l1RAaisU-1670413554241)(assets/image-20220731183920943.png)]

或者:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gvrzivCV-1670413554242)(assets/image-20220731183958350.png)]

  • @Resource没有写name,表示按照类型匹配注入
  • @Resource写name,表示按照bean的name进行匹配注入
  • JSR-330规范 提供 @Inject @Named 注解

    需要导入javax.inject 的依赖:

javax.inject javax.inject 1 ```

在这里插入图片描述
或者:
在这里插入图片描述

  • 只使用@Inject注解,表示按照类型匹配注入
  • @Inject配合@Named,表示按照bean的name进行匹配注入

5.3 Bean的作用域注解

<bean> 提供 scope属性,用于描述Bean的作用域

Spring提供@Scope注解,描述Bean的作用域

在这里插入图片描述

默认scope作用域 singleton !

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值