Spring框架之IOC入门
2024-09-18 13:20:11
1.开发环境
- IDEA版本: 2022.1.4
- Maven版本:3.8.6
- Spring版本:6.0.2
2.案例分析
2.1 自定义Man类
2.2 自定义Company类
2.3 自定义CompanyTest类
2.4 分析图
3.案例改进
- 此时Company类和Man类之间的耦合度比较高,若希望雇佣其它类取代Man类则需要修改Company类,这种修改违背了开闭原则,为了解决该问题,就可以将雇佣什么类的工作移交出去。
3.1 自定义Staff接口
3.2 修改Man类
3.3 修改Company类
3.4 修改CompanyTest类
3.5 分析图
4.IOC概述
4.1 基本概念
- 此时雇佣什么类的控制权已经由业务代码反转给测试代码来决定,这种思想就是IOC(Inverse of Control),翻译过来就是控制反转,使用IOC不仅可以降低程序的耦合性,还可以管理对象的创建和对象之间的依赖等。
4.2 相关接口
- Sping框架提供IOC容器实现有两种方式:
- BeanFactory接口主要用于Spring内部使用,在加载配置文件时不会创建对象。
- ApplicationContext接口是BeanFactory接口的子接口,主要用于开发人员使用,在加载配置文件时就会创建对象。
- ApplicationContext接口的主要实现类:
- FileSystemXmlApplicationContext类主要用于读取磁盘路径的配置文件并创建容器。
- ClassPathXmlApplicationContext类主要用于读取类路径的配置文件并创建容器。
4.3 案例实现
- 向pom.xml文件中增加Spring支持。
- 编写beans.xml文件。
- 自定义CompanySpringTest类。
更多精彩和源码欢迎关注微信公众号《格子衫007》!
最新文章
- 推荐一个自动抽取pdf高亮笔记的web应用
- Jquery中的事件和动画
- Loadrunne实现多个场景运行
- POJ2488 dfs
- Linux 下安装 jdk步骤:
- ToolBar Style
- Innodb IO优化 — 数据库表设计 转
- 《c程序设计语言》读书笔记-字符型0-9转为数字0-9
- SAP MRP的计算步骤
- CAKeyframeAnimation 旋转动画
- ASP.NET请求处理过程
- 搜索广告与广告网络Demand技术-搜索广告
- 标准之路网站上一篇文章《十天学会web标准(div+css)》的营养精华
- 【一天一道LeetCode】#342. Power of Four
- tablib cell() missing 1 required positional argument: 'column' 报错
- 常见爬虫/BOT对抗技术介绍(一)
- Linux 环境下 网络IO模型
- Android自定义View学习(二)
- c#启动windows服务问题总结
- thinkphp导航高亮的方法