KYYY

本文介绍了Spring框架的核心组成部分——IOC(控制反转)的概念,以及如何通过导入beans, context, core, expression等包来实现。传统的对象创建方式存在耦合问题,而Spring通过工厂模式和反射结合配置文件实现了解耦。这种方式允许在不修改源代码的情况下,灵活地切换底层实现,符合OCP原则。
摘要由CSDN通过智能技术生成

DataAccess 用于数据访问,WEB 用于页面显示,核心容器也就是IOC部分。 控制反转(IOC) 控制反转(Inversion of Control)是指将对象的创建权反转(交给)Spring。 使用IOC就需要导入IOC相关的包,也就是上图中核心容器中的几个包:beans,context,core,expression四个包。 实现原理 传统方式创建对象: UserDAO userDAO=new UserDAO(); 进一步面向接口编程,可以多态: UserDAO userDAO=new UserDAOImpl(); 这种方式的缺点是接口和实现类高耦合,切换底层实现类时,需要修改源代码。程序设计应该满足OCP元祖,在尽量不修改程序源代码的基础上对程序进行扩展。此时,可以使用工厂模式: class BeanFactory{ public static UserDAO getUserDAO(){ return new UserDAOImpl(); } } 此种方式虽然在接口和实现类之间没有耦合,但是接口和工厂之间存在耦合。 使用工厂+反射+配置文件的方式,实现解耦,这也是 Spring 框架 IOC 的底层实现。 //xml配置文件 // class BeanFactory{ public static Object getBean(String id){ //解析XML //反射 Class clazz=Class.forName(); return clazz.newInstance(); } }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值