乐趣区

关于spring:Spring-Boot-工程中Bean的依赖注入分析

背景剖析
Spring 框架除了要解决对象的资源耗费, 对象的利用性能问题, 是否还要思考对象的可保护, 可扩展性.
如果要思考这个个性, 那么该如何实现呢? 个别程序中会借助继承或组合实现这样个性, 但继承或组合
就离不开耦合, 如何升高这种耦合呢?

Spring 工程中的依赖注入剖析?
Spring 框架作为一个资源整合框架, 为了升高类于类之间的耦合, 进步其程序的可扩展性, 举荐存在耦合时,
要尽量耦合于接口或工厂(咱们当初我的项目中对象的创立底层是耦合了 Spring 的 BeanFactory 工厂). 并由
spring 框架实现具体值的注入(DI).

1.@Autowire 注解形容属性时, 其依赖注入规定是怎么的?

当 spring 框架检测到由它治理的 bean 外部有属性应用了 @Autowired 注解形容, 则会从 spring
容器中按属性类型查找对应的 Bean 对象 (这个过程叫依赖查找 -DL), 如果只有一个则间接注入.
如果有多个, 还会基于属性名与 bean 对象的名字进行匹配, 如果有匹配的则间接注入, 没有匹配则
抛出异样 (依赖注入异样), 当然咱们也能够借助 @Qualifier 注解配合 @Autowired 注解应用, 指定
要注入的 bean 的名字.

2.Spring 中的依赖注入 (DI) 是基于什么技术实现的? 反射技术
3.Spring 学习过程中有一个设计思维, 称之为 IOC(管制反转), 如何实现管制反转呢? 能够借助 DI

Bug 剖析:
1.NoUniqueBeanDefinitionException (非惟一 bean 的定义)

退出移动版