package com.shzd.fans.gsondemo; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.widget.TextView; public class MainActivity extends AppCompatActivity { private TextView tv1; private TextView tv2; private TextView tv3; private String str1 = "{\"success\":true,\"data\":{\"averageStarLevel\":4.7,\"remarkCount\":10}}"; private String str2 = "{\"success\":true,\"data\":{\"page\":10,\"pageCount\":29,\"list\":[{\"starLevel\":4,\"remarkCotnent\":\"評價方未及時作出評價,系統默認滿意!\",\"remarkTime\":\"2013-02-27 07:21:48\",\"explainContent\":\"\",\"postMemberId\":\"y**f\",\"tpLogoURL\":\"http://i04.c.aliimg.com/cms/upload/2012/186/684/486681_1232736939.png\"},{\"starLevel\":4,\"remarkCotnent\":\"評價方未及時作出評價,系統默認滿意!\",\"remarkTime\":\"2013-02-27 07:21:48\",\"explainContent\":\"\",\"postMemberId\":\"y**f\",\"tpLogoURL\":\"http://i04.c.aliimg.com/cms/upload/2012/186/684/486681_1232736939.png\"}],\"statistics\":{\"star5\":20,\"star4\":40,\"star3\":30,\"star2\":10,\"star1\":0}}}"; private String str3 = "{\"success\":true,\"data\":[{\"starLevel\":4,\"remarkCotnent\":\"評價方未及時作出評價,系統默認滿意!\",\"remarkTime\":\"2013-02-27 07:21:48\",\"explainContent\":\"\",\"postMemberId\":\"y**f\",\"tpLogoURL\":\"http://i04.c.aliimg.com/cms/upload/2012/186/684/486681_1232736939.png\"},{\"starLevel\":4,\"remarkCotnent\":\"評價方未及時作出評價,系統默認滿意!\",\"remarkTime\":\"2013-02-27 07:21:48\",\"explainContent\":\"\",\"postMemberId\":\"y**f\",\"tpLogoURL\":\"http://i04.c.aliimg.com/cms/upload/2012/186/684/486681_1232736939.png\"}]}"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tv1 = (TextView) findViewById(R.id.text1); tv2 = (TextView) findViewById(R.id.text22); tv3 = (TextView) findViewById(R.id.text3); getJson1(); } private void getJson1() { CommonJson cmj = CommonJson.fromJson(str1, Result1.DataBean.class); Result1.DataBean dataBean = (Result1.DataBean) cmj.getData(); tv1.setText(dataBean.getAverageStarLevel() + "\n" + dataBean.getRemarkCount() + ""); CommonJson cmj2 = CommonJson.fromJson(str2, Result2.DataBean.class); Result2.DataBean dataBean2 = (Result2.DataBean) cmj2.getData(); Result2.DataBean.StatisticsBean sb = dataBean2.getStatistics(); tv2.setText(sb.getStar1() + "" + "" + sb.getStar2() + "" + sb.getStar3() + "" + sb.getStar4() + sb.getStar5()); } }
package com.shzd.fans.gsondemo; import com.google.gson.Gson; import java.io.Serializable; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; /** * 第一種: * {"success":true,"data":{"averageStarLevel":4.7,"remarkCount":10}} * 第二種: * {"success":true,"data":{"page":10,"pageCount":29,"list":[{"starLevel":4,"remarkCotnent":"評價方未及時作出評價,系統默認滿意!","remarkTime":"2013-02-27 07:21:48","explainContent":"","postMemberId":"y**f","tpLogoURL":"http://i04.c.aliimg.com/cms/upload/2012/186/684/486681_1232736939.png"},{"starLevel":4,"remarkCotnent":"評價方未及時作出評價,系統默認滿意!","remarkTime":"2013-02-27 07:21:48","explainContent":"","postMemberId":"y**f","tpLogoURL":"http://i04.c.aliimg.com/cms/upload/2012/186/684/486681_1232736939.png"}],"statistics":{"star5":20,"star4":40,"star3":30,"star2":10,"star1":0}}} * 第三種: * {"success":true,"data":[{"starLevel":4,"remarkCotnent":"評價方未及時作出評價,系統默認滿意!","remarkTime":"2013-02-27 07:21:48","explainContent":"","postMemberId":"y**f","tpLogoURL":"http://i04.c.aliimg.com/cms/upload/2012/186/684/486681_1232736939.png"},{"starLevel":4,"remarkCotnent":"評價方未及時作出評價,系統默認滿意!","remarkTime":"2013-02-27 07:21:48","explainContent":"","postMemberId":"y**f","tpLogoURL":"http://i04.c.aliimg.com/cms/upload/2012/186/684/486681_1232736939.png"}]} * Created by fans on 2017/2/22. */ public class CommonJson<T> implements Serializable { private boolean success; private T data; public boolean isSuccess() { return success; } public void setSuccess(boolean success) { this.success = success; } public T getData() { return data; } public void setData(T data) { this.data = data; } public static CommonJson fromJson(String json, Class clazz) { Gson gson = new Gson(); Type objectType = type(CommonJson.class, clazz); return gson.fromJson(json, objectType); } public String toJson(Class<T> clazz) { Gson gson = new Gson(); Type objectType = type(CommonJson.class, clazz); return gson.toJson(this, objectType); } static ParameterizedType type(final Class raw, final Type... args) { return new ParameterizedType() { public Type getRawType() { return raw; } public Type[] getActualTypeArguments() { return args; } public Type getOwnerType() { return null; } }; } }
package com.shzd.fans.gsondemo; import java.io.Serializable; /** * Created by fans on 2017/2/22. */ public class Result1 implements Serializable { /** * success : true * data : {"averageStarLevel":4.7,"remarkCount":10} */ private boolean success; private DataBean data; public boolean isSuccess() { return success; } public void setSuccess(boolean success) { this.success = success; } public DataBean getData() { return data; } public void setData(DataBean data) { this.data = data; } public static class DataBean { /** * averageStarLevel : 4.7 * remarkCount : 10 */ private double averageStarLevel; private int remarkCount; public double getAverageStarLevel() { return averageStarLevel; } public void setAverageStarLevel(double averageStarLevel) { this.averageStarLevel = averageStarLevel; } public int getRemarkCount() { return remarkCount; } public void setRemarkCount(int remarkCount) { this.remarkCount = remarkCount; } } }
package com.shzd.fans.gsondemo; import java.io.Serializable; import java.util.List; /** * Created by fans on 2017/2/22. */ public class Result2 implements Serializable { /** * success : true * data : {"page":10,"pageCount":29,"list":[{"starLevel":4,"remarkCotnent":"評價方未及時作出評價,系統默認滿意!","remarkTime":"2013-02-27 07:21:48","explainContent":"","postMemberId":"y**f","tpLogoURL":"http://i04.c.aliimg.com/cms/upload/2012/186/684/486681_1232736939.png"},{"starLevel":4,"remarkCotnent":"評價方未及時作出評價,系統默認滿意!","remarkTime":"2013-02-27 07:21:48","explainContent":"","postMemberId":"y**f","tpLogoURL":"http://i04.c.aliimg.com/cms/upload/2012/186/684/486681_1232736939.png"}],"statistics":{"star5":20,"star4":40,"star3":30,"star2":10,"star1":0}} */ private boolean success; private DataBean data; public boolean isSuccess() { return success; } public void setSuccess(boolean success) { this.success = success; } public DataBean getData() { return data; } public void setData(DataBean data) { this.data = data; } public static class DataBean { /** * page : 10 * pageCount : 29 * list : [{"starLevel":4,"remarkCotnent":"評價方未及時作出評價,系統默認滿意!","remarkTime":"2013-02-27 07:21:48","explainContent":"","postMemberId":"y**f","tpLogoURL":"http://i04.c.aliimg.com/cms/upload/2012/186/684/486681_1232736939.png"},{"starLevel":4,"remarkCotnent":"評價方未及時作出評價,系統默認滿意!","remarkTime":"2013-02-27 07:21:48","explainContent":"","postMemberId":"y**f","tpLogoURL":"http://i04.c.aliimg.com/cms/upload/2012/186/684/486681_1232736939.png"}] * statistics : {"star5":20,"star4":40,"star3":30,"star2":10,"star1":0} */ private int page; private int pageCount; private StatisticsBean statistics; private List<ListBean> list; public int getPage() { return page; } public void setPage(int page) { this.page = page; } public int getPageCount() { return pageCount; } public void setPageCount(int pageCount) { this.pageCount = pageCount; } public StatisticsBean getStatistics() { return statistics; } public void setStatistics(StatisticsBean statistics) { this.statistics = statistics; } public List<ListBean> getList() { return list; } public void setList(List<ListBean> list) { this.list = list; } public static class StatisticsBean { /** * star5 : 20 * star4 : 40 * star3 : 30 * star2 : 10 * star1 : 0 */ private int star5; private int star4; private int star3; private int star2; private int star1; public int getStar5() { return star5; } public void setStar5(int star5) { this.star5 = star5; } public int getStar4() { return star4; } public void setStar4(int star4) { this.star4 = star4; } public int getStar3() { return star3; } public void setStar3(int star3) { this.star3 = star3; } public int getStar2() { return star2; } public void setStar2(int star2) { this.star2 = star2; } public int getStar1() { return star1; } public void setStar1(int star1) { this.star1 = star1; } } public static class ListBean { /** * starLevel : 4 * remarkCotnent : 評價方未及時作出評價,系統默認滿意! * remarkTime : 2013-02-27 07:21:48 * explainContent : * postMemberId : y**f * tpLogoURL : http://i04.c.aliimg.com/cms/upload/2012/186/684/486681_1232736939.png */ private int starLevel; private String remarkCotnent; private String remarkTime; private String explainContent; private String postMemberId; private String tpLogoURL; public int getStarLevel() { return starLevel; } public void setStarLevel(int starLevel) { this.starLevel = starLevel; } public String getRemarkCotnent() { return remarkCotnent; } public void setRemarkCotnent(String remarkCotnent) { this.remarkCotnent = remarkCotnent; } public String getRemarkTime() { return remarkTime; } public void setRemarkTime(String remarkTime) { this.remarkTime = remarkTime; } public String getExplainContent() { return explainContent; } public void setExplainContent(String explainContent) { this.explainContent = explainContent; } public String getPostMemberId() { return postMemberId; } public void setPostMemberId(String postMemberId) { this.postMemberId = postMemberId; } public String getTpLogoURL() { return tpLogoURL; } public void setTpLogoURL(String tpLogoURL) { this.tpLogoURL = tpLogoURL; } } } }