首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

Spring学习札记之一spring的特点

2012-06-26 
Spring学习笔记之一spring的特点认识Spring?Spring的核心是个轻量级的容器,它是实现IoC容器和非侵入的框架

Spring学习笔记之一spring的特点

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

轻量级?
轻量级是相对于重量级的容器(如EJB)来说的,Spring核心包不到1MB。?

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

容器?
容器可以管理对象的生成,资源的取得,销毁等生命周期,甚至建立对象与对象之间的依赖关系。?

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

AOP?
可以在不修改任何程序的情况下加入功能或者移除。?

持久化?
提供对持久层的整合,如对JDBC的使用加以封装和简化,提供程式事务与声明事务管理功能。?

Web框架?
提供Model 2框架的解决方案。轻松替换不同view层,将自己熟悉的框架与Spring结合使用。?

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

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

热点排行