Spring体系结构

Spring 是模块化的,可分为4大部分,约20个模块。部分模块可以在自己的项目中按需使用。
在这里插入图片描述

核心部分

核心容器由spring-core、spring-beans、spring-context、spring-express等模块组成。

  1. spring-core:框架的基本组成部分,包括控制反转(IoC)的实现
  2. spring-beans:提供BeanFactory,工厂模式的实现
  3. spring-context:给spring提供一个运行时环境,用以保存各个对象的状态
  4. spring-express:提供了强大的表达式语言,用于在运行时查询和操作对象图。支持使用若干种方式从Spring的IoC容器中检索对象、列表的投影、选择以及聚合,这若干种方法包括:set和get属性值、属性赋值、方法调用、访问数组集合及索引内容、逻辑算数运算、命名变量、名字等。

数据访问

数据访问层包括JDBC、对象关系映射(ORM)、对象XML映射(OXM)、java消息服务(Java Message Service、JMS)、事务处理模块(Transactions)

  1. JDBC:JDBC抽象层
  2. ORM:对流行的对象关系映射API的集成,包括JPA、JDO和Hibernate等,通过此模块可以让这些ORM框架和Spring的其他功能整合
  3. OXM:实现了XML映射的功能,提供了对OXM的支持,比如JAXB、XML Beans等。
  4. JMS:包含了生产和消费消息的功能,从spring4.1开始,集成了spring-message模块
  5. 事务管理:为实现特殊接口及所有POJO支持编程式和声明式事务管理(注:编程式事务需要自己写 beginTransaction()、commit()、rollback() 等事务管理方法,声明式事务是通过注解或配置由 spring 自动处理,编程式事务力度更细)

Web

web层是由Web、Web-MVC、Web-Socket和Web-Portlet组成

  1. Web:提供面向 web 的基本功能和面向 web 的应用上下文
  2. Web-MVC:为web应用提供了模型使用控制和REST Web服务的实现。
  3. Web-Socket:为 WebSocket-based 提供了支持,而且在 web 应用程序中提供了客户端和服务器端之间通信的两种方式
  4. Web-Portlet:提供了用于 Portlet 环境的 MVC 实现,并反映了 spring-webmvc 模块的功能。

其他

  1. AOP 模块提供了面向方面(切面)的编程实现,允许你定义方法拦截器和切入点对代码进行干净地解耦,从而使实现功能的代码彻底的解耦出来。使用源码级的元数据,可以用类似于.Net属性的方式合并行为信息到代码中。
  2. Aspects 模块提供了与 AspectJ 的集成,这是一个功能强大且成熟的面向切面编程(AOP)框架。
  3. 测试模块支持对具有 JUnit 或 TestNG 框架的 Spring 组件的测试。

参考文献

  1. w3c教学
  2. spring核心组件详解
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值