核心容器:Core、Beans、Context、EL模块

1、     Core模块:封装了框架依赖的最底层部分,包括访问资源、类型转换及一些常用工具类

2、     Beans模块:提供了框架的基础部分,包括反转控制和依赖注入。其中BeanFactory是容器的核心,本质是“工厂设计模式”的实现,而且无需编程实现“单例设计模式”,单例完全由容器控制,而且提倡面向接口编程,而非面向实现编程;所有应用程序对象以及对象间关系由框架管理,从而真正的把维护对象之间的依赖关系从程序逻辑中提取出来,所有这些依赖都由BeanFactory来维护。

3、     Context模块:以Core和Bean为基础,集成Beans模块功能并添加资源绑定,数据验证,国际化,JavaEE支持,容器生命周期,事件传播等;核心接口是ApplicationContext;

4、     EL模块:提供强大的表达式语言支持,支持访问和修改属性值,方法调用,支持访问及修改数组、容器和索引器。命名变量,支持算数和逻辑运算,支持从Spring容器获取Bean,它也支持列表投影,选择和一般的列表聚合。

面向切面:AOP与Aspects模块

5、     AOP模块:Spring AOP模块提供了符合AOP Alliance规范的面向切面的编程实现,提供比如日志记录、权限控制、性能统计等通用功能和业务逻辑分离的技术,并且能够动态的把这些功能添加到需要的代码中;这样各司其职,降低了业务逻辑和通用功能的耦合。

6、     Aspects模块:提供了对AspectJ的集成,AspectJ提供了比Spring AOP更强大的功能

数据访问/集成模块:包含JDBC、ORM、OXM、JMS和Transactions

7、     Transactions模块:该模块用于Spring管理事务,只要是Spring管理对象都能得到Spring管理事务的好处,无需在代码中进行事务的控制了,而且支持编程和声明型事务管理。

8、     JDBC模块:提供了一个JDBC的样例模板,使用这些模板能消除传统冗长的JDBC编码还有必须的事物控制,而且能享受到Spring管理事务的好处。

9、     ORM模块:提供与流行的“对象-关系”映射框架的无缝集成,包括Hibernate、JPA、Ibatiss等。而且可以使用Spring管理,无需额外控制事务。

10、  OXM模块:提供了一个对Object/XML映射实现,将Java对象映射成XML数据,或者将XML数据映射成Java对象,Object/XML映射实现包括JAXB,Castor,XMLBeans和XStream

11、  JMS模块:用于JMS,提供一套“消息生产者,消息消费者”模板用于更加简单的使用JMS,JMS用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。

Web/Remoting模板:包含Web、Web-Servlet、Web-Struts、Web-Prolet模板

12、  Web模板:提供了基础的web功能,例如多文件上传,集成IOC容器,远程过程访问(EMI、Hessian、Burlap)以及Web Service支持,并提供一个RestTemplate类来提供方便的Restful services访问

13、  Web-Servlet模块:提供了一个Spring MVC Web框架实现,Spring MVC框架提供了基于注解的请求资源注入,更简单的数据绑定,数据验证等一套非常容易的JSP标签,完全无缝与Spring其他技术协作。

14、  Web-Struts模块:提供了与Struts无缝集成,Struts1.x 和Struts2.x都支持

测试模块:Test模块

15、  Test模块: Spring支持Junit和TestNG测试框架,而且还额外提供了一些基于Spring的测试功能,比如在测试Web框架时,模拟Http请求的功能

