Ajax
- 什么是Ajax?
- 怎么用?
什么是Ajax?
- ASynchronous JavaScript And XML 异步的JavaScript 和 XML
- 理解客户端和服务端的 异步通信和同步通信
- 异步通信: 在客户端向服务端发起请求后,服务端还未响应之前,客户端可以继续做自己的事情。对客户端来说,可以实现局部刷新的效果
- 同步通信:客户端必须等待服务器端的响应。在等待的期间客户端不能做其他操作
- Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术
- 传统的网页(不使用 Ajax)如果需要更新内容,必须重载整个网页页面
怎么用?
- 原生的JS实现方式
JQuery方式
$.ajax()
- 语法 :$.ajax({键值对})
$.ajax({
url:"ajaxServlet1111" , // 请求路径
type:”POST” , //请求方式
//data: “username=jack&age=23”,//请求参数
data:{“username”:”jack”,”age”:23},
success:function (data) {
alert(data);
},//响应成功后的回调函数
error:function () {
alert(“出错啦…”)
},//表示如果请求响应出现错误,会执行的回调函数
dataType:”text”//设置接受到的响应数据的格式
});
$.get()
- 语法:$.get(url, [data], [callback], [type])
- url:请求路径
data:请求参数
callback:回调函数
type:响应结果的类型
- url:请求路径
- 语法:$.get(url, [data], [callback], [type])
- $.post()
- …
JSON
- 什么是JSON?
- 怎么用?
什么是JSON?
- 概念: JavaScript Object Notation JavaScript对象表示法
- 多用于存储和交换文本信息,进行数据传输
- 比xml更小,更快和易于解析
怎么用?
- 键值对构成
- 键用引号,也可以不用引号引起来
- 值的类型有:
1.数字(整数或浮点数),直接写
2. 字符串(在双引号中)
3. 逻辑值(true 或 false)
4. 数组(在方括号中) {“persons”:[{},{}]} —:注意
5. 对象(在花括号中) {“address”:{“province”:”陕西”….}} —:注意
6. null
- 获取数据:
- json对象.键名
- json对象[“键名”]
- 数组对象[索引]
- 遍历
- JSON转为Java对象(比较少用)
- Java对象转换JSON(常见)
- 使用
- 导入jackson的相关jar包
- 创建Jackson核心对象 ObjectMapper
- 调用ObjectMapper的相关方法进行转换
- 转换方法
- writeValue(参数1,obj):
- 参数1
- File:将obj对象转换为JSON字符串,并保存到指定的文件中
- Writer:将obj对象转换为JSON字符串,并将json数据填充到字符输出流中
- OutputStream:将obj对象转换为JSON字符串,并将json数据填充到字节输出流中
- 注解
- @JsonIgnore:排除属性 —:比如我不要将Person对象中的日期转成JSON
- @JsonFormat:属性值得格式化 —: @JsonFormat(pattern = “yyyy-MM-dd”)
- 复杂java对象转换
- List:结果是数组
- Map:结果与对象格式一致
- 转换方法
- 使用
- 案例:
- 校验用户名是否可用
- 该用户名太受欢迎
- 该用户名可用
- 校验用户名是否可用