Spring Framework 参考文档(目录)

算法星云
• 阅读 2291

Spring Framework 参考文档

版本 5.1.9.RELEASE

Spring Framework为现代基于java的企业应用程序提供了全面的编程和配置模型 — 在任何类型的部署平台上。

Spring的一个关键元素是应用程序级别的基础设施支持:Spring关注企业应用程序的“管道”,这样团队就可以专注于应用程序级别的业务逻辑,而不必与特定的部署环境有不必要的联系。

新内容、升级说明、支持的版本和其他主题,独立于发布节奏,在项目的Github Wiki上进行外部维护。

有关最低要求的信息、从早期版本升级和支持策略的指导,请查看Spring Framework的官方wiki页面

概述

核心技术

参考文档的这一部分涵盖了Spring Framework中不可或缺的所有技术。

其中最重要的是Spring Framework的控制反转(IoC)容器,对Spring Framework的IoC容器进行彻底的处理之后,紧接着是对Spring面向切面编程(AOP)技术的全面覆盖。Spring Framework有自己的AOP框架,它在概念上很容易理解,并且成功地解决了Java企业编程中AOP需求的80%最佳点。

本文还介绍了Spring与AspectJ的集成(目前,Java企业空间中最丰富的 - 就特性而言 - 当然也是最成熟的AOP实现)。

IoC容器

本章讨论Spring的反转控制(IoC)容器。

  • Spring IoC容器和bean介绍
  • 容器概述
  • Bean概述
  • 依赖关系
  • Bean作用域
  • 自定义Bean的性质
  • Bean定义继承
  • 容器扩展点
  • 基于注解的容器配置
  • 类路径扫描和管理组件
  • 使用JSR 330标准注解
  • 基于Java的容器配置
  • 环境抽象
  • 注册LoadTimeWeaver
  • ApplicationContext的额外功能
  • BeanFactory

Resources

  • Resource介绍
  • Resource接口
  • 内置的Resource实现
  • ResourceLoader
  • ResourceLoaderAware接口
  • Resources作为依赖项
  • 应用程序上下文和Resource路径

验证、数据绑定和类型转换

  • 使用Spring的Validator接口进行验证
  • 将代码解析为错误消息
  • Bean操作和BeanWrapper
  • Spring类型转换
  • Spring字段格式
  • 配置全局日期和时间格式
  • Spring Validation

Spring表达式语言(SpEL)

  • 计算
  • Bean定义中的表达式
  • 语言参考
  • 示例中的类使用

Spring面向切面编程

  • AOP概念
  • Spring AOP的功能和目标
  • AOP代理
  • @AspectJ支持
  • 基于模式的AOP支持
  • 选择要使用哪种AOP声明样式
  • 混合切面类型
  • 代理机制
  • @AspectJ代理的编程创建
  • 在Spring应用程序中使用AspectJ

Spring AOP API

  • Spring中的Pointcut API
  • Spring中的Advice API
  • Spring中的Advisor API
  • 使用ProxyFactoryBean创建AOP代理
  • 简洁的代理的定义
  • 使用ProxyFactory以编程方式创建AOP代理
  • 操纵Advised对象
  • 使用“自动代理”功能
  • 使用TargetSource实现
  • 定义新的Advice类型

Null安全

  • Null安全

数据缓冲区和编解码器

  • DataBufferFactory
  • DataBuffer
  • PooledDataBuffer
  • DataBufferUtils
  • Codecs
  • 使用DataBuffer

附录

  • XML模式
  • XML模式制作

测试

本章介绍Spring对集成测试的支持以及单元测试的最佳实践,Spring团队提倡测试驱动开发(TDD),Spring团队发现,正确使用控制反转(IoC)确实使单元测试和集成测试更容易(在这种情况下,在类上存在setter方法和适当的构造函数使它们更容易在测试中连接在一起,而无需设置服务定位器注册中心和类似的结构)。

测试是企业软件开发的一个组成部分,本章重点讨论IoC原理对单元测试的增值,以及Spring Framework对集成测试的支持的好处(企业中对测试的彻底处理超出了本参考手册的范围)。

单元测试

集成测试

进一步的资源

有关测试的更多信息,请参阅以下参考资料:

  • JUnit:“面向编程人员的Java测试框架”,被Spring Framework用在测试套件中。
  • TestNG:一个受JUnit启发的测试框架,增加了对注解、测试组、数据驱动测试、分布式测试和其他特性的支持。

数据访问

参考文档的这一部分涉及数据访问以及数据访问层和业务或服务层之间的交互。

本文详细介绍了Spring的全面事务管理支持,然后全面介绍了Spring Framework所集成的各种数据访问框架和技术。

事务管理

