Gson和fastJson的使用
2020-02-13 22:15
253 查看
1) Gson是Google开源的Json转换工具
Gson的说明:
https://google.github.io/gson/apidocs/com/google/gson/Gson.html
这个是Gson的官方API,非常简洁的说明了Gson的使用:
Here is an example of how Gson is used for a simple Class:
Gson gson = new Gson(); // Or use new GsonBuilder().create(); MyType target = new MyType(); String json = gson.toJson(target); // serializes target to Json MyType target2 = gson.fromJson(json, MyType.class); // deserializes json into target2
上述例子是来自官方的一个例子,展示了将一个Object的序列化和反序列化的过程
Type listType = new TypeToken<List<String>>() {}.getType(); List<String> target = new LinkedList<String>(); target.add("blah"); Gson gson = new Gson(); String json = gson.toJson(target, listType); List<String> target2 = gson.fromJson(json, listType);
上述例子是来自官方的一个例子,展示了将一个列表序列化和反序列化的过程
HashMap<String,String>map = new HashMap<String, String>(); map.put("name", "PoorGuy"); map.put("age", "18"); map.put("address", "XXXX"); String info = new Gson().toJson(map); System.out.println(info); HashMap<String,String>map1 = new Gson().fromJson(info, HashMap.class); System.out.println(map1);
运行结果:
上述示例,展现了将一个HashMap转成JSON序列化和反序列化的过程
2) fastJson是阿里开源的Json转换工具
fastJson说明:
https://github.com/alibaba/fastjson/wiki
上述网站是阿里fastJson官网,里面的例子很浅显易懂
Encode
import com.alibaba.fastjson.JSON; Group group = new Group(); group.setId(0L); group.setName("admin"); User guestUser = new User(); guestUser.setId(2L); guestUser.setName("guest"); User rootUser = new User(); rootUser.setId(3L); rootUser.setName("root"); group.addUser(guestUser); group.addUser(rootUser); String jsonString = JSON.toJSONString(group); System.out.println(jsonString);
Output
{"id":0,"name":"admin","users":[{"id":2,"name":"guest"},{"id":3,"name":"root"}]}
Decode
String jsonString = ...; Group group = JSON.parseObject(jsonString, Group.class);
再使用fastJson时一定要注意get,set方法的书写
String fastJson = JSON.toJSONString(list); System.out.println(fastJson); //将字符串从JSON序列转化回Object List<Book> listnew = JSON.parseArray(fastJson,Book.class); for (Book book : listnew) { System.out.println(book); }
上述例子为自行测试:
测试结果:
上述例子中,没有给出实体类,list为Book实体的列表
两种转换工具都是比较常用的,个人习惯使用fastJson,因为更方便一些
转载于:https://www.cnblogs.com/PoorGuy/p/10262886.html
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- Gson和Fastjson的使用
- Android JSON:Gson,FastJson解析库的使用和对比分析
- Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例
- Gson 与 fastJson 的使用
- Andorid中使用Gson和Fast-json解析库解析JSON数据---第三方库学习笔记(二)
- Gson的使用注意事项以及与fastjson的对比
- Android中Json数据解析(二)--使用Gson、Jackson和FastJson解析Json数据
- Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例
- JSON 解析库的使用 :Gson 和 fast-json比较
- android JSON解析 fastjson和gson的使用
- Android JSON 解析库的使用 - Gson 和 fast-json
- 使用Gson和FastJson解析JSON数据遇到的问题
- Andorid中使用Gson和Fast-json解析库解析JSON数据---第三方库学习笔记(二)
- Android 中Json解析的几种框架(Gson、Jackson、FastJson、LoganSquare)使用与对比
- Json FastJson Gson介绍与使用
- Gson 与 fastJson 在使用上的差异(fastJson的优点)
- JSON技术-Gson将bean转换json确保数据的正确,使用FastJson将Json转换Bean
- FastJson和Gson的使用方法
- Gson 与 Fastjson 使用的初步详解
- Gson 与 fastJson 在使用上的差异(fastJson的优点)