文章17 | 阅读 10269 | 点赞0
本文内容大多基于官方文档和网上前辈经验总结,经过个人实践加以整理积累,仅供参考。
1 手动实现字符串的反序列化实际上使用的是 com.google.gson.stream.JsonReader 类
@Test
public void test() throws IOException {
String jsonStr = "{\"account\":\"admin\",\"password\":\"123456\",\"name\":\"John\",\"age\":30}";
User user = new User();
JsonReader reader = new JsonReader(new StringReader(jsonStr));
reader.beginObject();
while (reader.hasNext()) {
String name = reader.nextName();
switch (name) {
case "account":
user.setAccount(reader.nextString());
break;
case "password":
user.setPassword(reader.nextString());
break;
case "name":
user.setName(reader.nextString());
break;
case "age":
user.setAge(reader.nextInt());
break;
default:
break;
}
}
reader.endObject();
System.out.println(user);
reader.close();
}
运行结果:
2 手动实现字符串的序列化实际上使用的是 com.google.gson.stream.JsonWriter 类
@Test
public void test() throws IOException {
JsonWriter writer = new JsonWriter(new OutputStreamWriter(System.out));
writer.beginObject()
.name("account").value("admin")
.name("password").value("123456")
.name("name").value("John")
.name("age").value(30)
.endObject();
writer.flush();
writer.close();
}
运行结果:
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/Silent_Paladin/article/details/54097237
内容来源于网络,如有侵权,请联系作者删除!