原生JS方式实现Ajax
JQuery方式实现Ajax
- . a j a x ( ) 语 法 : .ajax() 语法: .ajax()语法:.ajax({键值对});
$.ajax({
url:"${pageContext.request.contextPath}/test1.do",//请求路径
type:"POST",//请求类型
data:{"username":"jack","age":"23"},
success:function(data){
alert(data);
},//响应成功后的回调函数
error:function () {
alert("出错啦")
},//如果请求出现错误,会执行回调函数
dataType:"text"//设置接收到的响应数据的格式
});
-
.
g
e
t
(
)
:
发
送
g
e
t
请
求
语
法
:
.get():发送get请求 语法:
.get():发送get请求语法:.get(url,[data],[callback],[typr])
参数:
url:请求路径
data:请求参数
callback:回调函数
type:响应结果的类型
$.get(
"${pageContext.request.contextPath}/test1.do",
{username:"rose"},
function(data){
alert(data);},
"text"
);
- $.post()
post和get类似
JSON基础语法
概念:JavaScript Object Notation(JavaScript对象表示法)
var p = {“name”:“张三”,“age”:23,“gender”:"男“};
*json现在多用于存储和交换文本信息的语法
*进行数据的传输
*json比XML更小、更快、更易解析
------语法
1.基本规则
a.数据在名称/值对中:json数据是由键值对构成的
键用引号引起来,也可以不使用引号
键值的类型{
1.数字(整数或浮点数)
2.字符串(在双引号中)
3.逻辑值(true或false)
4.数组(在方括号中){“person”:[{},{}]}
5.对象(在花括号中){“address”:{“province”:“山西”,“山东”…}}
6.null}
b.数据由逗号分隔:多个键值对由逗号分隔
c.花括号保存对象:使用{}定义json格式
d.方括号保存数组
2.获取数据
1.json对象.键名
2.json对象[“键名”]
3.数组对象[索引]
3.JSON数据和java对象的相互转换
JSON解析器
JSON解析器
常见的解析器:Jsonlib,Gson,fastjson,jackson
1.JSON转为java对象
1.导入jackson的相关jar包
2.创建jackson核心对象 ObjectMapper
3.调用ObjectMapper的相关方法进行转换
readValue(json字符串数据,Class)
2.java对象转JSON
使用步骤:
1.导入jackson的相关jar包
2.创建jackson核心对象 ObjectMapper
3.调用ObjectMapper的相关方法进行转换
1.转换方法:
User user = new User();
user.setId(1);
user.setName("jack");
user.setPassword("123456");
ObjectMapper mapper = new ObjectMapper();
/**
* 转换方法:writeValue(参数1,obj)
* 参数1:
* File:将obj对象转换为JSON字符串,并保存到指定的文件中
*Writer:将obj对象转换为JSON字符串,并将json数据填充到字符输出流中
*OutputStream:将obj对象转换为Json
* writeValueAsString(obj):将对象转为json字符串
*/
String json = mapper.writeValueAsString(user);
System.out.println(json);
2.注解:
@JsonIgnore:排除属性
@JsonFormat:属性值的格式化(@JsonFormat(pattern=“yyyy-MM-dd”))
3.复杂java对象转换
a.List:数组
b.Map:对象格式一致