Spring 概述

原创 2013年12月05日 01:35:57

企业级应用开发总是涉及方方面,Spring 框架是一个轻量级的解决方案,可以把Spring框架看成一个标准的开发组件.Spring框架被设计成无侵入的方式,即企业应用可以根据需要选择Spring框架中必要的组件,而忽略其它部分,以做到最小范围依赖Spring 框架.

Spring框架是由20个模块功能组成分别是:Core Container(核心容器),    Data Access/Integration(数据访问/集成),     Wep,AOP(面向切面编程),  Instrumentation(仪器仪表),Test


如图所示:

   


1.核心容器:

        核心容器的核心由,bean类,上下文,和表达语言模块组成.

   

       core和beans类模块提供的框架的基本组成部分,包括IOC(控制反转)和依赖注入的特性。BeanFactory是一个复杂的工厂

模式实现方式。它不再需要针对程序性,并允许您配置和规格的依赖你的实际程序逻辑解耦。

    content模块建立在坚实的基础,提供core和beans模块:它是一种手段要访问一个框架式的方式,类似于一个JNDI注册对象。context模块
继承Beans模式其特征并增加了对国际化的支持(使用,例如,资源束),事件传播,资源加载,和透明的情境创设的,
例如,一个servlet容器。上下文模块还支持Java EE的特点,如EJB,JMX,和基本的远程处理。ApplicationContext接口是context模块的焦点

   Expression Language模块提供了一个强大的表达语言的查询和在运行时操纵一个对象图。它的统一表达式语言的一个扩展(统一EL)在JSP 2.1规范中指定。语言支持获取和设置属性值,财产的分配,方法调用,访问数组的情况下,收集和索引器,逻辑和算术运算符,命名变量,并从Spring的IOC的名字对象检索容器。它还支持列表投影和选择以及常见的列表聚合。

2.数据库访问/集成

     数据访问和集成由:JDBC,ORM,OXM,JMS和Transaction模块组成。

   JDBC模块提供了一个抽象层,不需要冗长的JDBC编码和数据库供应商特定的错误代码解析。

   ORM模块提供了流行的对象关系映射APIs集成层,包括JPA,JDO,Hibernate和iBatis。使用ORM包,您可以使用所有这些O / r-mapping框架,结合所有的Spring提供的其他特性,如简单的声明式事务前面提到的管理特征。

  OXM模块提供了支持对象或XML映射实现一个抽象层JAXB,Castor,XMLBeans,JiBX和XStream。

  在Java消息服务(JMS)模块包含用于生产和消费信息的特征.

  Transaction模块支持类的程序和声明式事务管理实行特殊的接口和所有您的POJOs(普通的Java对象)。

3.Web

  Web层由Web,Web-servlet,Web-Struts,和网络接入模块组成。

  Spring的web模块提供了基本的面向Web的集成功能,如多文件上传功能和初始化的IOC容器使用servlet侦听器和一个面向网络应用上下文。它也包含了Spring的远程支持网站相关的部分。

   Web servlet模块包含Spring的 模型-视图-控制器(MVC)实现Web应用。Spring的MVC框架提供了域模型代码之间的一个干净的分离Web窗体,并整合了Spring框架的其他功能。

  Web Struts模块包含用于在集成一个经典的Struts Web层支持类Spring的应用。请注意,这种支持是现在的Spring 3.0。考虑迁移你的Struts 2. 0和Spring集成或一个Spring MVC方案中的应用。

  Web-portlet 模块提供了MVC实现用于portlet环境和反射特性的Web servlet模块。

 

4.,AOP and Instrumentation

    Spring的AOP模块提供了一个AOP联盟兼容的面向切面编程实现允许您定义,例如,拦截器和切入点解耦代码实现的功能,应该分开。使用源代码级的元数据功能,你也可以将行为信息切入到你的代码中

  切面模块提供与AspectJ的整合。

   Instrumentation模块提供支持和类加载器实现类仪表用于某些应用程序服务器。

5.Test

 Test模块支持与TestNG测试JUnit或Spring组件。它提供了一致的加载Spring ApplicationContexts和这些上下文缓存。它还提供了模拟对象你可以使用隔离测试你的代码


spring 使用场景:

      所描述的构建模块前面使Spring时合理的选择在许多情况下,从简单的Applet
要使用Spring的事务管理功能和Web成熟的的企业应用
框架集成。



                                                                                  典型的spring 成熟web应用

      


       Spring的声明式事务管理功能,使Web应用程序完全事务,只是因为如果你使用EJB容器管理的事务的那样。您的所有自定义的业务逻辑可以
