目录
(3)ApplicationContext:BeanFactory接口有实现类
(1)IOC操作Bean管理,下面的IOC基于注解也是,都是基于两种进行创建对象和注入属性
前言
一、Spring两大核心、六大特点
简而言之:框架=反射+注解
高内聚低耦合。
耦合性:是一种软件度量,是指一程序中,模块及模块之间信息或参数依赖的程度,独立性越差。
低内聚性:一般也代表不易维护、不易测试、不易复用以及难以理解,反之就是高内聚。
Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应用都可以从Spring中受益。
二、IOC容器
1、IOC是神马以及底层原理
(1)神马是IOC(一种思想)
(2)IOC底层原理
(3)图解IOC底层原理![](https://i-blog.csdnimg.cn/blog_migrate/52153d7db4d7b636caa0f2cb8b83aef9.png)
采用工厂模式的目的是:耦合度降低,但是不能降到最低,所以还要用到:xml解析、反射。
IOC过程(进一步降低耦合度)
2、IOC接口
!!!IOC本质是容器,即工厂模式
(1)IOC思想基于IOC容器,IOC容器底层就是对象工厂
(2)Spring提供IOC容器实现两种方式:(两个接口)
接口1:BeanFactory:IOC容器基本实现,是Spring内部的使用接口,不提供开发人员使用
接口2:ApplicationContext:BeanFactory接口的子接口,提供更多更加强大的功能,一般由开发人员进行使用
(3)ApplicationContext:BeanFactory接口有实现类
3、IOC基于Bean管理(基于xml)
(1)IOC操作Bean管理,下面的IOC基于注解也是,都是基于两种进行创建对象和注入属性
(2)Bean管理操作有两种方式
方式1、 基于xml配置文件方式实现
方式2、 基于注解方式实现
(3)基于xml 方式创建对象
(4)基于xml方式注入属性
注入方式1、使用set方法进行注入
注入方式2、使用有参数构造进行注入