java代码如何实现对象和json之间的互相转换呢?
下文笔者将讲述对象和json之间的相互转换方法分享,如下所示
对象与json互转
实现思路:
使用gson-2.8.0.jar包
即可实现对象和json之间的相互转换
如:
使用gson.fromJson将json字符串转换为对象
使用gson.toJson将对象转换为json字符串
使用gson将对象和json字符串互转的示例分享
public class User {
private String id;
private String username;
public User(String id, String username) {
this.id = id;
this.username = username;
}
@Override
public String toString() {
return "User{" +
"id='" + id + '\'' +
", username='" + username + '\'' +
'}';
}
}
public class Test {
public static void main(String[] args) {
//将对象转换成json格式的字符串
User user = new User("1", "猫猫");
Gson gson = new Gson();
String s = gson.toJson(user);
System.out.println("将对象转换成json格式的字符串\t\t"+s);
//将json格式的字符串转对象,底层是通过反射来完成的
User user1 = gson.fromJson(s, User.class);
System.out.println(user1);
//将list集合转换成json格式的字符串
ArrayList<User> list = new ArrayList<>();
list.add(new User("1","禹宙"));
list.add(new User("2","圆圆"));
list.add(new User("3","鱼鱼"));
String s1 = gson.toJson(list);
System.out.println(s1);
//将list类型的json格式的字符串转成对象
Type type = new TypeToken<ArrayList<User>>() {
}.getType();
Object o = gson.fromJson(s1, type);
System.out.println(o);
//将map集合转成json格式的字符串
HashMap<String, String> hashMap = new HashMap<>();
hashMap.put("a","琳琳");
hashMap.put("b","李彩");
hashMap.put("c","小何");
String s2 = gson.toJson(hashMap);
System.out.println(s2);
//将map类型的json格式的字符串转成对象
Type type1 = new TypeToken<HashMap<String, String>>() {
}.getType();
Object o1 = gson.fromJson(s2, type1);
System.out.println(o1);
}
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


