作用: 发送请求获取响应数据。 AJAX 是一种用于创建快速动态网页的技术。
通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在
不重新加载整个网页
的情况下,对网页的
某部分进行更新
。
传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。
其他脚本:
JQuery封装了Ajax函数
Vue封装了Ajax函数
原生Ajax封装
// 定义一个函数,这个函数用来发送ajax请求
function ajax(options) {
// 创建 ajax 对象
var xhr = new XMLHttpRequest()
// 配置 ajax 对象
// xhr.open('请求方式','请求地址')
xhr.open(options.type, options.url)
// 发送请求
xhr.send()
// 监听xhr 对象下面的 onload 事件
// 当xhr 接收完响应数据后触发
xhr.onload = function() {
options.success(xhr.responseText)
}
}
// 调用 ajax() 函数,需要传递参数
ajax({
// type 代表请求方式
type: 'get',
// url 代表请求地址
url: 'http://localhost:3000/first',
// 具体解释在下面
success: function(data) {
console.log('这里是success函数:' + data);
}
})
JSON
1.什么是JSON?
JSON是js提供的一种数据交换格式
JS对象:
var obj ={“name”:”zhangsan”,”age”:12,”sex”:”男”};
JSON对象
“{“name”:”zhangsan”,”age”:12,”sex”:”男”}”
故此,所谓的
json其实js对象格式的一种字符串
JSON语法:
{}: 是对象!
> 属性名必须使用双引号括起来!单引号不行!
> 属性值:
*数值(整数或者浮点数)
*null
*字符串
*数组: 使用[]括起来
*boolean值:true和false
JSON与XML
-可读性:XML更强 -解析难度:json本身就是js对象,解析简单。 -流行度:XML流行度高,但是在AJAX领域,JSON更方便。
2.GSON的使用
1.bean转换json
Gson gson = new Gson(); String json = gson.toJson(obj);
2.json转换bean
Gson gson = new Gson(); String json = "{\"id\":\"2\",\"name\":\"Json技术\"}"; Book book = gson.fromJson(json, Book.class);
3.复杂的json转换为bean
Gson gson = new Gson(); String json = "[{\"id\":\"1\",\"name\":\"Json技术\"},{\"id\":\"2\",\"name\":\"java技术\"}]"; List list = gson.fromJson(json,new TypeToken<LIST>() {}.getType()); Set set = gson.fromJson(json,new TypeToken<SET>() {}.getType());
FastJSON使用
1.bean转换json
Book book = new Book("S0001","Java编程从基础"); String json = JSON.toJSONString(book);
2.json转换bean
String json = "{\"id\":\"2\",\"name\":\"Json技术\"}"; Book book = JSON.parseObject(json, Book.class);
3.json转换复杂的bean
String json = "[{\"id\":\"1\",\"name\":\"Json技术\"},{\"id\":\"2\",\"name\":\"java技术\"}]"; List list = JSON.parseObject(json,new TypeReference<ARRAYLIST>(){}); Set set = JSON.parseObject(json,new TypeReference<HASHSET>(){});