Spring框架特性及包下载(Java EE 学习笔记04)

server/2024/11/24 10:23:26/

1 Spring 5的新特性

Spring 5是Spring当前最新的版本,与历史版本对比,Spring 5对Spring核心框架进行了修订和更新,增加了很多新特性,如支持响应式编程等。

更新JDK基线

因为Spring 5代码库运行于JDK 8之上,所以Spring 5对JDK的最低要求是JDK 8,这可以促进Spring的使用者积极运用Java 8新特性。

修订核心框架

(1)基于JDK 8的反射增强,通过Spring 5提供的方法可以更加高效的对类或类的参数进行访问。

(2)核心的Spring接口提供了基于JDK 8的默认方法构建的选择性声明。

(3)用@Nullable和@NotNull注解来表明可为空的参数以及返回值,可以在编译时处理空值而不是在运行时抛出NullPointerExceptions异常。

更新核心容器

Spring 5支持候选组件索引作为类路径扫描的替代方案。从索引读取实体类,会使加载组件索引开销更低,因此,Spring程序的启动时间将会缩减。

支持响应式编程

响应式编程是另外一种编程风格,它专注于构建对事件做出响应的应用程序。Spring 5包含响应流和Reactor(ReactiveStream的Java实现),响应流和Reactor支撑了Spring自身的功能及相关API。

支持函数式Web框架

Spring 5提供了一个函数式Web框架。该框架使用函数式编程风格来定义端点,它引入了两个基本组件: HandlerFunction和RouterFunction。HandlerFunction 表示处理接收到的请求并生成响应函数;RouterFunction替代了@RequestMapping注解,用于将接收到的请求转发到处理函数。

支持Kotlin

Spring 5提供了对Kotlin语言的支持。Kotlin是一种支持函数式编程风格的面向对象语言,它运行在JVM之上,可以让代码更具有表现力、简洁性和可读性。有了对Kotlin的支持,开发人员可以进行深度的函数式Spring编程,这拓宽了Spring的应用领域。

提升测试功能

Spring 5完全支持Junit 5 Jupiter,因此可以使用Junit 5编写测试代码。除此之外,Spring 5还提供了在Spring TestContext Framework中进行并行测试的扩展。针对响应式编程模型,Spring 5引入了支持Spring webFlux的WebTestClient集成测试。

2 Spring 框架下载

Spring是一个独立的框架,它不需要依赖任何Web服务器或容器,既可以在独立的Java SE项目中使用,也可以在Java EE项目中使用。在使用Spring之前需要获取它的jar包,这些jar包可以在Spring官网下载。

下载地址:Spring-5.2.8.RELEASE

下载完成后,将文件解压得到一个名为spring-framework-5.2.8.RELEASE的文件夹。

Spring目录结构

docs文件夹:该文件夹下存放Spring的相关文档,包括开发指南、API参考文档。

libs文件夹:该文件夹下存放开发所需的jar包和源码。整个Spring框架由21个模块组成,libs目录下Spring为每个模块都提供了三个压缩包,因此,libs文件夹下一共有63个jar包。这63个jar包分为三类。

schema文件夹:该文件夹下存放Spring各种配置文件的XML Schema文档。

在使用Spring开发时,除了要使用自带的jar包外,Spring的核心容器还需要依赖commons.logging的jar包。该jar包可以通过commons的官方地址下载。下载完成后,会得到一个名为commons-logging-1.2-bin.zit的压缩包。将压缩包解压到自定义目录后,即可找到commons.logging对应jar包commons-logging-1.2.jar。

下篇介绍

下篇文章会通过一个简单的入门程序演示Spring框架的使用,要求在控制台打印“您好,欢迎使用Spring”,敬请期待。


http://www.ppmy.cn/server/144512.html

相关文章

【H2O2|全栈】JS进阶知识(九)ES6(5)

目录 前言 开篇语 准备工作 class类 概念 形式 直接继承 概念 优点 案例 重写 概念 案例 关于重载 结束语 前言 开篇语 本系列博客主要分享JavaScript的进阶语法知识,本期为第九期,依然围绕ES6的语法进行展开。 本期内容为&#xff1a…

唐诗三百首 9.9.0 | 简洁清爽的唐诗学习APP

唐诗三百首是一款专为学习中国古典诗歌设计的应用程序,收录了七十多位诗人三百多首唐诗,适合中小学生使用。软件无广告、无需登录,提供详细的注解、赏析和译文,支持离线使用,可按诗人或诗词内容搜索,分类清…

蓝桥杯每日真题 - 第18天

题目:(出差) 题目描述(13届 C&C B组E题) 解题思路: 问题分析 问题实质是一个带权图的最短路径问题,但路径的权重包含两个部分: 从当前城市到下一个城市的路程时间。 当前城市的…

0基础如何进入IT行业?

0基础如何进入IT行业? 你是否曾对IT行业的技术感到无从入手?是否想过借助这个高速发展的领域改变自己的职业轨迹?在这篇文章中,我将带你逐步揭开如何从零基础走进IT行业的大门。准备好了吗?我们开始吧! 确…

Plant Simulation中的writeRow方法详解

功能 writeRow 方法是 Plant Simulation 中 DataTable 对象的一个重要方法,用于向指定的数据表中的特定单元格写入数据。换句话说,你可以用它来更新或填充数据表中的内容。 语法 代码段 <Path>.writeRow(Column:any, Row:any, Value:any[, Value:any, ..., Value:a…

2411rust,实现特征

原文 在Rust2024中,impl Trait在中位置的默认工作方式有了变化.是为了简化impl Trait,以更好地匹配人们一般的需求. 还添加了一个灵活的语法,让你需要时可完全控制. 从Rust2024开始,一直在更改,何时可在返回位置impl Trait的隐藏类型中使用泛型参数的规则: 1,即对返回位置i…

【大数据技术基础】 课程 第8章 数据仓库Hive的安装和使用 大数据基础编程、实验和案例教程(第2版)

第8章 数据仓库Hive的安装和使用 8.1 Hive的安装 8.1.1 下载安装文件 访问Hive官网&#xff08;http://www.apache.org/dyn/closer.cgi/hive/&#xff09;下载安装文件apache-hive-3.1.2-bin.tar.gz 下载完安装文件以后&#xff0c;需要对文件进行解压。按照Linux系统使用的…

(超级详细!!!)解决“com.mysql.jdbc.Driver is deprecated”警告:详解与优化

目录 引言 1. 问题分析 1.1 警告内容解析 1.2 产生原因 2. 解决方案 2.1 更新驱动类 2.2 更新 JDBC URL 2.3 升级 MySQL Connector/J 依赖 2.4 清理缓存和重建项目 3. 示例代码 4. 注意事项 总结 引言 在使用 MySQL 数据库时&#xff0c;许多开发者会遇到以下警告&…