JavaEE

tech2025-11-10  5

Ajax

同步现象:

客户端发送请求到服务器端,当服务器返回响应之前,客户端都处于等待卡死状态

异步现象:

客户端发送请求到服务器端,无论服务器是否返回响应,客户端都可以随意做其他事情,不会被卡死

Ajax的运行原理

页面发起请求,会将请求发送给浏览器内核中的Ajax引擎,Ajax引擎会提交请求到服务器端,在这段时间里,客户端可以任意进行任意操作,直到服务器端将数据返回给Ajax引擎后,会触发你设置的事件,从而执行自定义的JS逻辑代码完成某种页面功能。(注意:可能导致方法内部的ajax返回值未返回,方法就返回了,此时要用同步)

Json

JSON的作用: • 使用Ajax进行前后台数据交换 • 移动端与服务端的数据交换

json有两种格式:

1) 对象格式:{"key1":obj,"key2":obj,"key3":obj...} 2) 数组/集合格式:[obj,obj,obj...]

例如: user对象,用JSON数据格式表示

{"username":"zhangsan","age":28,"password":"123","addr":"北京"}

List 用JSON数据格式表示

[{"pid":"10","pname":"小米4C"},{},{}]

注意:对象格式和数组格式可以互相嵌套,互相包含 注意:JSON的key是字符串,JSON的value是Object

JSON的解析: JSON是JS的原生内容,也就意味着js可以直接取出json对象中的数据。

jackson

Flag flag = new Flag(); ObjectMapper mapper = new ObjectMapper(); mapper.writeValue(response.getOutputStream(), flag); 直接传出的就是json

JQuery的Ajax技术

$.get(url, [data], [callback], [type])只能发送异步请求, 默认字符集:utf-8

$.post(url, [data], [callback], [type])只能发送异步请求, 默认字符集:utf-8 其中:

url:代表请求的服务器端地址 data:代表请求服务器端的数据(可以是key=value形式也可以是JSON格式) callback:表示服务器端成功响应所触发的函数(只有正常成功返回才执行) type:表示服务器端返回的数据类型(JQuery会根据指定的类型自动类型转换);常用的返回类型:text、json、html等。

$.ajax( { option1:value1,option2:value2... } ) 最底层的方法 常用的option有如下: async:是否异步,默认是true代表异步 data:发送到服务器的参数,建议使用JSON格式 dataType:服务器端返回的数据类型,常用text和JSON success:成功响应执行的函数,对应的类型是function类型 type:请求方式,POST/GET url:请求服务器端地址 error:失败的回调函数,对应的类型是function类型

最新回复(0)