Spring---介绍的更多相关文章

  1. 一) Spring 介绍、IOC控制反转思想与DI依赖注入

    一.spring介绍1.IOC反转控制思想(Inversion of Control)与DI依赖注入(Dependency Injection)2.AOP面向切面的编程思想与动态代理3.作用:项目的粘 ...

  2. Spring介绍

    Spring介绍 Spring的核心是一个轻量级(Lightweight)的容器(Container),它是实现IoC(Inversion of Control)容器和非入侵性(No intrusiv ...

  3. Spring介绍及配置(XML文件配置和注解配置)

    本节内容: Spring介绍 Spring搭建 Spring概念 Spring配置讲解 使用注解配置Spring 一.Spring介绍 1. 什么是Spring Spring是一个开源框架,Sprin ...

  4. 【转载】Spring介绍之二

    Spring框架,是进行对象管理,对象关联,解耦的一个中间层框架.SSH(Struts+Spring+Hibernate)三大Spring在中间就起着一个承上启下的作用.好,首先我们先来看一下Spri ...

  5. 学习 Spring (一) Spring 介绍

    Spring入门篇 学习笔记 Spring 是什么 Spring 是一个轻量级的 IoC (控制反转)和 AOP (面向切面)的容器框架 框架与类库的区别 框架一般是封装了逻辑.高内聚的,类库则是松散 ...

  6. Spring(一)Spring介绍

    Spring是一个开源框架. Spring是一个分层的JavaSE/EE 一站式轻量级框架. Spring在JavaEE三层架构中,每一层都提供不同的解决技术. -Web层:SpringMVC. -S ...

  7. spring 学习 一 spring 介绍

    Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的.框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架. Spring ...

  8. Spring学习笔记(一)—— Spring介绍及入门案例

    一.Spring概述 1.1 Spring是什么 Spring是一个开源框架,是于2003年兴起的一个轻量级的Java开发框架, 由Rod Johnson 在其著作<Expert one on ...

  9. Java架构师之路 Spring学习笔记(一) Spring介绍

    前言 这是一篇原创的Spring学习笔记.主要记录我学习Spring4.0的过程.本人有四年的Java Web开发经验,最近在面试中遇到面试官总会问一些简单但我不会的Java问题,让我觉得有必要重新审 ...

  10. Java——Spring介绍

    spring 是一个开源框架,是为了解决企业应用程序开发. 功能如下:1.目的:解决企业应用开发的复杂性.2.功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能.3.范围:任何Ja ...

随机推荐

  1. python基本数据类型list,tuple,set,dict用法以及遍历方法

    1.list类型 类似于java的list类型,数据集合,可以追加元素与删除元素. 遍历list可以用下标进行遍历,也可以用迭代器遍历list集合 建立list的时候用[]括号 import sys ...

  2. Android快速入门(转自 农民伯伯: http://www.cnblogs.com/over140/)

    前言 这是前段时间用于公司Android入门培训的资料,学习Android三周时间收集整理的,时间仓促,希望能对像我这样还没入门就直接上项目的人一点帮助  :) 声明 欢迎转载,但请保留文章原始出处: ...

  3. 关于Java代码优化的35条建议

    代码优化,一个很重要的课题.可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是, ...

  4. Mac 终端自动补全忽略大小写

    打开终端,输入:nano .inputrc 在里面粘贴上以下语句: set completion-ignore-case onset show-all-if-ambiguous onTAB: menu ...

  5. ASP.NET中的状态保持

    1.ASP.NET中的状态保持解决方案 2.常用的状态报保持方式 view state  ASP.Net的.aspx页面特有,页面级的,就是在页面上的一个隐藏域中保存客户端单独使用的数据的一种方式(b ...

  6. input只读属性 设置和移除 选择数字

    设置只读属性 $('#stage').attr("readonly", "readonly"); 移除 只读属性  $("input").r ...

  7. 动手编写TCP服务器系列之一:日志文件

    前言 在几个月之前,笔者想自己实现一个性能比较良好的基于tcp的服务器.于是断断续续写了个把月,因为还需要找工,还有论文什么的.拖了这么久.现在开辟这样的一个博客,我想记录下自己的思路,也和大家分享自 ...

  8. golang之终端操作,文件操作

    终端操作 操作终端相关的文件句柄常量os.Stdin:标准输入os.Stdout:标准输出os.Stderr:标准错误输出 关于终端操作的代码例子: package main import " ...

  9. HDRtools-OpenExr

    转:http://blog.csdn.net/lqhbupt/article/details/7917764 OpenEXR是由工业光魔(Industrial Light& Magic)开发的 ...

  10. JavaWeb知识回顾-使用IDEA开发一个servlet.

    刚刚开始学习使用IDEA进行开发,好多都不会,本来想直接导入一个eclipse项目,但是出现了好多错误,一时不知道怎么修改,所以就从最基本的servlet开始着手,慢慢熟悉这个工具,下面是使用IDEA ...