Spring(三)框架蓝图

来源:互联网 发布:剑三正太和尚捏脸数据 编辑:程序博客网 时间:2024/05/21 05:04

Spring(三)框架蓝图

核心容器这里写图片描述
 容器是Spring框架最核心的部分,他管理着Spring应用中的bean的创建、配置和管理。在这个模块中包括 Spring bean 工厂,他为Spring提供了DI的功能,基于bean工厂,我们还会发现有多种Spring Application Context 的实现,每一种都提供了配置Spring的不同方式 除了bean工厂和应用上下文,该模块也提供了许多企业服务,如:E-mail、JNDI访问、EJB集成和调度。 所有模块都建立于核心容器上。
SpringAOP模块
 在AOP模块中,Spring对面向切面编程提供了丰富的支持,这个模块是Spring应用系统中开发切面的基础,与DI一样 AOP可以帮助应用对象解偶,可以将遍布系统的关注点从他们的应用的对象中解偶出来
数据访问与集成
   使用JDBC编写代码通常会导致大量的样板式代码,例如获得数据库连接、创建语句、处理结 果集到最后关闭数据库连接。Spring的JDBC和DAO(Data Access Object)模块抽象了这些样板 式代码,使我们的数据库代码变得简单明了,还可以避免因为关闭数据库资源失败而引发的问题 该模块在多种数据库服务的错误信息之上构建了一个语义丰富的异常层,以后我们再 也不需要解释那些隐晦专有的SQL错误信息了!   对于那些更喜欢ORM(Object-Relational Mapping)工具而不愿意直接使用JDBC的开发者, Spring提供了ORM模块。Spring的ORM模块建立在对DAO的支持之上,并为多个ORM框架提 供了一种构建DAO的简便方式。Spring没有尝试去创建自己的ORM解决方案,而是对许多流 行的ORM框架进行了集成,包括Hibernate、Java Persisternce API、Java Data Object和iBATIS SQL Maps。Spring的事务管理支持所有的ORM框架以及JDBC。   本模块同样包含了在JMS(Java Message Service)之上构建的Spring抽象层,它会使用消息以异 步的方式与其他应用集成。从Spring 3.0开始,本模块还包含对象到XML映射的特性,它最初是Spring Web Service项目的一部分。   除此之外,本模块会使用Spring AOP模块为Spring应用中的对象提供事务管理服务。
Web与远程调用
   MVC(Model-View-Controller)模式是一种普遍被接受的构建Web应用的方法,它可以帮助用户 将界面逻辑与应用逻辑分离。Java从来不缺少MVC框架,Apache的Struts、JSF、WebWork和 Tapestry都是可选的最流行的MVC框架。   除了面向用户的Web应用,该模块还提供了多种构建与其他应用交互的远程调用方案。Spring 远程调用功能集成了RMI(Remote Method Invocation)、Hessian、Burlap、JAX-WS,同时Spring还 自带了一个远程调用框架:HTTP invoker。Spring还提供了暴露和使用REST API的良好支持。
Instrumentation
   Spring的Instrumentation模块提供了为JVM添加代理(agent)的功能。具体来讲,它为Tomcat提供 了一个织入代理,能够为Tomcat传递类文件,就像这些文件是被类加载器加载的一样。   如果这听起来有点难以理解,不必对此过于担心。这个模块所提供的Instrumentation使用场景 非常有限,在本书中,我们不会介绍该模块。
测试
   鉴于开发者自测的重要性,Spring提供了测试模块以致力于Spring应用的测试。 通过该模块,你会发现Spring为使用JNDI、Servlet和Portlet编写单元测试提供了一系列的mock对象实现 对于集成测试,该模块为加载Spring应用上下文中的bean集合以及与Spring上下文 中的bean进行交互提供了支持。
原创粉丝点击