Spring 入门知识

-------------------------------------------------------------------------------------

Spring是什么?

  Spring是一种轻量级的非侵入式Java/JavaEE应用框架。

  (框架:能完成一定功能的半成品软件)

    Spring是一个Java/JavaEE应用框架

    Struts2是一个web应用框架

    Hibernate4是一个ORMapping应用框架

      这就说明Spring框架对Java/JavaEE开发的各个层次都应该有帮助

Spring能干什么?

  笼统说: Spring能作为一个超级的"粘合"平台,把很多的技术有效整合到一起 形成一个整体,以更好地解决问题,并使系统结构更优良、性能更出众。(体现体系结构设计的:组件式、装配式、插拔式、复用性、无侵入性等)

  具体点说,Spring能干的事情很多,最基本的有以下几条:

  1. Ioc/DI

  2. AOP

  3. 对JDBC和ORM的支持

  4. 对事物的支持

  5. 各种技术的整合

  6. Web应用框架(Spring MVC)

Spring有什么?

从上图可以看出Spring3总共包含了大约20个模块,这些模块又被组成成为: 核心容器模块、数据访问/集成部分、Web部分、AOP部分和测试支持 几个部分。  

核心容器部分(Core Container)又包含如下部分:

  1.Core和Beans模块: 提供了Spring最基础的功能,提供IoC和依赖注入特性。

  2.Context模块: 基于Core和Beans来构建,它提供了用一种框架风格的方式来访问对象,有些像JNDI注册表。Context封装包继承了beans包的功能,还增加了国际化(I18N)、事件传播、资源装载、以及透明创建上下文。

  3.Expression Language: 表达式语言模块,提供了在运行期间查询和操作对象图的能力。

数据访问/集成部分(Data Access/Integration)包含如下部分:

  1.JDBC模块: 提供对JDBC的抽象,它可消除冗长的JDBC编码和解析数据库厂商特有的错误代码。

  2.ORM模块: 提供了常用的"对象/关系" 映射APIs的集成层。其中包括:JAP、JDO、Hibernate、Ibatis。

  3.OXM模块: 提供一个支持Object和XML进行映射的抽象层,其中包括JAXB、Castor、XMLBeans、JiBX、XStream

  4.JMS模块: 提供一套"消息生产者、消费者"模板用于更加简单的使用JMS。

  5.Transaction模块: 支持程序通过简单声明性事务管理,只要是Spring管理对象都能得到Spring事务管理的好处。

Web部分包含如下部分

  1.Web模块: 提供了基础的Web功能。

  2.Web-Servlet模块:提供了Web应用的Model-View-Controller(MVC)实现

  3.Web-Struts模块:提供了对Struts集成的支持

  4.Web-Portlet模块:提供了在Portlet环境下的MVC实现

AOP部分包含如下:

  1.AOP模块: 提供了符合AOP联盟规范的面向方面的编程实现,可以定于如:方法拦截器和切入点。

  2.Aspects模块:提供了对AspectJ的集成

  3.Instrumenttation模块:提供了一些类级的工具支持和ClassLoader级的实现。

Test部分包含如下

  1.Test模块: 提供对使用JUnit和TestNG来测试Spring组件的支持,它提供一致的ApplicationContexts并缓存这些上下文,它还能提供mock对象,使得你可以独立的测试代码。

 

posted @ 2016-11-28 17:52  火爆泡菜  阅读(308)  评论(0编辑  收藏  举报