Java实体类对象,JSON字符串,JSON之间的相互转换Java实体类定义
在实际使⽤中⼀般是数据库对应的实体类,运⽤⼯具⽣成就好,如mybatis-generator
import Serializable;
public class User implements Serializable {
private Integer id;
private String username;
private String password;
private static final long serialVersionUID =1L;
public Integer getId(){
return id;
}
public void setId(Integer id){
this.id = id;
}
public String getUsername(){
return username;
}
public void setUsername(String username){
this.username = username ==null?null: im();
}
public String getPassword(){
return password;
}
public void setPassword(String password){
this.password = password ==null?null: im();
}
@Override
public String toString(){
StringBuilder sb =new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");json转换对象
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", username=").append(username);
sb.append(", password=").append(password);
sb.append(", serialVersionUID=").append(serialVersionUID);
sb.append("]");
String();
}
}
Fastjson相关介绍
⽀持类型:⽀持java bean、集合、Map、⽇期、Enum,⽀持范型,⽀持⾃省
常⽤对象:
JSON:fastJson的解析器,⽤于JSON格式字符串与JSON对象及javaBean之间的转换。
JSONObject:fastJson提供的json对象。
JSONArray:fastJson提供json数组对象。
JSON格式字符串、JSON对象及JavaBean之间的相互转换
1. Java对象转JSON对象
JSONObject jsonObj =(JSONObject) JSON(data);
JSON json =(JSON) JSON(data)
2. JSON对象转Java对象
User user = JavaObject(jsonOBj,User.class);
3. Java对象转JSON字符串
String jsonStr = JSONString(User);
4. JSON字符串转Java对象
/
/或者将⽅法parseObject换成toJavaObject
//⽅式1
User user = JSON.parseObject(jsonStr, User.class);
//⽅式2
User user = JSON.parseObject(jsonStr,new TypeReference<User>(){})
5. JSON字符串转JSON对象
JSONObject jsonObject = JSON.parseObject(jsonStr);
//获取json中value为string的值
String value = String("key");
//获取json中value为json的值
JSONObject valueJson = JSONObject("key")
6. JSON对象转JSON字符串
String jsonStr = String();
注:特殊的json类型如jsonArray⽤getJSONArray从JSON字符串中变为Object,将其转为list对象时,可使⽤paseObject,parseArray从字符串化的array中获取。⽤法详细见第4项:JSON字符串转java对象