Java-->Gson解析相较于Json
2016-08-25 13:09
387 查看
--> Gson解析jar包: 链接:http://pan.baidu.com/s/1slCeq77 密码:f9ig
--> 官方Json解析工具类:
--> Gson解析工具类:
--> 需要一个Data类 包括:
private String status;
private String desc;
private List<Detail> detail;
且必须有无参构造方法和属性的getter、setter方法
--> 有Gson解析谁还用官方的解析方法啊...
--> 官方Json解析工具类:
package com.dragon.java.jsonwebdata; import java.util.ArrayList; import java.util.List; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; /** * Json解析的工具类 * * @author Auser * */ public class JsonUtil { /** * 官方解析方法 --> 不管多复杂都可以解析,但是非常复杂!!! * * @param json */ public static void jsonParse(String json) { List<Detail> details = new ArrayList<>(); try { JSONObject object = new JSONObject(json); if (object.getString("status").equals("000000")) { if (object.getString("desc").equals("null")) { details = JSONArray(details, object); for (Detail detail : details) { System.out.println(detail); } } } } catch (JSONException e) { e.printStackTrace(); } } /** * Json数组 * * @param details * @param object * @return List<Detail> * @throws JSONException */ private static List<Detail> JSONArray(List<Detail> details, JSONObject object) throws JSONException { JSONArray array = object.getJSONArray("detail"); for (int i = 0; i < array.length(); i++) { JSONObject object2 = array.getJSONObject(i); int id = object2.getInt("id"); int xhid = object2.getInt("xhid"); String author = object2.getString("author"); String content = object2.getString("content"); String picUrl = object2.getString("picUrl"); String status = object2.getString("status"); Detail detail = new Detail(id, xhid, author, content, picUrl, status); details.add(detail); } return details; } }
--> Gson解析工具类:
--> 需要一个Data类 包括:
private String status;
private String desc;
private List<Detail> detail;
且必须有无参构造方法和属性的getter、setter方法
package com.dragon.java.gsonwebdata; import java.util.List; import com.dragon.java.jsonwebdata.Detail; import com.google.gson.Gson; /* * Gson解析的工具类 */ public class GsonUtil { /** * Gson解析 * * @param json */ public static void gsonParse(String json) { Gson gson = new Gson(); Info info = gson.fromJson(json, Info.class); List<Detail> detail = info.getDetail(); if (info.getStatus().equals("000000")) { if (info.getDesc() == null) { for (Detail detail2 : detail) { System.out.println(detail2); } } } } }
--> 有Gson解析谁还用官方的解析方法啊...
相关文章推荐
- JSON教程之GSON基本解析(Java-Gson)
- Java下json的解析方法-----GSON与JSONObject
- JSON的解析[Java-JSON、FastJSON、GSON]
- Android中Gson解析json数据使用@SerializedName注解与java对象不匹配的字段
- Java-->Json解析网页数据
- Json Gson java解析json
- java 后台使用gson 将json字符串转换为List<Map<String,object>> 数组
- 很好用的Google 开源项目Gson在java中解析和创建json格式的数据
- java用ssh的时候,Gson解析json有外键的时候报错
- Android中Gson解析json数据使用@SerializedName注解与java对象不匹配的字段
- JSON教程之GSON基本解析(Gson-Java)
- Gson解析json字符串,并封装成List<T>
- Gson解析出现类似错误,com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_AR
- 我的Android进阶之旅------>解决Jackson、Gson解析Json数据时,Json数据中的Key为Java关键字时解析为null的问题
- Android 使用GSON解析JSON 并转换为JAVA对象
- Java下json的解析方法-----GSON与JSONObject
- 百度天气api开发 全解析xml和json格式 使用json-lib jsonObject、 Gson 方式把json 转换成 java对象
- Json数据解析----------Gson用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库
- java : 用 gson 解析 JSON
- 解决Gson解析Json时,Json 中Key为Java关键字的问题