请解释自动装配模式的区别?

在 Spring 框架中共有 5 种自动装配,让我们逐一分析。

  • no:这是 Spring 框架的默认设置,在该设置下自动装配是关 闭的,开发者需要自行在 bean 定义中用标签明确的设置依赖 关系。
  • byName:该选项可以根据 bean 名称设置依赖关系。当向一 个 bean 中自动装配一个属性时,容器将根据 bean 的名称自 动在在配置文件中查询一个匹配的 bean。如果找到的话,就 装配这个属性,如果没找到的话就报错。
  • byType:该选项可以根据 bean 类型设置依赖关系。当向一个 bean 中自动装配一个属性时,容器将根据 bean 的类型自动 在在配置文件中查询一个匹配的 bean。如果找到的话,就装 配这个属性,如果没找到的话就报错。
  • constructor:造器的自动装配和 byType 模式类似,但是仅 仅适用于与有构造器相同参数的 bean,如果在容器中没有找 到与构造器参数类型一致的 bean,那么将会抛出异常。
  • autodetect:该模式自动探测使用构造器自动装配或者 byType 自动装配。首先,首先会尝试找合适的带参数的构造 器,如果找到的话就是用构造器自动装配,如果在 bean 内部 没有找到相应的构造器或者是无参构造器,容器就会自动选择 byTpe 的自动装配方式。

回复

我来回复
  • 暂无回复内容

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载