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多平台发布

相关推荐
天河归来7 小时前
第三方接口不稳定,如何让核心任务继续完成
java·大数据
Knight_AL7 小时前
Java 文件下载时文件名中的 `#` 被转换成 `%23`?一次 URL 编码与解码问题排查
java·开发语言
砚底藏山河8 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
猿究院_夏燊9 小时前
MySQL 的四种隔离级别
java·数据库·mysql
码流子10 小时前
移动收费怎么做?手持终端+App+收费中心的架构实践
java·开发语言·架构
霸道流氓气质10 小时前
AI 流式对话与实时聊天平台:SSE 解码竞态、有状态会话隔离与背压取消的 Vue3 + Spring AI 生产级实战
java·人工智能·spring
云创智城-yuncitys10 小时前
YunParking 4.0:JDK 17 与 Spring Boot 3.2 的停车云升级
java·开发语言·spring boot
文丑颜不良啊10 小时前
LeetCode1661~1680题目解析
java·leetcode
子非鱼@Itfuture10 小时前
关于前后端联调中登录状态/登录信息失效?
java·前端
郭小李10 小时前
openFeign入门
java·开发语言·前端