Spring学习-2
IoC(控制反转)
英文名称:(Inversion of Control)
- IoC 是什么?
- IoC 完成的事情原先由程序员主动通过 new 实例化对象事情,转交给 Spring 负责.
- 控制反转中控制指的是:控制类的对象.
- 控制反转中反转指的是转交给 Spring 负责.
- IoC 最大的作用:解耦.
- 程序员不需要管理对象.解除了对象管理和程序员之间的耦合.
Spring 环境搭建
导入 jar 四个核心包一个日志包(commons-logging)
在 src 下新建 applicationContext.xml(文件名称和路径自定义)
记住 Spring 容器 ApplicationContext,applicationContext.xml 配置的信息最终存储到了 AppliationContext 容器中
spring 配置文件是基于 schema
- schema 文件扩展名.xsd
- 把 schema 理解成 DTD 的升级版.比 DTD 具备更好的扩展性.
- 每次引入一个 xsd 文件是一个 namespace(xmlns)
配置文件中只需要引入基本 schema
- 通过<-bean/> 创建对象.
- 默认配置文件被加载时创建对象.
Spring通过构造方法创建对象
无参构造创建:默认情况.
- 配置文件通过<-bean/> 创建对象.
- getBean(“
标签id值”,返回值类型);如果没有第二个参数,默认是 Object
- 配置文件通过<-bean/> 创建对象.
有参构造创建:需要明确配置
需要在类中提供有参构造方法
在 applicationContext.xml 中设置调用哪个构造方法创建对象
如果设定的条件匹配多个构造方法执行最后的构造方法(构造器在前面声明时,在最后面声明调用第一个)
index: 参数的索引,从 0 开始
name: 参数名
type:类型(区分开关键字和封装类 int 和 Integer)
)
按条件匹配多个构造器时
)
Spring通过实例工厂创建对象
工厂设计模式:帮助创建类对象.一个工厂可以生产多个对象.
实例工厂:需要先创建工厂,才能生产对象
实现步骤:
必须要有一个实例工厂
在 applicationContext.xml 中配置工厂对象和需要创建的对象
Spring通过静态工厂创建对象
不需要创建工厂,快速创建对象.
- 实现步骤
- 编写一个静态工厂(在方法上添加 static)
- 配置文件,配置工厂对象
)
- 编写一个静态工厂(在方法上添加 static)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Kylin!
评论