Spring框架教程

时间:2020-01-09 10:44:34  来源:igfitidea点击:

Spring框架是一个轻量级的应用程序平台,为Java EE应用程序提供基础结构支持。尽管其依赖注入和AOP Spring的核心概念处理了基础结构,所以我们可以专注于应用程序。

Spring是轻量级的,使我们能够从"普通的Java对象"(POJO)构建应用程序,并将企业服务无创地注入POJO。

Spring框架模块

Spring框架在设计上是模块化的,这种分层体系结构是其最大的设计优势之一。从在资源受限的设备上运行的嵌入式应用程序到使用Spring的事务管理功能和Web框架集成的成熟的企业级应用程序,这种模块化设计使Spring在许多情况下成为合理的选择。

Spring框架包含组织为约20个模块的功能。这些模块分为核心容器,数据访问/集成,Web,AOP(面向方面的编程),检测,消息传递和测试,如下图所示。
1.核心容器由spring-core,spring-beans,spring-context,spring-context-support和spring-expression(Spring表达式语言)模块组成。

spring-core和spring-beans是Spring框架的基础,提供了IoC和依赖注入功能。
spring-context建立在spring-core和spring-beans的特性之上,并增加了对国际化,事件传播,资源加载和上下文的透明创建的支持。
spring-expression模块提供了一种功能强大的表达式语言,用于在运行时查询和操作对象图。

  1. spring-aop模块提供面向方面的编程,以分离实现应与主要功能分开的功能的代码。
    spring-aspects模块提供了与AspectJ的集成。
    spring-instrument模块提供了在某些应用程序服务器中使用的类仪表支持和类加载器实现。
    spring-messaging模块为基于消息的应用程序提供抽象。

3.数据访问/集成层由JDBC,ORM,OXM,JMS和事务模块组成。
spring-jdbc模块提供了一个JDBC抽象层。
spring-orm模块为对象关系映射API(包括JPA和Hibernate)提供了集成层。
spring-tx模块支持编程和声明式事务管理。
spring-oxm模块提供了一个抽象层,该抽象层支持对象/ XML映射实现,例如JAXB,Castor,JiBX和XStream。
spring-jms模块(Java Messaging Service)提供了用于生成和使用消息的功能。

  1. Web层由spring-web,spring-webmvc,spring-webflux和spring-websocket模块组成。

spring-web模块提供了基本的面向Web的集成功能
spring-webmvc模块包含Spring的模型视图控制器(MVC)和针对Web应用程序的REST Web服务实现。
spring-webflux模块为Spring带来了反应式编程。
spring-websocket模块提供了构建交互式Web应用程序的功能。