- Qt QTableWidget 触摸屏上滑动效果
hss2799
Qt
要实现QTableWidget在触摸屏上,滑动记录,记录会跟着滑动,只需要加QScroller*pScroller=QScroller::scroller(tablewidget);pScroller->grabGesture(tablewidget,QScroller::LeftMouseButtonGesture);tablewidget->setVerticalScrollMode(QLis
- Scroller简介
Doctor_徐
Scroller封装了滑动过程,当你需要实现一个滑动动画的时候,可以使用Scroller或是OverScroller类采集数据。例如,为了处理fling手势,随着时间的推移,Scrollers记录着滑动的偏移量,但是Scroller不会主动向View上报它的坐标。开发者需要以一定的频率主动向Scroller获取坐标,这样才能保证实现平滑滑动动画。例如:privateScrollermScrolle
- Android 手写viewpager
哈龙_99
android
以下是一个简化的ViewPager实现示例:importandroid.content.Contextimportandroid.util.AttributeSetimportandroid.view.GestureDetectorimportandroid.view.MotionEventimportandroid.view.Viewimportandroid.view.ViewGroupimp
- Flutter滑动冲突处理——GestureDetector嵌套ListView
哈喽,我是老刘几年前分享了一篇GestureDetector嵌套ListView的文章Flutter多控件滑动事件联动(滑动冲突处理)由于文章中只给出了关键部位的代码,另外使用的技术也偏底层所以很多同学私信我要完整的源码这里把原先的方案整理一下,另外也给出完整的代码供大家参考我们先一点一点来看这个问题滑动关闭组件首先大家一定在各种App中见过这个滑动关闭组件就是手指向下滑动,组件跟随手指移动手指抬
- Android矩阵Matrix动画缩放Bitmap移动手指触点到ImageView中心位置,Kotlin
zhangphil
kotlinAndroidandroidkotlin
Android矩阵Matrix动画缩放Bitmap移动手指触点到ImageView中心位置,Kotlin借鉴Android双指缩放ScaleGestureDetector检测放大因子大图移动到双指中心点ImageView区域中心,Kotlin(2)-CSDN博客在此基础上实现手指在屏幕上点击后,动画放大图片,在放大过程中,移动手指触点位置到ImageView的中心。importandroid.co
- iOS 用ScrollerView实现图片分页同时可缩放的功能
逝风不名
写了一个类似今日头条查看图片的Demo,功能实现:1.分页2.每个分页界面可以缩放及移动效果:http://v.youku.com/v_show/id_XMzMyNjQ1MjY5Ng==.html?spm=a2h3j.8428770.3416059.1实现过程:先创建一个容器ScrollerView(self.dataSource为数据源,存放图片名称);//容器ScrollerView@prop
- Android ViewPager 控制滑动速度
南窗云
参考《ViewPagersmoothScroll速度控制》,很不错的文章,用Kotlin改写记录如下:自定义滑动控制类,以实现自定义滑动/****author:jake*time:2018/11/20*function:控制ViewPager滑动速度*version:1.0***重写startScroll方法,忽略传过来的duration值*/classFixedSpeedScroller:Scr
- ScaleGestureDetector 在两指距离较短时,不能缩放
Mars-xq
前端
来源ScaleGestureDetector在两指距离较短时,不能缩放一、问题分析调试了发现,当手指距离很短的时候detector.getScaleFactor()等于1,基本不动,那肯定不会缩放了。没办法只能去到ScaleGestureDetector的源码,发现如果要回调onScale(ScaleGestureDetectordetector),则它的条件如下:if(action==Motio
- iOS-UIScrollerView
皆为序幕_
UIScrollerView常见属性CGPointcontentOffset这个属性用来表示UIScrollerView滚动的位置(其实就是内容左上角与ScrollerView左上角的间距值)CGSizecontentSize这个属性用来表示UIScrollerView内容尺寸,滚动范围(能滚多远)UIEdgeInsetscontentInset这个属性能够在UIScrollerView的四周增加
- vue使用antv-x6 绘制流程图DAG图(二)
小贵子的博客
vue.js流程图前端
代码:import{Graph,Node,Path,Cell,Addon}from"@antv/x6";import{register}from"@antv/x6-vue-shape";import{Dnd}from"@antv/x6-plugin-dnd";import{MiniMap}from"@antv/x6-plugin-minimap";import{Scroller}from"@ant
- flutter 五点一点三:简简单单小画板
魑魅魍魉都是鬼
flutter
classCextendsStatefulWidget{@overrideStatecreateState()=>CState();}classCStateextendsState{Listpoints=[];@overrideWidgetbuild(BuildContextcontext){returnScaffold(body:MouseRegion(child:GestureDetector
- 第九节HarmonyOS 常用基础组件17-ScrollBar
yyxhzdm
harmonyos华为前端
1、描述滚动条组件ScrollBar,用于配合可滚动组件使用,如List、Grid、Scroll。2、接口可包含子组件ScrollBar(value:{scroller:Scroller,direction?:ScrollBarDirection,state?:BarState})3、参数参数名参数类型必填描述scrollerScroller是可滚动组件的控制器。用于与可滚动组件金进行绑定。dir
- Flutter 点击空白的地方让软键盘消失
A HandSome Man
flutter前端
在Flutter中,你可以通过在Scaffold的body上添加一个GestureDetector来实现点击空白处隐藏键盘的操作。下面是一个示例代码:import'package:flutter/material.dart';classMyAppextendsStatelessWidget{@overrideWidgetbuild(BuildContextcontext){returnMateri
- Android ScaleGestureDetector检测双指缩放Bitmap基于Matrix动画移动到双指捏合中心点ImageView区域中心,Kotlin
zhangphil
kotlinAndroidandroidkotlin
AndroidScaleGestureDetector检测双指缩放Bitmap基于Matrix动画移动到双指捏合中心点ImageView区域中心,Kotlin在Android双指缩放ScaleGestureDetector检测放大因子大图移动到双指中心点ImageView区域中心,Kotlin-CSDN博客实现了双指拟合缩放原始图,并将原始捏合点的中心作为缩放中心,并最终呈现在界面里面以这个中心点
- Android双指缩放ScaleGestureDetector检测放大因子大图移动到双指中心点ImageView区域中心,Kotlin(2)
zhangphil
Androidkotlinandroidkotlin
Android双指缩放ScaleGestureDetector检测放大因子大图移动到双指中心点ImageView区域中心,Kotlin(2)在AndroidScaleGestureDetector检测双指缩放Bitmap基于Matrix动画移动到双指捏合中心点ImageView区域中心,Kotlin-CSDN博客的基础上,改进一下,实现两根手指在屏幕上捏合缩放时候,图片随之缩放。当手指在屏幕上抬离
- Flutter 点击空白处关闭软键盘,点击非TextField 关闭软键盘的方法
Android_Trot
flutterflutter
1:点击空白处(非控件上)关闭软键盘。此方法有个问题,就是点击非空白区域,不会关闭软键盘,比如点击旁边的其他按钮,则软键盘还在。只适合点击空白处关闭软键盘在main.dart入口build中增加builder:(context,child){//xxxxx操作returnGestureDetector(behavior:HitTestBehavior.translucent,//全局添加点击空白处
- Vue2 - vue-virtual-scroller 长列表优化原理
下雪天的夏风
vue2vue.js前端javascript虚拟滚动长列表优化
目录1,效果展示2,原理2.1,滚动条的处理2.2,展示内容处理3,实现vue-virtual-scroller1,效果展示1w条数据无压力,看下初始渲染时间Rendering对比:2,原理目标:只加载在可视容器中的列表项。实现:2.1,滚动条的处理为了保证滚动条正确显示和滑动,需要按照原本的数据量来计算滑动内容区域wrapper的真实高度,wrapper外层的container作为滑动容器,设置
- 实现ImageView的双指缩放
厚德.
androidandroid
在支持双指的缩放的时候,首先要了解一下Android支持缩放的工具类ScaleGestureDetector,这个缩放是根据这个工具类来实现的。ScaleGestureDetector是用于处理缩放的工具类,用法与GestureDetector类似,都是通过onTouchEvent()关联相应的MotionEvent事件。OnScaleGestureListener回调方法的介绍:publicin
- Android双指缩放ScaleGestureDetector检测放大因子大图移动到双指中心点ImageView区域中心,Kotlin
zhangphil
kotlinAndroidandroidkotlin
Android双指缩放ScaleGestureDetector检测放大因子大图移动到双指中心点ImageView区域中心,Kotlin在Android双击图片放大移动图中双击点到ImageView区域中心,Kotlin-CSDN博客基础上,这次使用ScaleGestureDetector检测两根手指的缩放动作,记录两根手指的中心点位置,根据ScaleGestureDetector检测到的缩放因子(
- 混合App开发h5页面问题总结
淘淘闯天下
1.无法滚动,在混合APP中这个是最常见最容易发生的问题。问题描述:html、body有设置height:100%,会导致在APP中不能滚动解决一:去掉html、body的height设置,同时把不需要滚动的部位设置固定定位(这样看起来就像在当前容器中滚动而不是在整个html中滚动。)解决二:使用iscroll或者vue-scroller等第三方js模拟滚动的npm插件。目前自己是使用方案一实现的
- 使用flutter开发一个渐变色按钮
1024小神
多端开发flutter
因为项目需要,需要使用flutter开发一个渐变色的按钮,flutter自带的按钮样式不太好调整,所以需要自定义实现,实现的思路就是使用GestureDetector嵌套Container,Container里面嵌套text实现。实现的效果:实现的代码:GestureDetector(child:Container(width:190,height:80,decoration:BoxDecorat
- vue之虚拟滚动
在路上`
Vuevue.js前端javascript
一、解决的问题对于大量数据的懒加载,我们可以使用虚拟滚动的技术。虚拟滚动的原理是只渲染可视区域内的数据,当用户滚动时,动态计算并渲染新的可视数据,从而实现大数据量的流畅滚动。在Vue中,我们可以使用第三方库如vue-virtual-scroller来实现虚拟滚动。二、实现方式首先,安装vue-virtual-scroller库:npminstallvue-virtual-scrollerhtml{
- 数据量大如何优化渲染、虚拟列表技术、js虚拟列表、Vue Virtual Scroller 实现虚拟滚动列表、react-virtualized 库实现的虚拟列表
星辰迷上大海
案例\效果JavaScriptVuejavascriptvue.jsreact.js前端案例效果
数据量大如何优化渲染当处理大量数据时,页面可能会出现性能问题。为了优化性能,可以考虑使用虚拟列表和数据缓存机制。虚拟列表是一种UI优化技术,它只渲染可见区域的数据项,而不是一次性渲染全部数据。这样可以减少DOM元素数量,提高页面性能和用户体验。数据缓存机制可以将已经请求过的数据暂存到内存或本地存储中,当需要再次使用这些数据时,可以直接从缓存中获取,减少对服务器的请求次数,提高数据加载速度。虚拟列表
- ListView实现树形菜单——listview整体水平与垂直同时滚动(ScrollerView嵌套ListView)...
在下个路口
Androidandroid树形选择菜单
最近在项目中用ListView实现了一个树形菜单,菜单层级可以无限,数据动态填充,写这个控件确实是花了不少的时间,而且代码逻辑也比较复杂。所以在这里并不是把整个源码贴出来,因为太多了,逻辑也比较难懂,我怕自己讲不清楚,所以这里只是记录一下在此过程中遇到的某方面的问题。因为在项目中的数据是动态填充的,即每个树节点都是从服务器端请求,然后解析获取的。那这样的话就有一个问题就是listview的宽度跟高
- coordinator使用 WebView加载H5格式
Ad大成
xmljava代码@BindView(R.id.iv_ribao_particulars)ImageViewivRibaoParticulars;@BindView(R.id.app_bar)AppBarLayoutappBar;@BindView(R.id.nsv_scroller)NestedScrollViewnsvScroller;@BindView(R.id.tv_detail_bott
- 初识Flutter(四) Flutter的Widge
不思进取的码农
1.1Widget概念我们知道在Flutter中几乎所有的对象都是一个widget。与原生开发中“控件”不同的是,Flutter中的widget的概念更广泛,它不仅可以表示UI元素,也可以表示一些功能性的组件如:用于手势检测的GestureDetector、用于APP主题数据传递的Theme等等,而原生开发中的控件通常只是指UI元素。在后面的内容中,我们在描述UI元素时可能会用到“控件”、“组件”
- Flutter GestureDetector 属性介绍及使用
Zender Han
Flutter入门学习flutter
Flutter是一款强大的跨平台移动应用框架,它提供了丰富的组件和功能,以便开发者构建高性能、美观的移动应用。其中,GestureDetector是一个非常重要的手势识别组件,用于捕获用户在屏幕上的各种手势操作。在本文中,我们将深入介绍GestureDetector的属性以及如何在Flutter应用中使用它。GestureDetector简介GestureDetector是Flutter中的手势识
- flutter事件evevt详解
坚果前端
flutter事件在Flutter中,手势有两个不同的层次:第一层:原始指针事件(PointerEvents):描述了屏幕上由触摸板、鼠标、指示笔等触发的指针的位置和移动。第二层:手势识别(GestureDetector):这个是在原始事件上的一种封装。指针事件PointerPointer代表的是人机界面交互的原始数据。一共有四种指针事件:PointerDownEvent指针在特定位置与屏幕接触P
- 2019-12-06 RecyclerView 实现滑动、跳转到某个Position并顶置
猫KK
如标题,这里只针对LinearLayoutManager的情况,滑动并顶置新建一个TopSmoothScroller类publicclassTopSmoothScrollerextendsLinearSmoothScroller{publicTopSmoothScroller(Contextcontext){super(context);}@OverrideprotectedintgetHoriz
- OverScroller安卓滑动辅助类
艾回
mScroller.getCurrX()//获取mScroller当前水平滚动的位置mScroller.getCurrY()//获取mScroller当前竖直滚动的位置mScroller.getFinalX()//获取mScroller最终停止的水平位置mScroller.getFinalY()//获取mScroller最终停止的竖直位置mScroller.setFinalX(intnewX)//
- 二分查找排序算法
周凡杨
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主要包含这些更新内容。