spring框架构成

spring框架构成

spring中集成了多个模块,包含有核心容器、数据访问、web、AOP等模块

核心容器包含有Spring Core、Spring Beans、Spring Context和EL模块

  • Spring Core

    spring的核心,提供Spring框架的基本功能。主要组件是BeanFactory,工厂模式的实现,使用IOC模式将应用程序的配置和依赖性规范与实际的应用程序代码分开

  • Spring Beans

    所有应用都要用到,包含了访问配置文件、创建和管理bean的一些相关类,以及进行IOC/DI操作相关的所有类

  • Spring Context

    Spring Context是Spring上下文,基于Core和Beans模块之上,提供了一种类似于JNDI注册器的框架式的对象访问方法,继承了Beans的特性,为spring核心提供了大量扩展,添加了对国际化、事件传播、资源加载和对Context的透明创建的支持,实际上是一个配置文件,由Spring框架提供上下文信息,ApplicationContext接口是Context模块的关键

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

  • Spring JDBC

    提供了一个JDBC抽象层

  • Spring ORM

    Spring框架插入了若干个ORM框架,从而提供了ORM的对象关系工具,包括JDO、Hibernate和iBatis。都遵从Spring的通用事务和DAO异常层次结构

  • Spring OXM

    提供了一个对Object/XML映射实现的抽象层,Object/XML映射实现包括JAXB、Castor、JiBX和XStream

  • Spring JMS

    包含了一些制造和消费消息的特性

  • Transaction

    支持编程和声明性的事务管理

Web模块为基于Web的应用程序提供了上下文,简化了处理大部分请求以及将请求参数绑定到域对象的工作,包含了Web、Web-Servlet、Web-Struts和Web-Porlet模块

  • Spring Web

    提供了基础的面向Web的集成特性

  • Web-Servlet

    包含了spring的MVC实现

    MVC框架是一个全功能构建Web应用程序的MVC实现。通过策略接口,MVC框架变成为高度可配置的,MVC容纳了大量视图技术,其中包括JSP、Velocity、Tiles、iText和POI。

  • Web-Struts

    提供了对Struts的支持,使得类在Spring应用中能够与一个典型的Struts Web层集成在一起,在spring3.0中被弃用

  • Web-Porlet

    提供了用于Portlet环境和Web-Servlet模块的MVC实现

AOP模块提供了一个符合AOP标准的面向切面编程的实现,通过配置管理特性,AOP模块直接将面向切面的编程功能集成到了Spring框架中。可以很容易的使Spring框架管理的任何对象支持AOP。如事务管理

  • Aspects

    提供了对AspectJ的集成支持

  • Instrumentation

    提供了class Instrumentation支持和classloader实现,使得可以在特定的应用服务器上使用

zhhll.icu/2020/框架/spr...

本文由mdnice多平台发布

相关推荐
冼紫菜2 小时前
【Spring Boot 多模块项目】@MapperScan失效、MapperScannerConfigurer 报错终极解决方案
java·开发语言·mybatis
还听珊瑚海吗2 小时前
基于SpringBoot的抽奖系统测试报告
java·spring boot·后端
练习本2 小时前
Android系统架构模式分析
android·java·架构·系统架构
心灵宝贝5 小时前
IDEA 安装 SpotBugs 插件超简单教程
java·macos·intellij-idea
幼稚诠释青春5 小时前
Java学习笔记(对象)
java·开发语言
小羊学伽瓦5 小时前
【Java基础】——JVM
java·jvm
老任与码5 小时前
Spring AI(2)—— 发送消息的API
java·人工智能·spring ai
*.✧屠苏隐遥(ノ◕ヮ◕)ノ*.✧6 小时前
MyBatis快速入门——实操
java·spring boot·spring·intellij-idea·mybatis·intellij idea
csdn_freak_dd6 小时前
查看单元测试覆盖率
java·单元测试
爱吃烤鸡翅的酸菜鱼6 小时前
【SpringMVC】详解cookie,session及实战
java·http·java-ee·intellij-idea