spring 的设计理念和整体架构

    作为优秀的开源项目,spring包括众多的子项目。

    Spring AMQP:为spring应用更好的使用基于AMQP(高级消息队列协议)的消息服务而开发的

    Spring for Android:为android终端开发应用提供spring的支持

    Spring Batch:提供构建批处理应用和自动化操作的操作,适用于不需要与用户交互,重复的操作量大,大容量的批量数据处理,需要较高的可靠性。

    Spring  Data:为spring应用提供使用非关系数据的能力,如map/reduce分布式存储,云计算存储环境等

    Spring  Framework:我们熟知的spring项目的核心,主要包括IOC和AOP两个核心基本功能,还包括了其他spring 的基本模块,比如MVC,JDBC,事务处理模块等。

    Spring Gemfire:用来简化通过 GemFire分布式数据管理平台来部署高可伸缩性的 Spring 应用

    Spring Integration:针对 Java 技术的一个可扩展的、基于文本的开源 RAD 工具。它是用于创建和管理基于Spring 的应用程序的一个强大资源   

    Spring Mobile:基于sring MVC构建,为移动终端的服务器应用开发提供支持,使工作在spring传统的服务器端完成

    Spring .NET:在.net环境下使用spring开发

    Spring ROO:创建Spring工程的小工具,

    Spring Security:广泛使用的基于spring的认证和安全工具,是在spring社区中久负盛名的Acegi框架基础上发展的

    Spring Social:spring框架的扩展,帮助spring应用更方便的与各种社交网站交互,如facebook等

    Spring Web Flow:构建在spring MVC的基础上,定义了一种语言来描述工作流,同时高级的工作流控制器引擎可以管理回话状态,支持AJAX来构建丰富的客户端体验,并且提供对JSF的支持。

    Spring Web Services:基于spring的web服务框架,主要侧重基于文档驱动的web服务,提供SOAP服务开发,允许通过多种方式创建web服务。

    spring在java EE的应用开发中,支持POJO和使用JavaBean的开发方式,使应用面向接口开发,充分支持OO的设计方法。同时,完成对象之间的关系解耦,将传统的对象——对象通过IOC容器的控制反转转化为对象——IOC容器——对象。再次,通过AOP以动态和非侵入式的方式来管理实务

spring架构图

    spring的优点:

        spring是一个非侵入性框架;

        spring提供了一个一致的变成模型,使应用直接使用POJO开发,从而可以与运行环境隔离开来;

        spring推动应用的设计风格向面向对象及面向接口转变,提高了代码的重用性和可测试性;

        spring改变了体系结构的选择,帮助我们使用不同的技术实现,如从hibernate切换到其他ORM工具等

   

猜你喜欢

转载自jw271052784.iteye.com/blog/1729875
今日推荐