webAJAX概述.

1.1什么是AJAX.

  • Ajax即AsynchronousJavascript And XML:异步数据回调。

  • 使用Ajax技术网页应用能够快速地将更新呈现在用户界面上,不需要重载(刷新)整个页面【只刷新局部】,这使得程序能够更快地回应用户的操作。、

webAJAX概述._第1张图片


1.2为什么需要AJAX.

  • 在我们之前的开发,每当用户向服务器发送请求,哪怕只是需要更新一点点的局部内容,服务器都会将整个页面进行刷新,这么做的问题有两点:

    • 性能会有所降低(一点内容就需要刷新整个庞大的页面);

    • 用户的操作页面会中断(整个页面被刷新了)。

  • 而基于ajax可以使用Javascript技术向服务器发送异步请求,因为异步请求,这可以使我们在不刷新页面的前提下拿到后端数据,完成页面的局部刷新,给用户的感受是在不知不觉中完成请求和响应过程。


1.3同步和异步的区别.

  • 同步交互:客户端发出一个请求后,需要等待服务器响应结束后,才能发出第二个请求;

  • 异步交互:客户端发出一个请求后,无需等待服务器响应结束,就可以发出第二个请求。


2.基于jQuery实现AJAX语法.

2.1语法1-$.ajax(url,[settings]).

  • url:一个用来包含发送请求的URL字符串;

  • settings里面的参数如下:

    • type:请求方式 (“POST” 或 “GET“[默认])

    • data:发送到服务器的数据,例如:key1=value1key2=value2 或 {key1: 'value1', key2: 'value2'} ;

    • dataType:期望服务器返回的数据类型(json、text、xml、html、script......);

    • success(data):请求成功的回调函数   data:服务器返回的数据(响应);

    • error:请求失败的回调函数。


2.2语法2-$.get/post(url, [data], [callback], [type]).

  • url:发送请求地址。

  • data:待发送 Key/value 参数。例如: {key1: 'value1', key2: 'value2'}

  • type:预期服务器返回的数据类型,xml, html, script, json, text......

  • callback:发送成功时回调函数。


3.案例演示.

3.1AJAX实现登陆.

3.1.1login.jsp.

  • 界面排版:

webAJAX概述._第2张图片

  • $.ajax() 方式发送ajax请求:

webAJAX概述._第3张图片

  • $.post() 方式发送ajax请求:

webAJAX概述._第4张图片


3.1.2LoginServlet.

webAJAX概述._第5张图片


3.2AJAX优化加入购物车功能.

  • 以前端 index.jsp页面的加入购物车功能为例。

3.2.1index.jsp.

webAJAX概述._第6张图片webAJAX概述._第7张图片


3.2.2HomeInsertCartServlet.

  • 后台不再向加载数据的servlet跳转,而是向前端响应添加成功与否的信息。如:

webAJAX概述._第8张图片


3.3AJAX优化购物车修改数量功能.

3.3.1业务分析.

  • 原先:cart.jsp → HomeUpdateCartServlet → HomeLoadCartServlet → cart.jsp;

  • ajax方式:cart.jsp → HomeUpdateCartServlet → cart.jsp。


3.3.2cart.jsp.

  • 修改完商品数量后跳转到 HomeUpdateCartServlet,在 HomeUpdateCartServlet里面执行修改业务逻辑,执行成功后计算出商品的价格小计和购物车价格总计,并且输出到前端。由于 out.print() 一次只能往前端输出一个值,所以需要在后台把商品价格小计和购物车总计通过符号拼接到一起,形成一个字符串,然后把该字符串输出到前端,前端接收字符串后,通过split进行切割,分别提取出里面的商品价格小计和购物车价格总计。

webAJAX概述._第9张图片webAJAX概述._第10张图片webAJAX概述._第11张图片


3.3.3HomeUpdateCartServlet.

你可能感兴趣的:(servlet,ajax,前端)