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

第一章 Spring概述

2014-04-18 21:46 387 查看

Spring概述

1. Spring简介

Spring是分层的Java SE/EE应用一站式的轻量级开源框架,以IoC和AOP为内核,提供了展现层Spring MVC和持久层Spring JDBC以及业务层事务管理等众多的企业级应用技术,此外,Spring可以很好的整合第三方框架和类库的支持。

2. Spring优点

l 方便解耦,简化开发:通过Spring提供的IoC容器,可以将对象之间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合。

l AOP编程的支持:通过Spring提供的AOP功能,方便进行面向切面的编程,许多不容易用传统OOP实现的功能可以通过AOP轻松应付

n 声明式事务的支持:在Spring中,可以从事务管理代码中解脱出来,通过声明式方式灵活地进行事务的管理,提高开发效率和质量

n 方便程序的测试:可以用非容器依赖的编程方式进行所有的测试工作

n 方便集成第三方框架:Spring不排斥第三方的开源框架,相反,Spring降低使用第三方框架的难度,Spring提供对许多第三方框架的直接支持(如Struts、Hibernate、Hessian、Quartz等)

n 降低Java EE API的使用难度(如JDBC、JavaMail、远程调用等):通过Spring的简易封装,是这些Java EE API的使用难度大为降低

3. Spring 体系结构



l IoC容器:Spring核心模块实现了IoC的功能,它将类和类之间的依赖从代码中脱离出来,用配置的方式惊喜依赖关系的描述,由IoC容器负责依赖类之间的创建、拼接、管理、获取等工作。

l AOP模块:AOP是进行横切逻辑编程的思想,开拓了人们考虑问题的思路。在AOP模块里,Spring提供了满足AOPAlliance规范的实现,还整合了AspectJ这种AOP语言级的框架。

l Web及远程操作:该模块建立在Application Context模块之上,提供了Web应用的各种工具类,如通过Lister或Servlet初始化Spring容器,将Spring容器注册到Web容器中。其次,该模块还提供了多项面向Web的功能,如透明化文件上传、Velocity、FreeMarker、XSLT的支持。

l Web及远程访问:提供类似于Strut的框架Spring MVC,此外,还在远程访问以及Web Service上提供了对很多著名框架的整合。

l 数据访问和集成:建立一套面向DAO层统一的异常体系,同时将各种访问数据的检查型异常转换为非检查型异常,为整合各种持久层框架提供基础,通过封装,将模式化代码隐藏起来,使数据访问的程序得到大幅简化

4. Spring 3.0的新功能

1) 核心API更新到Java 5.0对泛型提供支持

2) Spring表达式语言,使配置文件具有动态性,能与Java实例化对象进行交互

3) 可通过Java类提供IoC配置信息

4) 通用类型转换系统和属性格式化系统:它比JavaBean PropertyEditors更为强大易用

5) 数据访问层新增OXM功能:它通过元数据描述对象和XML转换的映射

6) Web层的增强:提供对RESET风格编程的支持,并添加@CookieValue、@RequestHeaders的注解

4. 其他

a) 声明式模型验证:可以对Spring的DataBinder对Bean进行校验

b) 对JavaEE 6的支持

c) 支持内嵌的数据库
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: