Html5加载大量单数据用XMLHttpRequest性能不佳

html-css030

Html5加载大量单数据用XMLHttpRequest性能不佳,第1张

你这个情况和XMLHttpRequest完全无关。 性能影响最大的是操作DOM, 你一次性往DOM里面加载了几MB的数据, 我很难想象DOM得假死成什么样子。

你这个情况要么服务器按页返回数据, 一页几十条这样。 要么使用setTimeout 按 200毫秒分批次把数据插入到DOM里面。

不能。html5是一个页面显示的语言,他是html4标准的延伸,本质上,他就是为了显示页面。html5其实就是增加了许多动态显示的标签,本质上是为了页面显示更美观,可以显示更多的功能。虽然html5增加了本地数据库支持,但是并不能取代服务端数据库,除非这不是一个网络应用。html5或者说html是一个前台展示语言。

jsp是javaWeb的一个规范,他的本质是servlet。jsp其实就是把servlet和html结合在一起了。当jsp被编译的时候,会被编译成一个servlet的class,而里面的显示页面的html语句会被out出来。简单来说jsp是为了接收后端数据,输出到前端的一个技术。除了jsp,java还可以使用velocity、Freemaker模版等技术结合html来显示页面。

就是说jsp技术和html是不可分割的,使用jsp来显示一个页面时,必须使用html技术,当然也可以是html5。只不过html被整合在jsp里面或者说jsp其实就是servlet和html的结合体,并且html和servlet是版本无关的,就是说你只要使用html就可以,至于是哪个版本无所谓。

前端通过接口去访问服务器,服务器通过脚本去取数据库里的数据,并将数据组织成xml或者json数据格式发送给前端,前端使用一个操作句柄进行接收。技术就是采用ajax。可以使用jquery封装好的$.ajax去异步获取后台的数据。

直接百度ajax用法:

$.ajax({

type: "POST",

url: url,

data:{},//数据

async: false,//同步

dataType: 'json',

success: function (data) {

alert(JSON.stringify(data))

},

error: function (XMLHttpRequest, textStatus, errorThrown) {

alert("报错")

}

})