实现简单的POJO和Spring的IoC容器管理。其他服务包括用于发送电子邮件和验证,它是独立的web层,它可以让你选择的支持在哪里执行校验规则。 Spring的ORM支持集成了JPA,Hibernate中,JDO和iBatis的,例如,使用Hibernate的时候,您可以继续使用现有的映射文件和标准的Hibernate SessionFactory的配置。表控制器无缝集成web层

与域模型,不再需要该变换的ActionForm或者其他类的HTTP参数值,为您的域模型。



                                                                      使用第三方的Web框架Spring中间层


      有时情况不允许你彻底地切换到一个不同的框架。Spring的框架不强迫你在使用它的一切,它不是一个全有或全无的解决方案。现有建立与WebWork的前端,Struts中,Tapestry或其他的UI框架可以用Springbased集成中间层,它允许你使用Spring的事务特性。你只需要要连接您使用一个ApplicationContext和使用的WebApplicationContext来集成业务逻辑你的web层。


 


                                                                           远程使用场景


        当你需要通过Web服务来访问现有的代码,你可以使用Spring提供的Hessian-,Burlap-,RMI或JaxRpcProxyFactory类。启用远程访问现有应用程序并不难。



                                                       EJBs - 包装现有的 POJOs

    Spring框架还提供了企业级JavaBeans接入和抽象层,使您能够重用现有的POJO并将他们包装在无状态会话bean用于可扩展的,故障安全,可能需要声明式安全Web应用程序。





Spring 框架概述(一)

Spring 框架参考文档(一) 文章摘自:http://spring.cndocs.tk/index.html Part I. Spring 框架概述 Spring框架是...
  • xiangjai
  • xiangjai
  • 2016年12月31日 10:36
  • 1159

Spring的概述

Spring的概述什么是Spring据度娘所载: Spring是一个开源框架,Spring是于2003年兴起的一个轻量级的Java开发框架,由Rod Johnson创建。简单来说,Spring是一...
  • yerenyuan_pku
  • yerenyuan_pku
  • 2017年04月08日 00:27
  • 1922

Spring mvc基本概述

Spring mvc主要是围绕DispatcherServlet这个核心控制器来开展的,DispatcherServlet是Spring mvc的总导演、总策划,它负责截获请求并且将其分发给对应的处理...
  • u012832964
  • u012832964
  • 2016年07月22日 23:08
  • 1103

第1部分:Spring框架概述

Spring框架是一个轻量级的解决方案和一个潜在的一站式构建企业级应用程序. 然而, Spring 是模块化的,它允许你只使用你需要的哪些模块, 无需引入不必要的。你可以使用IoC容器,在其上使用St...
  • zhoudaxia
  • zhoudaxia
  • 2015年04月13日 20:52
  • 3979

spring定时器简单介绍

集群配置参考 1、核心概念 1、scheduler是一个计划调度器容器,容器里面可以盛放众多的JobDetail和trigger,当容器启动后,里面的每个JobDetail都会根据trigger按部就...
  • u013083576
  • u013083576
  • 2016年07月06日 16:28
  • 546

spring3.x注解自动注入

一、各种注解方式 1.@Autowired注解(不推荐使用,建议使用@Resource) @Autowired可以对成员变量、方法和构造函数进行标注,来完成自动装配的工作。@Autowir...
  • z_Dendy
  • z_Dendy
  • 2013年05月30日 19:59
  • 667

【第九章】 Spring的事务 之 9.1 数据库事务概述 9.2 事务管理器——跟我学spring3

9.1  数据库事务概述 事务首先是一系列操作组成的工作单元,该工作单元内的操作是不可分割的,即要么所有操作都做,要么所有操作都不做,这就是事务。   事务必需满足ACID(原子性、...
  • huazaichang
  • huazaichang
  • 2013年06月24日 08:36
  • 583

Spring框架(一)简单介绍

Spring是一个轻量级框架,可以一站式构建你的企业级应用。 Spring作为Javaee开发技能不可或缺的一项,是每一个做Javaee开发的人必须要掌握的。现在最新的Spring已经到5.0的体验版...
  • muyi_amen
  • muyi_amen
  • 2016年12月28日 18:06
  • 492

(一)Spring就是这样- Spring概述

Spring概述 本节介绍了什么是Spring,Spring是一个容器,通过控制反转和依赖注入来实现高内聚、低耦合的应用,除此之外它可以整合很多第三方框架,它还提供AOP的能力,对数据库事务的管理尤其...
  • u012106290
  • u012106290
  • 2016年05月08日 10:28
  • 336

Spring(一)---Spring概述

(一)Spring是什么? · Spring 为简化企业级应用开发而生. 使用 Spring 可以使简单的 JavaBean 实现以前只有 EJB 才能实现的功能. · 具体描述 Spring...
  • bangbang414630491
  • bangbang414630491
  • 2017年12月11日 13:42
  • 13
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Spring 概述
举报原因:
原因补充:

(最多只允许输入30个字)