第六章-Spring IoC 注入

依赖注入的模式和类型

手动模式 - 配置或者编程的方式,提前安排注入规则

  • XML 资源配置元信息
  • Java 注解配置元信息
  • API 配置元信息

自动模式 - 实现方提供依赖自动关联的方式,按照內建的注入规则

  • Autowiring(自动绑定)

依赖注入的模式和类型

依赖注入类型

依赖注入类型配置元数据举例
Setter 方法<proeprty name="user" ref="userBean"/>
构造器<constructor-arg name="user" ref="userBean" />
字段@Autowired User user;
方法@Autowired public void user(User user) { … }
接口回调class MyBean implements BeanFactoryAware { … }

自动绑定(Autowiring)模式

模式说明
no默认值,未激活 Autowiring,需要手动指定依赖注入对象。
byName根据被注入属性的名称作为 Bean 名称进行依赖查找,并将对象设置到该属性。
byType根据被注入属性的类型作为依赖类型进行查找,并将对象设置到该属性。
constructor特殊 byType 类型,用于构造器参数。

接口回调注入

內建接口说明
BeanFactoryAware获取 IoC 容器 - BeanFactory
ApplicationContextAware获取 Spring 应用上下文 - ApplicationContext 对象
EnvironmentAware获取 Environment 对象
ResourceLoaderAware获取资源加载器 对象 - ResourceLoader
BeanClassLoaderAware获取加载当前 Bean Class 的 ClassLoader
BeanNameAware获取当前 Bean 的名称
內建接口说明
MessageSourceAware获取 MessageSource 对象,用于 Spring 国际化
ApplicationEventPublisherAware获取 ApplicationEventPublishAware 对象,用于 Spring 事件
EmbeddedValueResolverAware获取 StringValueResolver 对象,用于占位符处理

基础类型注入

基础类型

  • 原生类型(Primitive):boolean、byte、char、short、int、float、long、double
  • 标量类型(Scalar):Number、Character、Boolean、Enum、Locale、Charset\Currency、Properties、UUID
  • 常规类型(General):Object、String、TimeZone、Calendar、Optional 等 • Spring 类型:Resource、InputSource、Formatter 等
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值