- 安装配置MAVEN
ByteVoyager
mavenjava
安装配置MAVEN1.获取安装包下载apache-maven-3.8.1-bin.zip,下载地址:https://archive.apache.org/dist/maven/maven-3/3.8.1/binaries/apache-maven-3.8.1-bin.zip。2.解压maven压缩包3.配置maven环境变量新建环境变量MAVEN_HOME:右击【此电脑】->【属性】->【高级系统
- 《Java高级-Xml:利用DOM4j解析XML》
大大大钢琴
#Java:经验总结javaxml开发语言
利用DOM4j解析XMLdom4j是一个简单的开源库,用于处理XML、XPath和XSLT,它基于Java平台,使用Java的集合框架,全面集成了DOM,SAX和JAXP。dom4j是目前在xml解析方面是最优秀的(Hibernate、Sun的JAXM也都使用dom4j来解析XML),它合并了许多超出基本XML文档表示的功能,包括集成的XPath支持、XMLSchema支持以及用于大文档或流化文档
- 部署前端项目2
augenstern416
前端
前端项目的部署是将开发完成的前端代码发布到服务器或云平台,使其能够通过互联网访问。以下是前端项目部署的常见步骤和工具:1.准备工作在部署之前,确保项目已经完成以下步骤:代码优化:压缩JavaScript、CSS和图片文件,减少文件体积。环境配置:区分开发环境和生产环境(如API地址、环境变量等)。测试:确保项目在本地测试通过,没有明显Bug。2.部署流程1.构建项目大多数前端项目(如React、V
- 文件与目录操作函数详解
归零 dddd
c语言linux算法
在编程中,文件和目录操作是常见的任务。本文将详细讲解常用的文件操作函数和目录操作函数,包括其功能、参数、使用方法,并通过示例代码展示如何用这些函数实现常见的操作。文件操作函数1.1fopen()函数功能:打开或创建文件。参数:constchar*pathname:文件名。constchar*mode:文件操作模式。常见的模式有:"r":只读模式,文件必须存在。"w":只写模式,文件不存在则创建,存
- deepseek_各个版本django特性
终是蝶衣梦晓楼
django数据库python
以下是Django2.0至5.0的主要区别总结,按版本特性分类说明:1.Django2.0的主要变化Python支持仅支持Python3.4+,不再兼容Python2.x。路由系统弃用url(),引入path()和re_path()替代,path()默认不支持正则表达式,但提供内置转换器(如)进行参数类型匹配。支持更简洁的URL配置语法(例如path('articles//',views.year
- python爬虫--安装XPath Helper
S903784597
python爬虫开发语言
给chrome浏览器安装xpath插件。-从网盘下载xpath的插件文件链接:https://pan.baidu.com/s/1B85d5cLDyAz1xUQqmL3uug?pwd=3306提取码:3306-在chrome中输入chrome://extensions/打开扩展程序。-将从百度网盘中下载的xpath.zip文件直接拖到浏览器的扩展程序页面中-得到chrome插件,将插件开关开启,并且
- SpringMVC中spring-config.xml和web.xml配置
W厚积薄发
小工具web.xml模板
web.xml配置模板springmvcorg.springframework.web.servlet.DispatcherServletcontextConfigLocationclasspath:springmvc-config3.xml1springmvc/CharacterEncodingFilterorg.springframework.web.filter.CharacterEncod
- 开发一个音响控制板程序,需要从硬件架构设计、通信协议选择、核心功能实现三个层面进行系统化开发。以下是基于工业级开发流程的实施方案
星糖曙光
后端语言(nodejavascriptvue等等)stm32emacsAI编程设计规范课程设计
一、硬件架构设计阶段主控芯片选型推荐采用STM32F4系列(如STM32F407VGT6),其168MHz主频和硬件浮点单元可满足实时音频处理需求[7]外围电路需集成PT2313音频处理芯片,实现4通道输入选择、音量/音调调节功能[13]存储系统采用W25Q128闪存保存用户配置参数,预留SDIO接口支持扩展存储信号处理架构cc//典型信号链路配置voidAudioPath_Init(void){
- Java Pjsip (Pjsua2 api ) 2.10 windows sip语音呼叫教程
java_lilin
pjsippjsipsippjsua2javasip
1.安装swigwin-4.0.1下载地址http://www.swig.org/download.html注意是swigwinWindowsusersshoulddownloadswigwin-4.0.1whichincludesaprebuiltexecutable.配置目录到winpath2.下载pjproject-2.10.zip(如果有python错误请安装py2.7及环境path配置)
- rook-ceph无法登录dashboard
时空无限
Kubernetescephcephkubernetes
环境ubuntu22.04tlsk8s1.20.2现象搭建好ceph集群环境后,执行如下命令获取admin登录账号的密码kubectl-nrook-cephgetsecretrook-ceph-dashboard-password-ojsonpath="{['data']['password'
- autojs使用nodejs调用sqlite数据库
牙叔教程
nodejsautojssqlite数据库
牙叔教程简单易懂依赖"nodejs";require("rhino").install();const{device}=require("device");constpath=require("path");constfs=require("fs");constutil=require("util");constSQLiteDatabase=android.database.sqlite.SQLi
- MacOS Python版本管理(pyenv)
IT匠人
macos
1.通过homebrew安装pyenvbrewupdatebrewinstallpyenv2.修改zshprofile否则通过pyenv切换python版本会不生效#编辑.zshrcor~/.bash_profilevim~/.zshrc#在配置下面增加exportPYENV_ROOT="$HOME/.pyenv"exportPATH="$PYENV_ROOT/shims:$PATH"ifcomm
- win11 labelme 汉化菜单
不喝可乐_
python开发语言
替换app.py,再重启#labelme汉化菜单#-*-coding:utf-8-*-importfunctoolsimportosimportos.pathasospimportreimportwebbrowserimportimgvizfromqtpyimportQtCorefromqtpy.QtCoreimportQtfromqtpyimportQtGuifromqtpyimportQtWi
- Dtcms修改PC站分享到手机端后访问打开手机版的当前页面
一包烟电脑面前做一天
webdtcms
dtcms框架中自带的功能是在手机端访问域名,自动跳转到手机版的首页。所以分享后自动跳转手机版当前页面需要自己调整,代码如下:在main目录下的common.js中修改JS判断即可:if(getCookie('m2wcookie')!='1'&&browserRedirect()){//PC跳转移动端varhostname=window.location.hostname;varpathname=
- 完成注册登陆系统中的登录部分代码
ILL11IIL
python
#注册登录系统importhashlibimportjsonimportos.path#读取本地的所有账户数据defload_account():#如果保存用户账户的文件存在,则读取文件中的用户信息,反之说明之前从未有用户注册过,返回空字典即可ifos.path.exists("account.txt"):returnjson.load(open("account.txt"))else:retur
- springboot里classpath与classpath*的区别是什么?
javascript
在SpringBoot中,classpath和classpath*是用于资源加载的两个关键概念,它们的主要区别在于资源查找的范围和方式。以下是它们的详细区别:1.classpath定义:classpath表示从当前类路径(Classpath)中查找资源。查找范围:它只会从当前类加载器的类路径中查找资源,不会递归查找子模块或依赖中的资源。使用场景:适用于明确知道资源位于当前模块或应用的类路径中的情况
- Java(JavaEE)学习线路图
太阳上的雨天
JAVAJAVA
Java学习线路图Java教程Java教程Java简介Java开发环境配置Java基础语法Java对象和类Java基本数据类型Java变量类型Java修饰符Java运算符Java循环结构Java分支结构JavaNumber类JavaCharacter类JavaString类JavaStringBuffer和StringBuilder类Java数组Java日期和时间Java正则表达式Java方法Ja
- AGP 8.0 适配 - 问题列表
zhuzhumouse
gradleandroid-studioandroid
不管是基于编译速度,包体积,新特性等那个方面的考虑,大家都应该开始AGP8.0的适配了,下面使我适配过程中遇到的各种问题,这里列出来,给大家的适配做一个参考。问题一:编译失败@TaskAction解决方案:在根目录的setting.gradle或者build.gradle里面添加如下代码:classpath'com.android.tools.build:gradle:8.0.0'原因说明:AGP
- 麒麟服务器v10系统安装时报错,银河麒麟V10服务器版本编译安装php7.2.12
护城河河长
麒麟服务器v10系统安装时报错
上传tar包php-7.2.12.tar.gztar-zxvfphp-7.2.12.tar.gzcdphp-7.2.12./configure--prefix=/home/kookserver/php--with-config-file-path=/home/kookserver/php/etc--with-config-file-scan-dir=/home/kookserver/php/etc
- python csv文件写入(推荐)
lxin_ooo
pythoncsvpython
python将数据写入到.csv文件里importjsonimportosimportcsvclassSaveCSV(object):defsave(self,keyword_list,path,item):try:#第一次打开文件时,第一行写入表头ifnotos.path.exists(path):withopen(path,"w",newline='',encoding='utf-8')asc
- Linux系统常用 基础命令
宅博士小陈
Linuxlinux服务器运维
1.文件和目录操作ls:列出目录内容lsls-l#详细列表ls-a#包括隐藏文件cd:切换目录cd/path/to/directorycd..#返回上一级目录cd~#返回家目录pwd:显示当前工作目录pwdmkdir:创建目录mkdirnew_directoryrmdir:删除空目录rmdirempty_directoryrm:删除文件或目录rmfile.txtrm-rdirectory#递归删除
- Ubuntu 在/etc/profile中配置环境变量后,开启新终端窗口环境变量失效问题解决(非root用户)
深度视觉机器
Ubuntu20环境变量失效问题到此解决。
最近在使用ubuntu系统的过程中用非root用户登录,发现在安装完jdk并添加相关环境变量,java-version可以正常显示,但当我开启一个新的终端的时候,这个命令就失效了,网上查了一下原因,是需要修改当前登录用户的.bashrc文件中添加环境变量才可永久生效,下面来说明几种解决方案。1、临时解决方案(非root用户)临时解决方案就是重新加载/etc/profile文件,执行以下命令:$so
- Java基础专项复习7——事务
Ttang23
java开发语言
Java基础专项复习系列目录1、Java基础专项复习1——函数关键字static-CSDN博客2、Java基础专项复习2——集合-CSDN博客3、Java基础专项复习3——Map集合-CSDN博客4、Java基础专项复习4——IO流-CSDN博客5、Java基础专项复习5——异常-CSDN博客6、Java基础专项复习6——多线程-CSDN博客文章目录目录Java基础专项复习系列目录文章目录1.1事
- ubuntu上/etc/profile.d/目录的作用
阳洞洞
ubuntulinux运维
在Linux系统(如Ubuntu、CentOS等)中,/etc/profile.d/目录有着重要的作用,主要用于存放系统级的环境变量和shell脚本配置,详细介绍如下:目录一、工作机制二、具体用途1.设置环境变量2.定义别名3.加载特定模块或初始化程序三、优点一、工作机制在用户登录时,系统会先读取/etc/profile文件,而/etc/profile脚本里包含了对/etc/profile.d/目
- 【Java基础-47.1】Java中通过继承Thread类创建线程
AllenBright
#Java基础java开发语言
在Java中,多线程编程是实现并发操作的重要手段之一。Java提供了多种创建线程的方式,其中一种是通过继承Thread类来创建线程。本文将详细介绍如何通过继承Thread类创建线程,并探讨其使用场景、优缺点以及注意事项。1.什么是Thread类?Thread类是Java中用于表示线程的核心类。它位于java.lang包中,提供了线程的创建、启动、暂停、中断等操作。每个Thread对象都代表一个独立
- linux getdir函数,linux C++ 获取文件绝对路径的实例代码
微Refreshsuffer
linuxgetdir函数
linuxC++获取文件绝对路径的实例代码提供ftp服务时需要获取文件绝对路径,这里记录一下。#include#include#includeintmain(){constchar*file_name="filename";charabs_path_buff[PATH_MAX];//获取文件路径,填充到abs_path_buff//realpath函数返回:null表示获取失败;否则返回指向abs
- vue3在router.addRoute(route))之后跳转页面404且路由matched是空
在Vue3中使用router.addRoute(route)动态添加路由后,路由的匹配信息(即matched数组)可能会显示为空。这是因为路由的匹配信息是惰性更新的,只有在路由跳转时才会重新计算。分两种场合:1、先跳转,再加路由,加完直接next()放行2、先跳转,再加路由,next(to.path)重跳后next()放行场合一:跳转404如果你先跳转了,再添加路由信息,然后直接next()放行,
- c/c++获取当前路径及创建多级路径(windows与linux通用-跨系统)
繁星璀璨G
C/C++程序windowslinux
获取当前路径因为要使能windows与linux通用,所以windows下必须把“\”替换为“/”,此处使用正则表达式替换#include#ifdef_WIN32#include#else#include#include#endifstringgetCurrentPath(){charbuf[1024]="";stringpath=string();#ifdef_WIN32getcwd(buf,s
- Docker面试题
御风行云天
面试题大全docker容器运维面试
Docker面试题1Docker基础概念1.1介绍Docker和其核心技术。1.2比较虚拟机和Docker容器的不同点。1.3解释Docker容器和镜像的区别。2Docker安装和配置2.1讲述Docker在不同操作系统上的安装流程。2.2描述Docker配置文件和环境变量的作用。2.3如何升级和维护Docker环境?3Docker镜像管理3.1如何从Dockerfile构建镜像?3.2解释Doc
- 最新Apache Hudi 1.0.1源码编译详细教程以及常见问题处理
Toroidals
大数据组件安装部署教程hudi1.0.1源码编译教程最新
1.最新ApacheHudi1.0.1源码编译2.Flink、Spark、Hive集成Hudi1.0.13.flinkstreaming写入hudi目录1.版本介绍2.安装maven2.1.下载maven2.2.设置环境变量2.3.添加Maven镜像3.编译hudi3.1.下载hudi源码3.2.修改hudi源码3.3.修改hudi-1.0.1/pom.xml,注释或去掉410行内容3.4.安装c
- 二分查找排序算法
周凡杨
java二分查找排序算法折半
一:概念 二分查找又称
折半查找(
折半搜索/
二分搜索),优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而 查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表 分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步
- java中的BigDecimal
bijian1013
javaBigDecimal
在项目开发过程中出现精度丢失问题,查资料用BigDecimal解决,并发现如下这篇BigDecimal的解决问题的思路和方法很值得学习,特转载。
原文地址:http://blog.csdn.net/ugg/article/de
- Shell echo命令详解
daizj
echoshell
Shell echo命令
Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出。命令格式:
echo string
您可以使用echo实现更复杂的输出格式控制。 1.显示普通字符串:
echo "It is a test"
这里的双引号完全可以省略,以下命令与上面实例效果一致:
echo Itis a test 2.显示转义
- Oracle DBA 简单操作
周凡杨
oracle dba sql
--执行次数多的SQL
select sql_text,executions from (
select sql_text,executions from v$sqlarea order by executions desc
) where rownum<81;
&nb
- 画图重绘
朱辉辉33
游戏
我第一次接触重绘是编写五子棋小游戏的时候,因为游戏里的棋盘是用线绘制的,而这些东西并不在系统自带的重绘里,所以在移动窗体时,棋盘并不会重绘出来。所以我们要重写系统的重绘方法。
在重写系统重绘方法时,我们要注意一定要调用父类的重绘方法,即加上super.paint(g),因为如果不调用父类的重绘方式,重写后会把父类的重绘覆盖掉,而父类的重绘方法是绘制画布,这样就导致我们
- 线程之初体验
西蜀石兰
线程
一直觉得多线程是学Java的一个分水岭,懂多线程才算入门。
之前看《编程思想》的多线程章节,看的云里雾里,知道线程类有哪几个方法,却依旧不知道线程到底是什么?书上都写线程是进程的模块,共享线程的资源,可是这跟多线程编程有毛线的关系,呜呜。。。
线程其实也是用户自定义的任务,不要过多的强调线程的属性,而忽略了线程最基本的属性。
你可以在线程类的run()方法中定义自己的任务,就跟正常的Ja
- linux集群互相免登陆配置
林鹤霄
linux
配置ssh免登陆
1、生成秘钥和公钥 ssh-keygen -t rsa
2、提示让你输入,什么都不输,三次回车之后会在~下面的.ssh文件夹中多出两个文件id_rsa 和 id_rsa.pub
其中id_rsa为秘钥,id_rsa.pub为公钥,使用公钥加密的数据只有私钥才能对这些数据解密 c
- mysql : Lock wait timeout exceeded; try restarting transaction
aigo
mysql
原文:http://www.cnblogs.com/freeliver54/archive/2010/09/30/1839042.html
原因是你使用的InnoDB 表类型的时候,
默认参数:innodb_lock_wait_timeout设置锁等待的时间是50s,
因为有的锁等待超过了这个时间,所以抱错.
你可以把这个时间加长,或者优化存储
- Socket编程 基本的聊天实现。
alleni123
socket
public class Server
{
//用来存储所有连接上来的客户
private List<ServerThread> clients;
public static void main(String[] args)
{
Server s = new Server();
s.startServer(9988);
}
publi
- 多线程监听器事件模式(一个简单的例子)
百合不是茶
线程监听模式
多线程的事件监听器模式
监听器时间模式经常与多线程使用,在多线程中如何知道我的线程正在执行那什么内容,可以通过时间监听器模式得到
创建多线程的事件监听器模式 思路:
1, 创建线程并启动,在创建线程的位置设置一个标记
2,创建队
- spring InitializingBean接口
bijian1013
javaspring
spring的事务的TransactionTemplate,其源码如下:
public class TransactionTemplate extends DefaultTransactionDefinition implements TransactionOperations, InitializingBean{
...
}
TransactionTemplate继承了DefaultT
- Oracle中询表的权限被授予给了哪些用户
bijian1013
oracle数据库权限
Oracle查询表将权限赋给了哪些用户的SQL,以备查用。
select t.table_name as "表名",
t.grantee as "被授权的属组",
t.owner as "对象所在的属组"
- 【Struts2五】Struts2 参数传值
bit1129
struts2
Struts2中参数传值的3种情况
1.请求参数绑定到Action的实例字段上
2.Action将值传递到转发的视图上
3.Action将值传递到重定向的视图上
一、请求参数绑定到Action的实例字段上以及Action将值传递到转发的视图上
Struts可以自动将请求URL中的请求参数或者表单提交的参数绑定到Action定义的实例字段上,绑定的规则使用ognl表达式语言
- 【Kafka十四】关于auto.offset.reset[Q/A]
bit1129
kafka
I got serveral questions about auto.offset.reset. This configuration parameter governs how consumer read the message from Kafka when there is no initial offset in ZooKeeper or
- nginx gzip压缩配置
ronin47
nginx gzip 压缩范例
nginx gzip压缩配置 更多
0
nginx
gzip
配置
随着nginx的发展,越来越多的网站使用nginx,因此nginx的优化变得越来越重要,今天我们来看看nginx的gzip压缩到底是怎么压缩的呢?
gzip(GNU-ZIP)是一种压缩技术。经过gzip压缩后页面大小可以变为原来的30%甚至更小,这样,用
- java-13.输入一个单向链表,输出该链表中倒数第 k 个节点
bylijinnan
java
two cursors.
Make the first cursor go K steps first.
/*
* 第 13 题:题目:输入一个单向链表,输出该链表中倒数第 k 个节点
*/
public void displayKthItemsBackWard(ListNode head,int k){
ListNode p1=head,p2=head;
- Spring源码学习-JdbcTemplate queryForObject
bylijinnan
javaspring
JdbcTemplate中有两个可能会混淆的queryForObject方法:
1.
Object queryForObject(String sql, Object[] args, Class requiredType)
2.
Object queryForObject(String sql, Object[] args, RowMapper rowMapper)
第1个方法是只查
- [冰川时代]在冰川时代,我们需要什么样的技术?
comsci
技术
看美国那边的气候情况....我有个感觉...是不是要进入小冰期了?
那么在小冰期里面...我们的户外活动肯定会出现很多问题...在室内呆着的情况会非常多...怎么在室内呆着而不发闷...怎么用最低的电力保证室内的温度.....这都需要技术手段...
&nb
- js 获取浏览器型号
cuityang
js浏览器
根据浏览器获取iphone和apk的下载地址
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" content="text/html"/>
<meta name=
- C# socks5详解 转
dalan_123
socketC#
http://www.cnblogs.com/zhujiechang/archive/2008/10/21/1316308.html 这里主要讲的是用.NET实现基于Socket5下面的代理协议进行客户端的通讯,Socket4的实现是类似的,注意的事,这里不是讲用C#实现一个代理服务器,因为实现一个代理服务器需要实现很多协议,头大,而且现在市面上有很多现成的代理服务器用,性能又好,
- 运维 Centos问题汇总
dcj3sjt126com
云主机
一、sh 脚本不执行的原因
sh脚本不执行的原因 只有2个
1.权限不够
2.sh脚本里路径没写完整。
二、解决You have new mail in /var/spool/mail/root
修改/usr/share/logwatch/default.conf/logwatch.conf配置文件
MailTo =
MailFrom
三、查询连接数
- Yii防注入攻击笔记
dcj3sjt126com
sqlWEB安全yii
网站表单有注入漏洞须对所有用户输入的内容进行个过滤和检查,可以使用正则表达式或者直接输入字符判断,大部分是只允许输入字母和数字的,其它字符度不允许;对于内容复杂表单的内容,应该对html和script的符号进行转义替换:尤其是<,>,',"",&这几个符号 这里有个转义对照表:
http://blog.csdn.net/xinzhu1990/articl
- MongoDB简介[一]
eksliang
mongodbMongoDB简介
MongoDB简介
转载请出自出处:http://eksliang.iteye.com/blog/2173288 1.1易于使用
MongoDB是一个面向文档的数据库,而不是关系型数据库。与关系型数据库相比,面向文档的数据库不再有行的概念,取而代之的是更为灵活的“文档”模型。
另外,不
- zookeeper windows 入门安装和测试
greemranqq
zookeeper安装分布式
一、序言
以下是我对zookeeper 的一些理解: zookeeper 作为一个服务注册信息存储的管理工具,好吧,这样说得很抽象,我们举个“栗子”。
栗子1号:
假设我是一家KTV的老板,我同时拥有5家KTV,我肯定得时刻监视
- Spring之使用事务缘由(2-注解实现)
ihuning
spring
Spring事务注解实现
1. 依赖包:
1.1 spring包:
spring-beans-4.0.0.RELEASE.jar
spring-context-4.0.0.
- iOS App Launch Option
啸笑天
option
iOS 程序启动时总会调用application:didFinishLaunchingWithOptions:,其中第二个参数launchOptions为NSDictionary类型的对象,里面存储有此程序启动的原因。
launchOptions中的可能键值见UIApplication Class Reference的Launch Options Keys节 。
1、若用户直接
- jdk与jre的区别(_)
macroli
javajvmjdk
简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit 一般指软件开发包,可以包括函数库、编译程序等。
JDK就是Java Development Kit JRE是Java Runtime Enviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。 如果安装了JDK,会发同你
- Updates were rejected because the tip of your current branch is behind
qiaolevip
学习永无止境每天进步一点点众观千象git
$ git push joe prod-2295-1
To
[email protected]:joe.le/dr-frontend.git
! [rejected] prod-2295-1 -> prod-2295-1 (non-fast-forward)
error: failed to push some refs to '
[email protected]
- [一起学Hive]之十四-Hive的元数据表结构详解
superlxw1234
hivehive元数据结构
关键字:Hive元数据、Hive元数据表结构
之前在 “[一起学Hive]之一–Hive概述,Hive是什么”中介绍过,Hive自己维护了一套元数据,用户通过HQL查询时候,Hive首先需要结合元数据,将HQL翻译成MapReduce去执行。
本文介绍一下Hive元数据中重要的一些表结构及用途,以Hive0.13为例。
文章最后面,会以一个示例来全面了解一下,
- Spring 3.2.14,4.1.7,4.2.RC2发布
wiselyman
Spring 3
Spring 3.2.14、4.1.7及4.2.RC2于6月30日发布。
其中Spring 3.2.1是一个维护版本(维护周期到2016-12-31截止),后续会继续根据需求和bug发布维护版本。此时,Spring官方强烈建议升级Spring框架至4.1.7 或者将要发布的4.2 。
其中Spring 4.1.7主要包含这些更新内容。