DAO支持

使用JDBC访问数据

对象关系映射(ORM)数据访问

使用Object-XML映射器来编组XML

附录

  • XML模式

Servlet栈上的Web

本部分文档涵盖了对构建在Servlet API上并部署到Servlet容器的Servlet堆栈web应用程序的支持,各个章节包括Spring MVC、视图技术、CORS支持和WebSocket支持,有关反应堆栈web应用程序,请参阅反应堆栈上的web。

Spring Web MVC

REST客户端

测试

WebSockets

参考文档的这一部分包括对Servlet堆栈的支持、WebSocket消息传递(包括原始WebSocket交互)、通过SockJS进行WebSocket模拟以及通过STOMP作为WebSocket子协议的发布-订阅消息传递。

其他Web框架

集成

参考文档的这一部分涵盖了Spring Framework与许多Java EE(以及相关的)技术的集成。

使用Spring的远程调用和Web服务

企业JavaBeans(EJB)集成

JMS(Java消息服务)

JMX

JCA CCI

Email

任务执行和调度

缓存抽象

从3.1版开始,Spring Framework就支持向现有Spring应用程序透明地添加缓存,与事务支持类似,缓存抽象允许一致地使用各种缓存解决方案,对代码的影响最小。

从Spring 4.1开始,在JSR-107注解和更多定制选项的支持下,缓存抽象得到了显著扩展。

附录

点赞
收藏
评论区
推荐文章
一文搞懂Spring依赖注入
前言提起Spring,大家肯定不陌生,它是每一个Java开发者绕不过去的坎。Spring框架为基于java的企业应用程序提供了一整套解决方案
Easter79 Easter79
4年前
SpringBoot2.0高级案例(12):整合 SpringSecurity 框架,实现用户权限安全管理
一、Security简介1、基础概念SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架。它提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spring的IOC,DI,AOP(面向切面编程)功能,为应用系统提供声明式的安全访问控制功
Easter79 Easter79
4年前
Spring面试题总结
1、Spring是什么?Spring是一个轻量级的IOC和AOP容器框架。是为Java应用程序提供基础性服务的一套框架,目的是用于简化企业应用程序的开发,它使得开发者只需要关心业务需求。常见的配置方式有三种:基于XML的配置、基于注解的配置、基于java的配置。主要由以下几个模块组成:SpringCore:核心类库,提供IOC服务;
Stella981 Stella981
4年前
Spring Boot WebFlux
背景大家都知道,SpringFramework是Java/Spring应用程序跨平台开发框架,也是JavaEE(JavaEnterpriseEdition)轻量级框架,其Spring平台为Java开发者提供了全面的基础设施支持,虽然Spring基础组件的代码是轻量级,但其配置依旧是重量级的。那是怎么解决了呢?当然
Stella981 Stella981
4年前
SpringBoot2.0高级案例(12):整合 SpringSecurity 框架,实现用户权限安全管理
一、Security简介1、基础概念SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架。它提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spring的IOC,DI,AOP(面向切面编程)功能,为应用系统提供声明式的安全访问控制功
Stella981 Stella981
4年前
Spring 学习笔记(一):Spring 入门
1Spring简介Spring是一个轻量级Java开发框架,最早由RodJohnson创建,目的是为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题,是一个分层的JavaSE/EEfullstack轻量级开源框架,为开发Java应用程序提供全面的基础架构支持。2Spring体系结构
Wesley13 Wesley13
4年前
Java Spring 教程网站推荐
Spring是一个企业Java框架。它旨在简化JavaEE开发并提高开发人员的生产力。Spring利用控制反转和依赖注入来促进良好的软件编码实践并缩短开发时间。Spring框架是Java平台的应用程序框架和控制容器的倒置。该框架的核心功能可以被任何Java应用程序使用。尽管该框架没有强加任何特定的编程模型,但是它已在Java社区中流行起来,它包括提供各种
Easter79 Easter79
4年前
Spring知识点提炼
1\.Spring框架的作用清理:Spring是轻量级的,基本的版本大小为2MB控制反转:Spring通过控制反转实现了松散耦合,对象们给出它们的依赖,而不是创建或查找依赖的对象们。面向切面的编程AOP:Spring支持面向切面的编程,并且把应用业务逻辑和系统服务分开。容器:Spring包含并管理应用中对象
小万哥 小万哥
2年前
Spring 框架模块深度解析:核心容器、数据访问、Web 层与其他关键模块
Spring可能成为您的所有企业应用程序的一站式商店。但是,Spring是模块化的,允许您挑选适用于您的模块,而无需引入其他模块。下面的部分提供了SpringFramework中所有可用模块的详细信息。SpringFramework提供了大约20个模块,可