认识Spring

[size=xx-large]认识Spring[/size]
Spring的核心是个轻量级的容器,它是实现IoC容器和非侵入的框架,并提供AOP概念的实现方式;提供对持久层、事务的支持,提供MVC Web框架的实现。

[size=x-large]轻量级[/size]
轻量级是相对于重量级的容器(如EJB)来说的,Spring核心包不到1MB。

[size=x-large]非侵入性[/size]
洗完让应用程序几乎感受不到框架的存在,减少应用程序从框架移植时的负担。增加可重用性。

[size=x-large]容器[/size]
容器可以管理对象的生成,资源的取得,销毁等生命周期,甚至建立对象与对象之间的依赖关系。

[size=x-large]IoC控制反转与DI依赖注入[/size]
IoC:从对象角度来说可以避免对象之间的耦合,从容器的角度来说可以避免应用程序因依赖于容器的功能,而从容器脱离。
DI:在配置文件中加以设置,Spring核心容器会自动根据配置,将依赖注入到指定的对象。

[size=x-large]AOP[/size]
可以在不修改任何程序的情况下加入功能或者移除。

[size=x-large]持久化[/size]
提供对持久层的整合,如对JDBC的使用加以封装和简化,提供程式事务与声明事务管理功能。

[size=x-large]Web框架[/size]
提供Model 2框架的解决方案。轻松替换不同view层,将自己熟悉的框架与Spring结合使用。

[size=x-large]控制反转[/size]
控制反转时为了解决依赖关系,通过接口声明,分别写出不同底层的实现,需要那个就调用那个实现,就可以完成对不同底层的切换,而不是修改整个代码。例如:
Business business = new Business();
//这里就完成了选择底层驱动,是floppy或者是USB,而源类中用的是IDeviceWriter,这个接口,所选的俩个驱动分别都实现了这个接口。并且复写了saveToDevice()方法。
business.setDeviceWriter(new FloppyWriter()or new UsbDiskWriter());
business.saveToDevice();
还可以用Business工厂方法和xml文件配置进行动态管理。

[size=x-large]依赖注入[/size]
保留抽象接口,让组件依赖于抽象接口,当组件要与其他实际的对象发生依赖关系时,由抽象接口来注入依赖的实际对象。
分别有三种方法实现:
Type 1 IoC:
类实现接口,有较强的侵入性。降低重用性。
Type 2 IoC:
上面的例子就是这种方法,利用Setter形式。
Type 3 IoC:
利用构造方法实现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值