- lodash插件
吃我一锅
一些插件
安装npminstalllodash引入importorderByfrom'lodash/orderBy'使用orderBy(要排序的变量,要排序的字段,升序还是降序)//例如,评论按照点赞数量排序orderBy(lilst,'like','desc')
- JavaScript 的新数组分组方法
javascript
对数组中的项目进行分组,你可能已经做过很多次了。每次都会手动编写一个分组函数,或者使用lodash的groupBy函数。好消息是,JavaScript现在有了分组方法,所以你再也不必这样做了。Object.groupBy和Map.groupBy这两个新方法将使分组变得更简单,并节省我们的时间或依赖性。以前的做法假设你有一个代表人的对象数组,你想按年龄对它们进行分组。你可以这样使用forEach循环
- 【React】使用lodash的debounce未生效
田本初
Reactreact.jsjavascript前端
react中直接使用lodash的debounce函数,发现并未生效,1秒内多次触发,控制台仍有多次打印,这是因为debounceSearch函数被重新定义了,需要使用useCallback来包装函数。import{ChangeEvent}from"react"import{useCallback,useState}from"react"import{Input}from"antd"import_
- JS高级(四)- 深浅拷贝、异常处理、处理this、防抖节流md
Kiwi23333
Javascriptjavascript开发语言ecmascript
文章目录1.深浅拷贝1.1浅拷贝1.2深拷贝1.2.1递归实现深拷贝1.2.2js库lodash里面cloneDeep内部实现了深拷贝1.2.3JSON序列化2.异常处理2.1throw2.2try...catch2.3debugger3.处理this(this小结)3.1普通函数3.2箭头函数3.3改变this指向3.3.1call3.3.2apply3.3.3bind3.3.4callappl
- 【从Jest入门到 TDD,BDD双实战】整体学习介绍①
不停喝水
#【Jest自动化测试】react.js前端vue.jsjest自动化测试
一:前端要学的测试Jest入门TDD实战BDD实战二:前端工程化的一部分前端自动化测试高质量代码设计高质量代码实现三:前端自动化测试的例子VueEchartsReactAnt-Design这些都有使用到了自动化测试1.比如Lodash2.比如Redux四:前端为什么需要自动化测试?1.该需求时,代码重构:导致修复时间长,成本高2.自动化测试,修复时间少,难度低五:涵盖内容2.学习安排六:学习前置需
- 用JavaScript手动实现深拷贝
埋葬荒城
JavaScriptjavascript
前言在编码的过程中,难免会遇到需要深拷贝一个对象的时候,这个时候,如果项目中没有深拷贝方法,而且也不允许使用三方库,例如lodash,就需要手动实现一个深拷贝功能了。定义那么,什么是深拷贝呢?与深拷贝对应的,还有浅拷贝。浅拷贝:创建一个新对象,这个对象有着原始对象属性值的一份精确拷贝。如果属性是基本类型,拷贝的就是基本类型的值,如果属性是引用类型,拷贝的就是内存地址,所以如果其中一个对象改变了属性
- vue 实现点击滚动效果
孤岛的千城
vuevue.jsjavascript前端
效果实现012345012345import_from'lodash'exportdefault{data(){return{//节流time:undefined,//定时器timeout:undefined,//当前高亮的title标志index:0,//右侧滚动区域DOMrightDiv:undefined,//右侧内容DOM数组content:undefined}},mounted(){//
- 期待已久的 JS 原生 groupBy() 分组函数即将到来
前端达人
javascript开发语言ecmascript前端
在处理数组时,有时我们需要将其中的项目按照某个特定的属性或条件进行分类或分组。这个过程可能会多次重复,每次都需要编写分组函数或使用像lodash这样的库中的groupBy函数来完成。但是,现在JavaScript正在引入一种更方便的方法,让我们不再需要手动编写这些分组逻辑。JavaScript引入了新的Object.groupBy和Map.groupBy方法,它们使得对数组进行分组变得更加简单和高
- react使用xlsx插件做纯前端导出Excel(亲测有效)
一朵小浪花儿
javascriptreactjsexcelvue.jshtml
纯前端导出Excel需要两个依赖,xlsx和file-saver话不多说,上代码:importXLSXfrom"xlsx";//必要依赖importFileSaverfrom"file-saver";//必要依赖import{Message}from"antd"import_from"lodash"importmomentfrom"moment"classExportExcelextendsCom
- JavaScript高级:深浅拷贝
是小蟹呀^
JavaScriptjavascript
目录1引言2浅拷贝2.1拷贝数组1.2拷贝对象3赋值操作和浅拷贝的比较4深拷贝4.1前置知识-->递归函数4.2使用递归实现深拷贝4.3js库中的lodash里面的cloneDeep内部实现深拷贝4.4利用JSON实现深拷贝深浅拷贝只针对引用数据类型1引言假如我们想要使用一个对象,我们之前通常使用赋值的方式,但是使用赋值的方式时,修改赋值后的对象中的数据,会影响原对象!!!比如:constobj=
- JavaScript高级:防抖和节流
是小蟹呀^
JavaScriptjavascript
1防抖(debounce)单位时间内,频繁触发事件,只执行最后一次【例子】王者荣耀英雄回城,只要被打断就要重新来【应用场景】1.搜索框搜索输入。只需用户最后一次输入完,再发送请求;2.手机号、邮箱验证输入检测。【需求】鼠标在盒子上滑动,并在盒子上显示滑动的次数如果不使用防抖,那么在盒子上的数字将会增加的非常快,如果是一些非常消耗性能的代码,可能会造成卡顿1.1使用lodash库实现防抖无论滑动多少
- 使用lodash防抖节流
前端小菜鸟也有人起
前端react.jsjavascript前端框架
Lodash是一个一致性、模块化、高性能的JavaScript实用工具库。Lodash简介|Lodash中文文档|Lodash中文网(lodashjs.com)第一步:下载npminstall--savelodash第二步:引入lodashimport*as_from'lodash'什么是防抖和节流?如何实现防抖和节流?_王者荣耀防抖节流-CSDN博客_.debounce(func,[wait=0
- js数组/对象的深拷贝与浅拷贝
Ying(英子)
web前端JavaScriptjavascript前端深拷贝浅拷贝Object.asignJOSN.stringify原生js深拷贝
文章目录一、js中的深拷贝和浅拷贝二、浅拷贝1、Object.assign()2、利用es6扩展运算符(...)二、深拷贝1、JSON序列化和反序列化2、js原生代码实现3、使用第三方库lodash等四、总结一、js中的深拷贝和浅拷贝在JS中,深拷贝和浅拷贝是针对对象(Object)和数组(Array)这类复杂数据类型复制时的概念。浅拷贝:当进行浅拷贝时,只是将对象或数组的引用复制一份给新的变量。
- 【webpack】技巧使用
博主花神
【前端工程化】webpack前端node.js
webpack和TypeScript安装webpack相关内容安装TS相关内容配置初始化数据初始化运行展示和目录展示报错解决(缺失文件配置)安装前端必备神奇lodash测试一下entry配置index.html模板配置修改打包出来的index.html的titleinject注入chunks属性多页面配置TreeShaking-(摇晃无用代码)sideEffects属性渐进式网络应用程序PWAPW
- vue大屏放大缩小适配方案之scale,直接用超简单
匆叔
javascript前端开发语言vue.js
效果图:全屏情况:vue2组件代码如下:1.适应长度宽度,不留白,(本demo是第一种,不留白)importdebouncefrom'lodash.debounce'exportdefault{components:{},props:{width:{type:Number,default:1920},height:{type:Number,default:1080}},data(){return{
- 浅拷贝&深拷贝(如何实现深拷贝)
q_小也_p
js的数据类型主要分两大类:基本数据类型和引用数据类型。基本数据类型有:Srting/Number/Null/undefine/Boolean占用内存大小确定,保存在栈内。引用数据类型:Object/Array占用内存大小不确定,保存在堆内。深拷贝的方法1.JSON.parse(JSON.stringify(obj))比较日常又比较dirty的方法,适合json可以解读的数据2.利用lodash里
- 30个常用的lodash工具函数
前端fighter
java算法python
chunk:将数组拆分成指定大小的多个数组functionchunk(array,size){constresult=[];for(leti=0;i!set.has(item));}drop:从数组的开头删除指定数量的元素functiondrop(array,n=1){returnarray.slice(n);}dropRight:从数组的末尾删除指定数量的元素functiondropRight(
- 【前端插件工具】
SuperYiY
【前端插件工具】前端
marked将Markdown文本转换为HTMLimport{marked}from'marked'constmarkdownText='#Hello,Markdown!\n\nThisis**bold**text.';consthtmlContent=marked(markdownText);lodash-esLodash是一个非常流行的JavaScript实用工具库,涵盖了数组处理、对象操作、
- JS进阶10 -- 防抖和节流
前端小白进阶之旅
JS进阶javascriptecmascript前端
JS进阶10--防抖和节流JS进阶10--防抖和节流防抖防抖的适用场景手写防抖需求核心实现步骤lodash的debounce方法参数返回手写debounce函数需求核心步骤节流节流的适用场景手写节流lodash的throttle方法参数返回手写throttle方法需求核心步骤总结防抖和节流的区别在JS进阶9--JS设计模式中我们学习了JS中的常用设计模式,并对其应用场景以及在开发和主流框架中的实际
- vue3兼容超宽屏、超窄屏、4K屏幕等等
我叫汪枫
vue.js前端
vue3兼容超宽屏、超窄屏、4K屏幕等等在你的项目src下创建一个hooks文件夹在里面创建一个UserScalePage.ts文件在里面写上import{onMounted,onUnmounted}from"vue";import_from"lodash";exportdefaultfunctionUserScalePage(opstion:any){constresizeFunc=_.thro
- 记录解决报错--These dependencies were not found jsencrypt lodash-es
jacGJ
springbootjavavue
1.场景idea打包vue,报错退出,缺少依赖Thesedependencieswerenotfoundjsencryptlodash-es2.解决步骤①到相关目录下直接安装依赖,npminstall--savejsencryptlodash-es。我这里是没安装成功,原因是很多依赖冲突。(这一步就是报错的原因)②删除node_modules文件夹及里面的文件,然后在命令行里面重新安装依赖,npm
- el-tooltip 超出宽度显示提示内容,支持自定义提示内容
小乔FEer
javascript前端vue.js
功能需求超出内容区域宽度显示tooltip自定义tooltip内容tooltip位置跟随鼠标位置显示组件源码{{content||text}}{{text}}import{uniqueId}from'lodash';exportdefault{props:{text:{//默认显示的文本type:String,default:''},content:{//tooltip显示内容type:Strin
- 项目中常用的lodash库方法
大莲芒
前端
常用的方法:groupBysortByorderByuniqcloneDeepceil、round、floorminBy、maxBygetforEachonceisNumberunionBychunkdebouncethrottlehasIn具体用法如下图
- 常用的JS库整理
Michael18811380328
javascript前端开发语言ecmascriptwebpack
常用的JS库整理1.Lodash&Underscore也许大多数童鞋都已经知道它们。Underscore提供了日常使用的基础函数。Lodash,作为NPM最多下载量和被依赖最多的包,旨在为数组,字符串,对象和参数对象提供更一致的跨环境迭代支持。它已经是Underscore的超集。Underscore和Lodash由同一组核心开发者维护。你日常开发中绝对少不了要用到它。2.Ramda拥有超过12K的
- 一道柯里化题
_William_Zhang
请写出一个柯里化其他函数的函数curry,这个函数能够将接受多个参数的函数,变成多个接受一个参数的函数,具体见示例(这是lodash.curry的文档示例):functioncurry(???){???return???}varabc=function(a,b,c){return[a,b,c];};varcurried=curry(abc);curried(1)(2)(3);//=>[1,2,3]
- |>第一篇 实现加密认证逻辑<|微信订阅号开发
熊明才
node.js函数微信加密数据
request网络请求我们使用request它是对原生的HTTPrequest的封装ejs微信的数据包装方式是XML,所有我们借助ejs这个模板库,把数据作为变量替换XML字符中lodash和Heredoclodash是一些常用的方法集,做数组拆分,类型判断等等Heredoc是黑科技把函数体里面的多行的注降低拼接字符串释作为字符串提取出来主要用来降低拼接字符串的成本raw-body用来获取一个ht
- 使用uni-id-pages的登录页面,如果点击登录就会报如下错误Cannot find module ‘lodash.merge‘ \uni-id-co\common\utils.js
咸虾米_
uniapp+uniCloudjavascriptuni-app
开发uniapp+unicloud项目,使用uni-id-pages的登录页面,如果点击登录就会报如下错误Cannotfindmodule‘lodash.merge’…\uni-id-pages\uniCloud\cloudfunctions\uni-id-co\common\utils.js。为什么会出现这个问题?项目运行unicloud的uni-id-pages项目的时候,系统会自动检测uni
- 项目中常用的utils
乐夫天命兮
javascript前端开发语言
importcryptofrom'crypto'importSparkMD5from'spark-md5'importCryptoJsfrom'crypto-js'importJSEncryptfrom'jsencrypt'importstoragefrom'@/utils/storage'import{isEmpty,isArray,remove}from'lodash-es'import{ch
- vite3+vue3 项目打包优化三 — CDN加速、文件压缩
MagnumHou
Vite+Vue3前端工程化打包优化Vue代码优化vue.jsVite打包CNDGZIP
1.CDN在线加速内容分发网络(ContentDeliveryNetwork,简称CDN),是构建在数据网络上的一种分布式内容分发网,它可以让用户从最近的服务器请求资源,以提升网络请求的响应速度。通常情况下,我们请求依赖模块使用CDN,而请求项目代码依然使用自己的服务器。在Vite+Vue3项目开发过程中,像element-plus、lodash-es等工具库,会有很大的文件依赖。我们可以尝试通过
- lodash中那些高频使用的好用方法
前端怎么个事
javascript前端react.js
这里写目录标题throttle节流cloneDeep深度克隆对象merge合并多个对象uniq和uniqBy去重sortBy排序pick和omit创建对象的子集或剔除某些属性get和set安全地访问和设置嵌套对象属性memoize缓存计算函数的结果。isEqual深度比较两个对象或数组是否相等chunk将数组分割成指定大小的小数组。throttle节流用途:限制事件处理函数的调用频率,如在滚动事件
- 二分查找排序算法
周凡杨
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主要包含这些更新内容。