您的位置:首页 > 编程语言 > Java开发

Spring(1): Spring设计理念和整体架构

2017-05-22 21:07 204 查看

一、Spring的整体架构

Spring的架构图



Spring IoC:包含了基本的IoC容器BeanFactory的接口与实现。

Spring AOP:实现一个完成的建立AOP代理对象,实现AOP拦截器,直至实现各种Advice通知的过程。

Spring MVC:以DispatcherServlet为核心,实现MVC模式,包含与Web容器环境的集成,Web请求的拦截、分发、处理和ModelAndView数据的返回,以及集成各种UI视图展现和数据表现。

Spring JDBC/ORM:提供了jdbcTemplate作为模板类,封装了基本的数据库操作方法,提供了RDBMS的操作对象,提供了ORM工具的封装。

Spring事务处理:Spring把在企业应用开发中事务处理的主要过程抽象出来,并且简洁地通过AOP的切面增强实现了声明式事务处理的功能。

Spring远端调用:可实现应用的解耦。

Spring应用:应用支持,来自广泛使用的Spring子项目。

二、Spring的设计目标

Spring为开发者提供一个一站式的轻量级应用开发框架(平台)。

在Java EE的应用开发中,支持POJO和使用JavaBean的开发方式,使应用面向接口开发,充分支持OO(面向对象)的设计方法。

三、Spring的主要子项目

Spring Framework(Core):Spring项目的核心。包含了一系列IoC容器的设计,提供了依赖反转模式的实现;集成了AOP功能;包含Spring基本模块,比如MVC、JDBC、事务处理模块的实现。

Spring Security:基于Spring的认证和安全工具。

Spring Batch:提供构建批处理应用和自动化操作的框架。

Spring Integration:为企业的数据集成提供解决方案。

Spring AMQP:基于AMQP(高级消息队列协议)的消息服务。

Spring Data:提供使用非关系型数据的能力。

四、Spring的应用场景

在SSH架构中,Struts作为Web UI层,Spring作为中间件平台,Hibernate作为数据持久化工具(ORM工具)来操作关系数据库。

五、Spring的特点

Spring是一个非侵入式框架,目标使应用程序代码对框架的依赖最小化。

Spring提供了一个一致的编程模型,使应用直接使用POJO开发,从而与运行环境隔离开来。

Spring推动应用的设计风格面向对象及面向接口编程转变,提高了代码的重用性和可测试性。 Spring改进了体系结构的选择。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: