IOC 控制反转 理解与解析
来源:互联网 发布:进程调度算法流程 编辑:程序博客网 时间:2024/06/05 02:03
案例:从不同的数据库取数据
1、从Sql Server中取数据
2、从Mysql中取数据
3、从Oracle中取数据
1、public class GetDataFromSqlServer{
public List getData(){
...
}
}
2、public class GetDataFromMysql{
public List getData(){
...
}
}
3、public class GetDataFromOracle{
public List getData(){
...
}
}
业务逻辑类Bussiness
public class Bussiness{private GetDataFromMysql db = new GetDataFromMysql();
public void getData()
{
List list = db.getData();
}
}
从Bussiness类可以看出来,Bussiness依赖于GetDataFromMysql ,如果业务类改变了。用户现在从Oracle数据库中获取数据,这个程序就要做出修改。修改Bussiness类
这个时候IOC就能够解决这个问题
public interface DBBase{
public void getData();
}
编写从不同数据库获取数据的类并实现DBBase接口
public class GetDataFromMysql implements DBBase{
public void getData(){
}
}
省略剩余两个
public class Bussiness{
privtate DBBase db;
public void setDataBase(DBBase db)
{
this.db = db;
}
public void getData()
{
this.db.getData();
}
}
编写测试类
public class TestBussiness{
private Bussiness bussiness = new Bussiness();
public void getData()
{
bussiness.setDataBase(new GetDataFromMysql());
bussiness.getData();
}
}
很明显从测试类来看Bussiness被成功的重用了。
- IOC 控制反转 理解与解析
- 理解 控制反转IOC与依赖注入
- 控制反转(IoC)-解析与实现
- 控制反转(IoC)-解析与实现
- IoC控制反转理解
- 控制反转(IoC) 的理解
- 理解IoC及控制反转
- 透彻理解IoC(控制反转)
- spring Ioc控制反转理解
- 透彻理解IoC(控制反转)
- Spring控制反转(IoC)的理解
- Spring控制反转(IoC)的理解
- Spring控制反转(IoC)的理解
- Spring控制反转(IoC)的理解
- Spring控制反转(IoC)的理解
- Spring控制反转(IoC)的理解
- spring IOC 控制反转的简单理解
- Androi中IOC(控制反转)理解
- SSM框架入门和搭建 十部曲
- CS0236号错误是什么
- 切换Fragment时实现数据保持
- Java中的string介绍和字符串常见操作
- 常用通信协议介绍(HTTP,UDP,TCP,HTTPS)
- IOC 控制反转 理解与解析
- HttpClient和HttpURLConnection的区别
- caused by android.system.errnoexception open failed eacces (permission denied)解决方案,安卓6.0(API23)权限问题
- AI学习之路(2):GPU版本的Tensorflow在Windows上安装
- 遍历js对象的元素
- Programming with Libevent epoll
- 安卓在一个活动(Activity)里加载碎片(Fragment)并切换到另一个碎片(Fragment)
- GEMM对于深度学习的重要性
- java面向对象编程思想