依赖注入的模式和类型

  • 手动
    • Xml资源配置元信息
    • Java注解配置元信息
      • @Bean
      • @Autowired
    • API配置元信息
  • 自动
    • Autowiring
    • 类型
      • No : 默认值,未激活自动绑定,需要手动指定依赖注入
      • byName: 根据被注入属性的名称做为Bean名称进行依赖查找,并将对象设置到该属性
      • byType: 根据被注入属性的类型做为依赖类型进行查找,并将对象设置到该属性
      • constructor: 特殊的byType,用于构造器参数

xml 资源配置元信息

1
2
3
<bean id="" name="" class="">
<property name="name" ref="nameObj"/>
</bean>
依赖注入类型 示例
set <property name=”user” ref=”userBean”/>
构造器 <constructor-arg name=”user” ref=”userBean”/>
字段注入 @Autowired User user;
方法注入 @Autowired public void user(User user){}
回调注入 class MyBean implements BeanFactoryAware{}

依赖注入选择

基础类型注入
集合类型注入
限定注入
延迟依赖注入
依赖处理过程
@Autowired 注入原理
JSR-330@inject注入原理
Java通用注解注入原理
自定义依赖注解

自动绑定
模式
限制和不足

题目精选