认识Ajax:Ajax可以使用js来更好的实现于数据交互。一般的jsp请求和等待响应都需要较长的时间,并且响应返回的是一个全新的页面,导致web用户体验不佳。Ajax通过XMLHTTpRequest对象和js脚本,对请求和响应的数据进行处理。web表单页面与服务器之间的数据交互只涉及相关的数据。本质上来说Ajax可以优化请求和响应的数据优化。
传统web技术与Ajax技术的区别:
对上图的解析:
传统web技术:web表单的内容form表单数据请求发送到服务器端,服务器端可能是servlet之类的逻辑处理,然后通过将处理的结果放置到jsp内置对象中,重定向或者跳转至jsp界面显示出来。此时重新加载一个jsp,会导致客户看起来的响应过程慢。
Ajax技术:Web表单的数据请求发送,通过XMLHTTPRequst对象和javascript处理,然后js发服务器处理后再响应返回数据,其中处理过程相当于对用户隐藏,无影响。可以通过异步的办法,用户可以一边操作,数据一边处理,页面的加载数据只是针对部分需要的数据,而不是全新加载jsp,所以看起来会流畅很多。
Ajax发送请求:request = new XMLHTTPRequest();不同的浏览器生成XMLHTTPRequest方法不同。
Ajax处理响应:对于处理好的数据的响应Ajax自动根据XMLHTTP的状态自动赋值返回,响应内容为XMLHTTPRequest.responseText
if(XMLHTTPState,readyState==4){ //状态成功
response= XMLHTTPRequest.responseText;(响应的内容)
}