史上最全的web前端面试题汇总及答案
史上最全的web前端面试题汇总及答案
史上最全的web前端面试题汇总及答案
很早之前就在看web前端面试题,一直想总结一个比较全面又详细的面试题库,现在总结了一些,分享给大家,以后还会持续更新,有些题目有多种答案,本文只给出其中一种,哪里有问题的欢迎指出。
Html&CSS
1、谈谈你对web标准的理解
web标准的理解
2、列举html中至少三个实体
&、  、<、>、®、© 详细请看w3schoolHTML实体符号参考手册 w3schoolHTML实体符号参考手册
3、cellpadding与cellspacing有何区别?
cellpadding:代表单元格边框到内容之间的距离(留白) cellspacing:cellspacing属性用来指定表格各单元格之间的空隙。此属性的参数值是数字,表示单元格间隙所占的像素点数。
4、CSS 选择符有哪些?哪些属性可以继承?优先级算法如何计算? CSS3新增伪类有哪些?
1.id选择器( # myid) 2.类选择器(.myclassname) 3.标签选择器(div, h1, p) 4.相邻选择器(h1 + p) 5.子选择器(ul > li) 6.后代选择器(li a) 7.通配符选择器( *
) 8.属性选择器(a[rel = "external"]) 9.伪类选择器(a: hover, li: nth - child) **可继承的样式: ** font-size font-family color, UL LI DL DD DT;不可继承的样式: border padding margin width height优先级 优先级就近原则,同权重情况下样式定义最近者为准,载入样式以最后载入的定位为准; 优先级为: !important > id > class > tag important 比 内联优先级高CSS3新增伪类举例 p:first-of-type 选择属于其父元素的首个
元素的每个
元素。 p:last-of-type 选择属于其父元素的最后
元素的每个
元素。 p:only-of-type 选择属于其父元素唯一的
元素的每个
元素。 p:only-child 选择属于其父元素的唯一子元素的每个
元素。 p:nth-child(2) 选择属于其父元素的第二个子元素的每个
元素。 :enabled :disabled 控制表单控件的禁用状态。 :checked 单选框或复选框被选中。
5、display与visibility有何异同?
display可以有很多值,visibility只有两个常用值:visible、hidden。 当display为none、visibility为hidden时都会隐藏元素。但display会隐藏掉元素空间,visibility会保留元素空间。
6、怎么在网页中实现绝对定位?
absolute 绝对定位与相对定位
7、table-layout、border-collapse有何用途?
①table-layout:设置表格是否自动调整宽高 ②border-collapse:表格与单元格及单元格间的边框是否融合在一起。
8、简述盒模型
简述盒模型
9、链接标记target属性的_top、_parent、_blank、main、left、top各有何用处?
链接标记target与Dom,Bom
10、你对浏览器兼容怎么看?通常你都做哪些处理?
浏览器的兼容性
11、get和post的区别?
GET: 一般用于信息获取,使用URL传递参数,对所发送信息的数量也有限制,一般在2000个字符POST: 一般用于修改服务器上的资源,对所发送的信息没有限制。 GET方式需要使用Request.QueryString来取得变量的值,而POST方式通过Request.Form来获取变量的值,也就是说Get是通过地址栏来传值,而Post是通过提交表单来传值。 然而,在以下情况中,请使用 POST 请求: ①无法使用缓存文件(更新服务器上的文件或数据库)向服务器发送大量数据(POST 没有数据量限制)。 ②发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠。
12、xhtml和html有什么区别
①HTML是一种基本的WEB网页设计语言,XHTML是一个基于XML的置标语言 ②最主要的不同: XHTML 元素必须被正确地嵌套。 XHTML 元素必须被关闭。 标签名必须用小写字母。 XHTML 文档必须拥有根元素。
13、行内元素有哪些?块级元素有哪些?空(void)元素有那些? 行内元素和块级元素的区别是什么?行内块元素的兼容性使用?(IE8 以下)
块级元素: div p h1 h2 h3 h4 form ul ol dl dt dd行内元素: a b br i span input select image strong(强调的语气)常见空元素: / / / / /
不常见空元素: / / //// ///
行内元素: 会在水平方向排列,不能包含块级元素,设置width无效,height无效(可以设置line-height),margin上下无效,padding上下无效。块级元素: 各占据一行,垂直方向排列。从新行开始结束接着一个断行。兼容性: display:inline-block;*display:inline;*zoom:1;
14、CSS引入的方式有哪些? link和@import的区别是?
CSS引入的方式包括内联 内嵌 外链 导入 link和@import的区别是 : ①link属于XHTML标签,除了加载CSS外,还能用于定义RSS, 定义rel连接属性等作用;而@import是CSS提供的,只能用于加载CSS; ②页面被加载的时,link会同时被加载,而@import引用的CSS会等到页面被加载完再加载; ③import是CSS2.1 提出的,只在IE5以上才能被识别,而link是XHTML标签,无兼容问题; ④后者优先级更高
15、你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么?介绍一下你对浏览器内核的理解
Ie(Ie内核) 火狐(Gecko) 谷歌(webkit) opera(blink)对内核的理解: 主要分成两部分:渲染引擎(layout engineer或Rendering Engine)和JS引擎。 ①渲染引擎:负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入CSS等),以及计算网页的显示方式,然后会输出至显示器或打印机。浏览器的内核的不同对于网页的语法解释会有不同,所以渲染的效果也不相同。所有网页浏览器、电子邮件客户端以及其它需要编辑、显示网络内容的应用程序都需要内核。 ②JS引擎:解析和执行javascript来实现网页的动态效果。 最开始渲染引擎和JS引擎并没有区分的很明确,后来JS引擎越来越独立,内核就倾向于只指渲染引擎。
16、解释css sprites,如何使用。
Css 精灵 把一堆小的图片整合到一张大的图片上,减轻服务器对图片的请求数量。 适用于以下情况: ①静态图片,不随用户信息的变化而变化 ②小图片,图片容量比较小 ③加载量比较大
17、清除浮动的几种方式,各自的优缺点
(1)父级div定义height。 (2)结尾处加空div标签clear:both。 (3)父级div定义伪类:after和zoom。 (4)父级div定义overflow:hidden。 (5)父级div定义overflow:auto。 (6)父级div也浮动,需要定义宽度。 (7)父级div定义display:table。 (8)结尾处加br标签clear:both。 比较好的是第3种方式,好多网站都这么用。
18、Doctype作用?标准模式与兼容模式各有什么区别?
①
告知浏览器的解析器用什么文档标准解析这个文档。DOCTYPE
不存在或格式不正确会导致文档以兼容模式呈现。 ②标准模式的排版和JS运作模式都是以该浏览器支持的最高标准运行。在兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作。注意点: HTML5 只需要写不需要对DTD进行引用,因为HTML5不基于 SGML,因此不需要对DTD进行引用,但是需要doctype来规范浏览器的行为(让浏览器按照它们应该的方式来运行)。 而HTML4.01基于SGML,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型。
19、iframe有哪些缺点?
①iframe会阻塞主页面的Onload事件,搜索引擎的检索程序无法解读这种页面,不利于SEO; ②iframe和主页面共享连接池,而浏览器对相同域的连接有限制,所以会影响页面的并行加载。 使用iframe之前需要考虑这两个缺点。如果需要使用iframe,最好是通过javascript动态给iframe添加src属性值,这样可以绕开以上两个问题。
20、如何实现浏览器内多个标签页之间的通信?
①通过WebSocket、SharedWorker来实现; ②也可以调用localstorge、cookies等本地存储方式。 localstorge另一个浏览上下文(另一个标签页)里被添加、修改或删除时,它都会触发一个事件,我们通过监听事件,控制它的值来进行页面信息通信。 注意quirks:Safari 在无痕模式下设置localstorge值时会抛出 QuotaExceededError 的异常。
21、如何在页面上实现一个圆形的可点击区域?
①map+area或者svg ②border-radius ③纯js实现 需要求一个点在不在圆上简单算法、获取鼠标坐标等等
22、CSS3有哪些新特性?
① CSS3实现圆角(border-radius:8px),阴影(box-shadow:10px); ② 对文字加特效(text-shadow、),线性渐变(gradient),旋转(transform); ③ transform:rotate(9deg) scale(0.85,0.90) translate(0px,-30px) skew(-9deg,0deg); //旋转,缩放,定位,倾斜 ④ 增加了更多的CSS选择器 多背景 rgba CSS3新增属性
Html5
1、Html5与html4相比,各有何优缺点? 怎样处理html5新标签的兼容性问题?
html5余html4的异同请看以下的链接 html5与html4的异同 兼容性问题 IE8/IE7/IE6支持通过document.createElement方法产生的标签,可以利用这一特性让这些浏览器支持HTML5新标签,浏览器支持新标签后,还需要添加标签默认的样式。当然也可以直接使用成熟的框架、比如html5shim。
Javascript
1、JS如何使页面跳转?怎么引入一个外部JS文件?
①直接在head标签内写入js代码,如下
②引入写好的js文件,使用语句
也是直接放入到head标签里头,也有的是放在
前面。
2、输入框的验证用什么事件?
change(fn)
3、undefined与null有何异同?
null是一个表示"无"的对象,转为数值时为0;undefined是一个表示"无"的原始值,转为数值时为NaN。undefined: (1)变量被声明了,但没有赋值时,就等于undefined。 (2) 调用函数时,应该提供的参数没有提供,该参数等于undefined。 (3)对象没有赋值的属性,该属性的值为undefined。 (4)函数没有返回值时,默认返回undefined。null: (1) 作为函数的参数,表示该函数的参数不是对象。 (2) 作为对象原型链的终点。它们都表示空,转换为boolean后都为false,但是null代表一个对象变量已经被初始化,但未装入对象;undefined表示未初始化变量
4、===与==有何异同?
相同点:都是判定两个值是否相等 不同点:==不会判断类型,而===会判断类型
5、如何判断一个变量的值是否为数字?以及有哪些手段判断变量值的数据类型?
全局函数isNaN可以判断一个变量的值是否为数字。 可以使用运算符type、instanceof判断变量值的数据类型。
6、什么是Bom什么是Dom?你如何理解Dom?
链接标记target与Dom,Bom
7、Array的join、push、splice、slice各有何用途,splice与slice有何异同?
join:使用指定间隔符连接所有元素为字符串 push:在尾部添加元素并维护array实例的length splice与slice都是截取一部分元素。不同的在于:slice返回截取后的新实例,splice在原array实例上操作,更详细的请见下文链接。 JS中数组对象详解
8、如何阻止表单提交?
在onsubmit事件中返回false
9、如何动态操作表格?
可以像普通dom一样操作,但是因为表格的dom比较复杂,所以我通常是使用table的insertRow、deleteRow及tr对象的insetCell、deleteCell操作。
10、String.match与RegExp.exec有何区别?
match只会返回没有分组的全部匹配结果或者有分组的第一次匹配结果; 而exec可以利用循环返回全部匹配结果。
11、为验证手机号写一个正则。
function checkSubmitMobil()
{
if ($("#phoneNum").val() == "") {
alert("手机号码不能为空!");
//$("#moileMsg").html("手机号码不能为空! ");
$("#mobile").focus();
return false;
}
if (!$("#phoneNum").val().match(/^(?:13\d|15\d|18\d)\d{5}(\d{3}|\*{3})$/))
{
alert("手机号码格式不正确!");
//$("#moileMsg").html("手机号码格式不正确!请重新输入! ");
$("#phoneNum").focus();
return false;
}
return true;
}
12、正则的i标记与g标记各有何用途?
i:不区分大小写; g:全局匹配。
13、为String添加trim()方法。
String.prototype.trim = function() {
return this.replace(/^ +| +$/g,"");
}
14、简述COOKIE。在JS中如何操作Cookie?
简述cookie,在JS中如何操作cookie
15、谈谈javascript数组排序方法sort()的使用,重点介绍sort()参数的使用及其内部机制。
JS数组排序方法sort()的使用
16、谈谈innerHTML outerHTML innerText之间的区别。
①innerHTML是w3c的html dom定义的方法,而后两者是IE独有的方法; ②innerHTML代表一个元素节点内由所有子节点,不包括当前节点组成的html代码; ③outerHTML代表一个元素节点内由所有子节点和当前节点组成的html代码; ④innerText代表一个元素节点内由所有子文本节点内容组成的文本;
17、在JavaScript中定时调用函数 foo() 如何写?
setTimeout(
foo,
1000 //这里设置延时数
);
18、setTimeout与setInterval有何区别?
①setTimeout和setInterval的语法相同。它们都有两个参数,一个是将要执行的代码字符串,还有一个是以毫秒为单位的时间间隔,当过了那个时间段之后就将执行那段代码。 ②不过这两个函数还是有区别的,setInterval在执行完一次代码之后,经过了那个固定的时间间隔,它还会自动重复执行代码,而setTimeout只执行一次那段代码。
19、你在js中用过array吗?如果用过,array中添加数据用什么方法?
在尾部添加使用push(); 在头部添加使用unshift(); 在任意位置添加使用splice(),但要注意把它的删除个数设置为0; array详细介绍请看下文链接 JS中数组对象详解
20、简述javascript的优缺点。
优点: 简单易用,与Java有类似的语法,可以使用任何文本编辑工具编写,只需要浏览器就可执行程序,并且事先不用编译,逐行执行,无需进行严格的变量声明,而且内置大量现成对象,编写少量程序可以完成目标;缺点: 不适合开发大型应用程序;
21、Javascript有哪些内置对象?
只有Math和Global(在浏览器环境中,Global就是Window)
22、列举Javascript的本地对象。
Object、Function、Array、String、Boolean、Number、Date、RegExp、Error、EvalError、RangeError、ReferenceError、SyntaxError、TypeError、URIError
23、javascript的typeof返回哪些数据类型
object number function boolean undefind string
24、例举3种强制类型转换和2种隐式类型转换?
强制(parseInt,parseFloat,number) 隐式(== – ===)
25、IE和DOM事件流的区别
①执行顺序不一样、 ②参数不一样 ③事件加不加on ④this指向问题
26、事件绑定和普通事件有什么区别
①事件绑定就是针对dom元素的事件,绑定在dom元素上 ②普通事件即为非针对dom元素的事件
27、事件委托是什么
利用事件冒泡的原理,让自己的所触发的事件,由他的父元素代替执行! 通俗的讲,事件就是onclick,onmouseover,onmouseout,等就是事件,委托呢,就是让别人来做,这个事件本来是加在某些元素上的,然而你却加到别人身上来做,完成这个事件。 例子请看以下链接 JS中的事件委托
28、闭包是什么,有什么特性,对页面有什么影响
什么是闭包 “官方”的解释:所谓“闭包”,指的是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。 在 Scala、Scheme、Common Lisp、Smalltalk、Groovy、JavaScript、Ruby、 Python、Go、Lua、objective c、swift 以及Java(Java8及以上)等语言中都能找到对闭包不同程度的支持。 通俗的讲就是函数a的内部函数b,被函数a外部的一个变量引用的时候,就创建了一个闭包。闭包的特性: ①.封闭性:外界无法访问闭包内部的数据,如果在闭包内声明变量,外界是无法访问的,除非闭包主动向外界提供访问接口; ②.持久性:一般的函数,调用完毕之后,系统自动注销函数,而对于闭包来说,在外部函数被调用之后,闭包结构依然保存在;对页面的影响 使用闭包会占有内存资源,过多的使用闭包会导致内存溢出等。 详细请看以下推荐链接 深入理解JavaScript的闭包特性 如何给循环中的对象添加事件
29、javascript的本地对象,内置对象和宿主对象
①本地对象为array obj regexp等可以new实例化 ②内置对象为gload Math 等不可以实例化的 ③宿主为浏览器自带的document,window 等
30、编写一个数组去重的方法
思路: 1.创建一个新的数组存放结果 2.创建一个空对象 3.for循环时,每次取出一个元素与对象进行对比,如果这个元素不重复,则把它存放到结果数组中,同时把这个元素的内容作为对象的一个属性,并赋值为1,存入到第2步建立的对象中。 说明:至于如何对比,就是每次从原数组中取出一个元素,然后到对象中去访问这个属性,如果能访问到值,则说明重复。 代码如下:
Array.prototype.unique3 = function(){
var res = [];
var json = {};
for(var i = 0; i < this.length; i++){
if(!json[this[i]]){
res.push(this[i]);
json[this[i]] = 1;
}
}
return res;
}
var arr = [112,112,34,'你好',112,112,34,'你好','str','str1'];
alert(arr.unique3());
31、this对象的理解
①this总是指向函数的直接调用者(而非间接调用者); ②如果有new关键字,this指向new出来的那个对象; ③在事件中,this指向触发这个事件的对象,特殊的是,IE中的attachEvent中的this总是指向全局对象Window;
32、eval是做什么的?
①它的功能是把对应的字符串解析成JS代码并运行; ②应该避免使用eval,不安全,非常耗性能(2次,一次解析成js语句,一次执行)。 ③由JSON字符串转换为JSON对象的时候可以用eval,var obj =eval('('+ str +')');
33、new操作符具体干了什么呢?
①创建一个空对象,并且 this 变量引用该对象,同时还继承了该函数的原型。 ②属性和方法被加入到 this 引用的对象中。 ③新创建的对象由 this 所引用,并且最后隐式的返回 this 。
34、call() 和 apply() 的区别和作用?
①apply()函数有两个参数:第一个参数是上下文,第二个参数是参数组成的数组。如果上下文是null,则使用全局对象代替。 如:function.apply(this,[1,2,3]); ②call()的第一个参数是上下文,后续是实例传入的参数序列。 如:function.call(this,1,2,3);
如何获取UA
JS代码
function whatBrowser() {
document.Browser.Name.value=navigator.appName;
document.Browser.Version.value=navigator.appVersion;
document.Browser.Code.value=navigator.appCodeName;
document.Browser.Agent.value=navigator.userAgent;
}
35、请解释一下 JavaScript 的同源策略
概念: 同源策略是客户端脚本(尤其是Javascript)的重要的安全度量标准。它最早出自Netscape Navigator2.0,其目的是防止某个文档或脚本从多个不同源装载。 这里的同源策略指的是:协议,域名,端口相同,同源策略是一种安全协议。指一段脚本只能读取来自同一来源的窗口和文档的属性。为什么要有同源限制? 我们举例说明:比如一个黑客程序,他利用Iframe把真正的银行登录页面嵌到他的页面上,当你使用真实的用户名,密码登录时,他的页面就可以通过Javascript读取到你的表单中input中的内容,这样用户名,密码就轻松到手了。
36、请描述一下 cookies,sessionStorage 和 localStorage 的区别?
cookie在浏览器和服务器间来回传递。 sessionStorage和localStorage不会 sessionStorage和localStorage的存储空间更大; sessionStorage和localStorage有更多丰富易用的接口; sessionStorage和localStorage各自独立的存储空间;
Ajax
1、什么是Ajax?
Ajax(Asynchronous JavaScript + XML),即异步JavaScript + XML的缩写,主要用来页面异步刷新,也是构建RIA的一种基础技术。
2、如何使用Ajax从服务器获取数据?
①创建XMLHttpRequest对象,注意兼容IE6的情况 ②使用XMLHttpRequest对象的open方法,其中有三个参数: a.字符串,代表html的请求:GET,POST。 b.要访问的服务器的URL。 c.Boolean值,true表示异步,flase表示同步,一般情况下是异步,默认为true。 ③ajax的回调函数。xhr.readyState==4表示请求已经结束,服务器响应完成。 status表示http请求的状态,200表示正常响应;404表示资源找不到;500表示服务器端错误。 ④发送ajax请求。如果没有数据,可以不传或者传递null;如果post请求传递数据:首先设置xhr的请求头信息:
xhr.setRequestHeader("Content-type","application/x-www-formurlencoded");
再传递参数:
xhr.send(name=liujianhong&password=123);
3、解释XMLHttpRequest是什么?
XMLHttpRequest是我们得以实现异步通讯的根本。最早在IE5 中以ActiveX组件实现;最近,Mozilla 1.0和Safari 1.2中实现为本地对象。XMLHttpRequest虽然不是W3C标准,但却得到了FireFox、Safari、Opera、Konqueror、IE等绝大多数浏览器的支持。
4、谈谈你对Ajax的理解。你在项目中如何使用Ajax?手写一个简单的Ajax操作。
Ajax(Asynchronous JavaScript + XML),即异步JavaScript + XML的缩写,主要用来页面异步刷新,也是构建RIA的一种基础技术。因为它涉及浏览器兼容、跨域等问题,在项目中一般会使用一些基础类库辅助实现,如jQuery等。 一个简单的Ajax操作如下。
var xhr = new XMLHttpRequest();
//在环境中需要做浏览器兼容,这里省略了
xhr.onreadystatechange = function() {
//这里注册当xhr状态发生改变后调用事件
if( xhr.readyState == 4 ) {
//通常在读取状态为4的时候才能获取到部分数据
所以一般状态在4的时候才进行处理
if(status==200) {
//当正常请求到资源时的处理,
可以调用xhr.responseText或xhr.responseXml获取数据
}
else {
//当请求资源失败时的处理
}
}
}
xhr.open( "GET", url);
//设置xhr的请求方式和url,这里使用的是GET方式,
//如果有参数,则连接在url后面
/*
如果是POST请求,还当设置请求的Content-Type
数据使用send作为参数发送
*/
xhr.send();
5、谈谈你对JSON的理解。
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。 它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。 这些特性使JSON成为理想的数据交换语言。 所以它往往在AJAX中替代XML,交换数据。
6、你的项目中有使用到跨域吗?你在项目中是如何处理JS跨域问题的?
①有。 ②主要是使用其它网站提供的javascript api如QQ。使用script的src可以直接读取跨域资源。 ③当然跨域还有其它处理方式:如代理服务器、改变domain、JSONP等。
7、你在项目中有使用到网页到服务器的即时通信吗?说说你都采用什么手段处理以及你所知道的处理办法?
没有用到,但我知道html的websockets、flash的socket、ajax长轮询等都可以实现。
8、你在AJAX中有遇到乱码吗?如果遇到,你是如何解决的?
①遇到过。 ②一般我首先统一页面和服务器编码,对请求和响应的Content-Type设置正确编码;对请求参数进行编码处理。
9、解释jsonp的原理,以及为什么不是真正的ajax
①Ajax与JSONP这两种技术看起来很像,目的也一样,都是请求一个url,然后把服务器返回的数据进行处理,因此jQuery等框架都把JSONP作为Ajax的一种形式。 ②实际上Ajax与JSONP有着本质上的不同。Ajax的核心是通过XMLHttpRequest获取数据,而JSONP的核心则是动态添加
你可能感兴趣的:(前端,javascript,css,vue.js,html)
微信小程序开发,底部选择器使用
浩宇软件开发
微信小程序开发入门 微信小程序 小程序
文章目录1.官方文档使用指南2.功能描述3.具体代码逻辑实现4.运行效果图5.关于作者其它项目视频教程介绍1.官方文档使用指南使用指南:https://developers.weixin.qq.com/miniprogram/dev/component/picker.html2.功能描述从底部弹起的滚动选择器通用属性属性类型默认值必填说明最低版本header-textstring否选择器的标题,仅
【探索前端技术之 React Three.js—— 简单的人脸动捕与 3D 模型表情同步应用】
智界工具库
react.js javascript 前端
大家好,我是智界工具库,致力于分享好用实用且智能的软件以及在JAVA语言开发中遇到的问题,如果本篇文章对你有所帮助请帮我点个小赞小收藏吧,谢谢喲!简介:React是一个用于构建用户界面的JavaScript框架,以其组件化的设计和高效的更新机制而闻名。Three.js则是一个基于JavaScript的3D图形库,能够轻松创建和渲染复杂的3D场景。当React与Three.js相遇,ReactThr
如何将json格式转换为dataframe格式
若木胡
json
介绍欢迎关注我的公众号《若木的解忧杂货铺》json格式JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式,它基于JavaScript语言的一个子集,但同时独立于任何编程语言。JSON格式易于人类阅读和编写,同时也易于机器解析和生成,这使得它成为理想的数据交换语言。JSON的基本格式JSON格式主要包括数值、字符串、数组、对象、对象数组和数组对象这几种类型。以下是
第18篇:python高级编程进阶:Web开发基础详解
猿享天开
python从入门到精通 python 开发语言
第18篇:Web开发基础内容简介本篇文章将为您介绍Web开发基础的核心概念和实用技能。您将了解Web开发的基本概念和流程,掌握HTTP协议的基础知识,学习如何使用Flask框架构建简单的Web应用,并深入理解路由与视图函数的工作原理。通过丰富的代码示例和实战案例,您将能够快速入门Web开发,搭建自己的第一个Web应用。目录Web开发概述什么是Web开发前端与后端开发Web开发的技术栈HTTP协议基
TypeScript中的可选参数与默认参数
t0_54manong
typescript ubuntu javascript 个人开发
在JavaScript中,函数的参数默认都是可选的,即使在定义函数时没有明确指出。而在TypeScript中,为了保证类型安全,函数的参数默认是必需的。不过,TypeScript也提供了可选参数和默认参数的功能,这使得函数的使用更加灵活。本文将详细介绍TypeScript中可选参数和默认参数的使用方法,并通过实例进行说明。可选参数在TypeScript中,可以通过在参数名后添加?来声明一个可选参数
【前端异常】JavaScript错误处理:分析 Uncaught (in promise) error
egzosn
前端 javascript 开发语言 ecmascript
在前端开发中,JavaScript异常是不可避免的。随着现代前端应用越来越多地使用异步操作(如Promise、async/await等),开发者常常会遇到Uncaught(inpromise)error错误。这个错误是由于未正确处理Promise的拒绝(rejection)而导致的,常常出现在异步操作失败的情况下。如果不妥善处理,可能会导致应用的不稳定和用户体验的下降。本文将深入分析Uncaugh
【前端异常】JavaScript错误处理:分析 Uncaught (in promise) error
egzosn
前端 javascript 开发语言 ecmascript
在前端开发中,JavaScript异常是不可避免的。随着现代前端应用越来越多地使用异步操作(如Promise、async/await等),开发者常常会遇到Uncaught(inpromise)error错误。这个错误是由于未正确处理Promise的拒绝(rejection)而导致的,常常出现在异步操作失败的情况下。如果不妥善处理,可能会导致应用的不稳定和用户体验的下降。本文将深入分析Uncaugh
【还没开始】每个前端开发人员都应了解的延迟数据
https://vercel.com/blog/latency-numbers-every-web-developer-s...
logback+kafka+ELK实现日志记录(操作)
酷酷的码农小哥
java kafka spring boot spring
logback+kafka+ELK实现日志记录前言环境准备配置Logbackpom文件改造新增logback-spring.xmlboot配置文件一下怎么去下载安装我就不多说了,直接上代码。日志平台业务思路用户请求进入后台根据搜索的参数去查询内容返回所有信息,返回json数据,当用户查看详情后根据查询到的内容里面的traceId去es里查询和traceId相等的所有日志信息最后返回给前端业务流程[
k8s中使用MySQL共享存储_k8s使用NFS做动态存储做mysql容器主从同步
罗-Moline
k8s中使用MySQL共享存储
k8s里面存储一直是比较难搞得,之前做的静态存储,写这篇文档记录一下动态存储创建的过程。使用动态存储的好处是开发者可以更关注自己的开发环境,不用关心后端的资源,还有就是更换存储类型不用做大的改变,只需切换一下storageclassName即可。根据这篇博客来的!谢谢博主!!!https://www.cnblogs.com/00986014w/p/9406962.html我把大致上思路分成三步:1
Vue 全局自适应大小:使用 postcss-pxtorem
前端程序猿i
vue.js postcss 前端
在现代前端开发中,响应式设计已经成为不可或缺的一部分。尤其是在移动设备的普及下,保证网页在各种屏幕尺寸下的显示效果变得尤为重要。Vue.js作为一个流行的前端框架,能够很方便地实现响应式设计。而在这方面,postcss-pxtorem是一个非常有用的工具,它可以将px单位自动转换为rem单位,从而实现更好的自适应布局。本文将介绍如何在Vue项目中使用postcss-pxtorem实现全局自适应大小
大模型GUI系列论文阅读 DAY2续2:《使用指令微调基础模型的多模态网页导航》
feifeikon
论文阅读
摘要自主网页导航的进展一直受到以下因素的阻碍:依赖于数十亿次的探索性交互(通常采用在线强化学习),依赖于特定领域的模型设计,难以利用丰富的跨领域数据进行泛化。在本研究中,我们探讨了基于视觉-语言基础模型的数据驱动离线训练方法,以改进网页代理的性能。我们提出了一种名为WebGUM的指令跟随多模态代理,该代理能够同时观察网页截图和HTML页面,并输出网页导航操作,例如点击和输入文本等。WebGUM通过
HTML常用标签
王磊鑫
html 前端 css
一.标题标签-1.HTML提供了6个等级的网页标题-二.段落和换行标签2.标签用于定义段落,它可以将整个网页分为若干个段落。特点:1)文本在一个段落中会根据浏览器窗口的大小自动换行。2)段落和段落之间保有空隙。3.换行标签,将某段文本强制换行显示。三、文本格式化标签1)加粗或者2)倾斜或者3)删除线或者4)下划线或者四、特殊标签1)和标签是没有语义的,它们就是一个盒子,用来装内容的。2)标签用来布
Vue全家桶 - 电商后台管理系统项目开发实录(详)
←か淡定☆ ヾ
前端 vue.js javascript html5 node.js css3
目录1.项目概述1.1电商项目基本业务概述1.2电商后台管理系统的功能1.3电商后台管理系统的开发模式(前、后端分离)2.项目初始化2.1前端项目初始化步骤码云相关操作2.2后台项目的环境安装配置3.登录/退出功能3.1登录概述3.2登录-token原理分析3.3实现登录功能3.4实现退出功能处理ESLint警告4.主页布局4.1后台首页基本布局4.2顶部布局,侧边栏布局4.2.1.顶部布局4.2
爬取电影天堂
越哥的女人
爬取每部电影的详细信息分析每页的url,可以得到规律是:第t页的url为:http://dytt8.net/html/gndy/dyzz/list_23_t.html于是可以先分析第一页,然后对页数进循环,就可得到所有最新电影的详细信息。fromlxmlimportetreeheaders={"User-Agent":"Mozilla/5.0(WindowsNT6.1;Win64;x64)Appl
python爬取电影天堂beautiful_Python爬虫 -- 抓取电影天堂8分以上电影
carafqy
看了几天的python语法,还是应该写个东西练练手。刚好假期里面看电影,找不到很好的影片,于是有个想法,何不搞个爬虫把电影天堂里面8分以上的电影爬出来。做完花了两三个小时,撸了这么一个程序。反正蛮简单的,思路和之前用nodejs写爬虫一样。爬虫的入口从分页的列表开始,比如美剧的列表第一页地址这样:http://www.ygdy8.net/html/gndy/oumei/list_7_1.html,
用 Java 发送 HTML 内容并带附件的电子邮件
五行星辰
业务系统应用技术 java html
实现思路首先,设置邮件服务器的相关属性,包括是否需要认证、使用的邮件协议、服务器地址、端口等。创建一个会话对象,使用Session.getInstance方法,并提供邮件服务器的属性和认证信息。创建一个MimeMessage对象作为邮件消息,设置发件人、收件人、邮件主题等信息。为了发送HTML内容,使用setContent方法并指定内容类型为text/html。对于附件,创建一个MimeMulti
Mathtype使用记录
白粥行
软件工具 Mathtype
1、把大括号中的公式左对齐https://jingyan.baidu.com/article/86fae346d436053c48121a50.html2、加粗字符https://www.mathtype.cn/jiqiao/mathtype-wjsjc.html3、修改公式编号todo4、插入省略号https://office.tqzw.net.cn/office/mathtype/21827.
搭建vue项目
LYy0
vue.js 前端 javascript
一、VueVue是一款用于构建用户界面的JavaScript框架。它基于标准HTML、CSS和JavaScript构建,并提供了一套声明式的、组件化的编程模型,帮助你高效地开发用户界面。无论是简单还是复杂的界面,Vue都可以胜任。二、环境1.nodejs环境:下载地址三、创建Vue应用创建的项目将使用基于Vite的构建设置,并允许我们使用Vue的单文件组件(SFC)。$npmcreatevue@l
【YashanDB知识库】非YCM方式的自动备份方案示例
数据库
本文内容来自YashanDB官网,原文内容请见https://www.yashandb.com/newsinfo/7281310.html?templateId=171...概述如果有YCM,推荐使用YCM自动备份,详情请参考YCM官方文档。但是如果没有YCM,则可通过crontab实现自动备份。目前示例的自动备份方案是每周的周3、周6的凌晨0点做全量备份;每天的凌晨2点做增量备份;每天的凌晨4点
vue项目开发总结——任务悬赏平台(前端)
boboj1
项目总结 Vue vue.js elementui 前端框架 前端 tailwindcss
项目简介:该项目实习中的第一个项目,该项目分为用户端、企业端、后台管理端。用户可以在任务大厅接受任务,每完成任务都会获得响应的报酬,用户只能接受一个任务,该任务完成后才能继续下一个任务。任务进行期间,该任务可以被企业取消,若企业取消用户正在完成的任务,则返回5%的奖励给用户。企业可以发布任务,发布任务之前需要上传企业认证凭证给后台管理端,后台管理员审核通过之后企业才可发布任务,企业可以对用户已完成
React 路由导航与传参详解
疯狂小料
react.js 前端 前端框架
随着单页面应用(SPA)已经成为主流。React作为最流行的前端框架之一,提供了强大的路由管理工具react-router-dom,帮助开发者轻松实现页面导航和传参。本文将详细介绍如何使用react-router-dom构建路由导航、传参以及嵌套路由的实现。1.构建路由导航1.1创建路由实例在React项目中,通常会在src目录下创建一个router文件夹来管理路由。我们可以使用react-rou
Exa CEO惊人预测:前端工程师三年内消失?数学家700天后失业?AI代码生成器时代来临!
前端
Exa公司CEO威廉·布里克近日做出了一个惊人的预测:前端工程师将在三年内消失,而数学家则只有700天的时间!这个预测的背后,是英伟达千万美元投资以及对AI技术突破的深刻观察。那么,这个大胆的预测究竟有多少可信度呢?AI代码生成器等工具的兴起,又将如何重塑前端开发和数学领域?让我们深入探讨。AI对前端开发的颠覆性影响布里克的预测并非空穴来风。近年来,AI在代码生成领域的进步日新月异。例如,Scri
html两级地区选择级联,index.html · RockYang/JAreaSelect-js省市区级联选择插件 - Gitee.com...
猫咪兔兔
html两级地区选择级联
地区选择插件.form-control{margin-right:5px;}传统表单selectUI样式获取地址仿京东UI样式选择区域vararea=$("#area-select-box").JAreaSelect({prov:1,city:72,dist:2839,level:3});$(".btn-success").on('click',function(){$(this).text(ar
如何使用 Emmet 快捷方式提高开发效率
木觞清
javascript html5 css3
前端开发是一个高度依赖效率的领域,开发者们常常需要处理大量的HTML和CSS代码。为了解决重复工作和提高开发效率,Emmet快捷方式应运而生。Emmet作为一款强大的前端工具,能够通过简化的快捷命令快速生成HTML和CSS结构,极大地提升了开发者的编码速度。本文将介绍如何在日常开发中使用Emmet,帮助你节省宝贵的时间。什么是Emmet快捷方式?Emmet是一款广泛应用于前端开发的插件,它通过一系
freebsd12 安装gnome3图形界面
sayang_shao
FreeBSD FreeBSD12 gnome3 freebsd12
1、准备工作注:由于我是在实体机上做的所以没有提供截图。也可以访问官方文档进行安装:https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/x11-wm.html已经安装完Freebsd12系统可以联网2、开始安装pkg更新#pkgupdate安装显卡驱动(本机为intel)#pkginstallxf86-video-intel开启li
vue - 实现省市区的级联选择
紫菀檀ss
vue js javascript vue.js
最近要实现一个省市区级联选择效果,省市区的数据都是使用的本地数据,实现起来逻辑会有一点复杂,我在这里列举PC端的总结分享一下,移动端的代码也是差不多的,除了html之外,其它的可以复制根据需求使用即可。希望对大家有所帮助。一、效果图 PC端的效果图: 移动端的效果图:二、实现逻辑 我这里的实现逻辑是先通过省份来获取城市,然后通过城市来获取区县,街道因为不是固定的,所以让用户自己输入。获取
JavaScript高级学习:ES6新特性07——数组在ES6中的使用
北凉冬
JavaScript javascript es6
提示:本文为JavaScript栏目:JavaScript高级系列——ES6新特性章节第七章JavaScript高级学习:ES6新特性07——数组在ES6中的使用前言数组在ES6中的使用求数组的最大值ES5的方式求数组最大值ES6的方式使用数组扩展运算符求最大值ES6扩展运算符的使用扩展运算符传参扩展运算符操作伪数组复制数组传统复制数组ES6中使用扩展运算符复制数组ES5中复制数组合并数组ES6方
uniapp或小程序使用jsencrypt
钢铁熊猫33
小程序 前端 uniapp 小程序 jsencrypt rsa
uniapp或小程序使用报错jsencrypt.js使用了window对象,app、小程序中没有窗口对象的环境解决办法在jsencrypt.js文件插入以下代码varnavigator2={appName:'Netscape',userAgent:'Mozilla/5.0(iPhone;CPUiPhoneOS9_1likeMacOSX)AppleWebKit/601.1.46(KHTML,like
【AI日志分析】基于机器学习的异常检测:告别传统规则的智能进阶
网罗开发
AI 大模型 人工智能 机器学习
网罗开发(小红书、快手、视频号同名) 大家好,我是展菲,目前在上市企业从事人工智能项目研发管理工作,平时热衷于分享各种编程领域的软硬技能知识以及前沿技术,包括iOS、前端、HarmonyOS、Java、Python等方向。在移动端开发、鸿蒙开发、物联网、嵌入式、云原生、开源等领域有深厚造诣。图书作者:《ESP32-C3物联网工程开发实战》图书作者:《SwiftUI入门,进阶与实战》超级个体:CO
二分查找排序算法
周凡杨
java 二分查找 排序 算法 折半
一:概念 二分查找又称
折半查找(
折半搜索/
二分搜索),优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而 查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表 分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步
java中的BigDecimal
bijian1013
java BigDecimal
在项目开发过程中出现精度丢失问题,查资料用BigDecimal解决,并发现如下这篇BigDecimal的解决问题的思路和方法很值得学习,特转载。
原文地址:http://blog.csdn.net/ugg/article/de
Shell echo命令详解
daizj
echo shell
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
java spring
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
java spring
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
socket C#
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
sql WEB安全 yii
网站表单有注入漏洞须对所有用户输入的内容进行个过滤和检查,可以使用正则表达式或者直接输入字符判断,大部分是只允许输入字母和数字的,其它字符度不允许;对于内容复杂表单的内容,应该对html和script的符号进行转义替换:尤其是<,>,',"",&这几个符号 这里有个转义对照表:
http://blog.csdn.net/xinzhu1990/articl
MongoDB简介[一]
eksliang
mongodb MongoDB简介
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
java jvm jdk
简单的说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
hive hive元数据结构
关键字: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主要包含这些更新内容。