Test
/*
* {
"code": 1,
"datas": [{
"address": "深圳",
"age": 18,
"email": "123@qq.com",
"nickName": "小明",
"phoneNumber": "11111111111",
"sex": "男"
}, {
"address": "广州",
"age": 21,
"email": "234@qq.com",
"nickName": "小红",
"phoneNumber": "22222222222",
"sex": "女"
}, {
"address": "北京",
"age": 19,
"email": "453@qq.com",
"nickName": "小黑",
"phoneNumber": "33333333333",
"sex": "男"
}, {
"address": "杭州",
"age": 18,
"email": "789@qq.com",
"nickName": "小强",
"phoneNumber": "44444444444",
"sex": "男"
}],
"msg": "成功"
}
*/
System.out.print(str);
/*
fastJson 方式
*/
ResponseResult<List<UserInfo>> responseResult1 = JSON.parseObject(str, new TypeReference<ResponseResult<List<UserInfo>>>() {});
System.out.print(responseResult1);
/*
Gson方式
*/
Gson gson = new Gson();
ResponseResult<List<UserInfo>> responseResult2 = gson.fromJson(str , new TypeToken<ResponseResult<List<UserInfo>>>(){}.getType());
System.out.print(responseResult2);包装泛型实体类
public class ResponseResult<T> {
/**
* 服务器返回标识
*/
private int code;
/**
* 描述
*/
private String msg;
/**
* 请求成功之后的数据
*/
private T datas;
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public T getDatas() {
return datas;
}
public void setDatas(T datas) {
this.datas = datas;
}
}
实体类
public class UserInfo {
private String nickName;
private Integer age;
private String sex;
private String address;
private String email;
private String phoneNumber;
public String getNickName() {
return nickName;
}
public void setNickName(String nickName) {
this.nickName = nickName;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPhoneNumber() {
return phoneNumber;
}
public void setPhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}
}

本文介绍了一种使用Java进行JSON解析的方法,并展示了如何通过自定义的封装类来处理解析后的数据。文中提供了两种不同的解析方式:一种是使用FastJson库,另一种则是使用Gson库。同时,还给出了具体的响应结果类和用户信息类的定义。
1374

被折叠的 条评论
为什么被折叠?



