【Spring源码深度解析系列 】Spring整体架构

一、Spring的整体架构和模块

二、模块分类:

1、Core Container

Core Container包含有Core 、Beans、Context、和Expression  Language模块

2、Data Access/Integration

Data Access/Integration包含有JDBC、ORM、OXM、JMS和Transaction模块

3、Web

Web层包含了Web、Web-Servlet、Web-Struts、Web-Porlet模块。

4、AOP

5、Test

Test模块包括JUnit和TestNG对Spring组件进行测试

三、模块详解

  • 核心容器:核心容器提供 Spring 框架的基本功能。核心容器的主要组件是 BeanFactory,它是工厂模式的实现。BeanFactory 使用控制反转 (IOC) 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。
  • Spring 上下文:Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。
  • Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何对象支持 AOP。Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP,不用依赖 EJB 组件,就可以将声明性事务管理集成到应用程序中。
  • Spring DAO:JDBC DAO 抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。Spring DAO 的面向 JDBC 的异常遵从通用的 DAO 异常层次结构。
  • Spring ORM:Spring 框架插入了若干个 ORM 框架,从而提供了 ORM 的对象关系工具,其中包括 JDO、Hibernate 和 iBatis SQL Map。所有这些都遵从 Spring 的通用事务和 DAO 异常层次结构。
  • Spring Web 模块:Web 上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。所以,Spring 框架支持与 Jakarta Struts 的集成。Web 模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。
  • Spring MVC 框架:MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,其中包括 JSP、Velocity、Tiles、iText 和 POI。
时间: 2024-08-03 19:24:23

【Spring源码深度解析系列 】Spring整体架构的相关文章

Spring源码深度解析pdf

下载地址:网盘下载 <Spring源码深度解析>从核心实现和企业应用两个方面,由浅入深.由易到难地对Spring源码展开了系统的讲解,包括Spring的设计理念和整体架构.容器的基本实现.默认标签的解析.自定义标签的解析.bean的加载.容器的功能扩展.AOP.数据库连接JDBC.整合MyBatis.事务.SpringMVC.远程服务.Spring消息服务等内容. <Spring源码深度解析>不仅介绍了使用Spring框架开发项目必须掌握的核心概念,还指导读者如何使用Spring框

spring源码深度解析— IOC 之 开启 bean 的加载

概述 前面我们已经分析了spring对于xml配置文件的解析,将分析的信息组装成 BeanDefinition,并将其保存注册到相应的 BeanDefinitionRegistry 中.至此,Spring IOC 的初始化工作完成.接下来我们将对bean的加载进行探索. 之前系列文章: spring源码深度解析— IOC 之 容器的基本实现 spring源码深度解析— IOC 之 默认标签解析(上) spring源码深度解析— IOC 之 默认标签解析(下) spring源码深度解析— IOC

Spring源码深度解析第一天

其实第一天已经过去了,今天是第二天.iteye刚注册的小号就被封了.不论是它的失误还是他的失误总之我跟iteye是没有缘分了. 昨天基本没有进展.所以从今天开始说了.下面流水账开始了. <Spring源码深度解析>这本书没有pdf完整版是让我很失望的.如果有完整版即使看完了我也会选择买一本实体如果有用的话. 书中说从github下载源码.发现github没有想象中的简单易懂.还需要记忆很多命令才能玩得转.从github上获得了Spring源码后需要使用Gradle来编译成eclipse项目.g

SPRING技术内幕,Spring源码深度解析

 SPRING技术内幕,Spring源码深度解析 SPRING技术内幕:深入解析SPRING架构与设计原理(第2版)[带书签].pdf: http://www.t00y.com/file/78131650 Spring源码深度解析 [郝佳编著] sample.pdf: http://www.t00y.com/file/78131634 [jingshuishenliu.400gb.com]Spring Data.pdf: http://www.t00y.com/file/78256084 [

1.2 Spring环境搭建--Spring源码深度解析

前言: Spring 的源码已经从 svn 迁移到 GitHub.而且也改为基于 Gradle 的构建来构建项目.它取代了之前的 Ant+Ivy 系统,所以要构建 Spring 源码环境首先要安装 GitHub 以及 Gradle. 安装 GitHub Windows 系统对应的 GitHub 版本下载地址为: http://windows.github.com/.如图所示:

Spring 源码分析(一)--整体架构和环境搭建

本系统分析的spring源码版本为4.3.8. (一)整体架构 这些模块被分为以下几个部分 (1)Core Container Core容器(核心容器)包含Core,Beans,Context和Expression Language模块. Core模块(spring-core)主要包含Spring框架基本的核心工具类,Spring其它组件都要使用到这个包里的类,Core模块是其它组件的基本核心.好比演戏时需要使用到的道具. Beans模块(spring-beans)是所有应用到要使用到的bean

1.1 Spring的整体架构--Spring源码深度解析

前言: Spring 始于2003年,轻量级 Java 开源框架. Spring 是为了解决企业应用开发的复杂性而创建的,它使用基本的 JavaBean 来完成以前只可能由 EJB 完成的事情. Spring 的用途不仅限于服务器端的开发,从简单性.可测试性和松耦合的角度而言,任何 Java 应用都可以从 Spring 中受益. Spring 的整体架构: Spring 框架是一个分层架构,被分为大约20个模块. (1)Core Container Core Container (核心容器)包含

书籍摘要-spring 源码深度解析

第 1 章:spring 整体架构和环境搭建 spring 是分层的,主要分为网络层.数据库连接层.核心容器层. AOP 层和测试层. 核心容器中实现了 IOC 和依赖注入,方法是 BeanFactory.数据库连接层封装了 JDBC,兼容多种 ORM 框架. 第 2 章:容器的基本实现 DefaultListableBeanFactory 是加载 Bean 的核心类,XmlBeanFactory 继承了这个类. 分三步走,首先获取 XML 文件验证模式原理,然后将文件转换成 Document

Spring源码深度解析,事务案例讲解高级

Spring的整体架构Spring框架是一个分层架构,它包含一系列的功能要素,并被分为大约20个模块,如下图所示 这些模块被总结为以下几个部分: Core Container Core Container(核心容器)包含有Core.Beans.Context和Expression Language模块 Core和Beans模块是框架的基础部分,提供IoC(转控制)和依赖注入特性.这里的基础概念是BeanFactory,它提供对Factory模式的经典实现来消除对程序性单例模式的需要,并真正地允许