1919
2020import zuo .biao .apijson .JSON ;
2121import zuo .biao .apijson .StringUtil ;
22+ import zuo .biao .apijson .client .ui .QueryActivity ;
2223
2324import com .alibaba .fastjson .JSONArray ;
2425
25- /**
26- * TODO 格式化json,去除标记array内object位置的数字,转为[]形式,比如
27- * "Comment[]":{"0":{"Comment":{...}}, ...}
28- * 转为
29- * "Comment[]":[{...}, ...]
26+ /**parser for response JSON String
27+ * @author Lemon
28+ * @see #getList
29+ * @see #getJSONArray
30+ * @see QueryActivity#onHttpResponse
31+ * @use JSONResponse response = new JSONResponse(...);
32+ * <br> JSONArray array = JSONResponse.getJSONArray(response.getJSONObject("[]"));//not a must
33+ * <br> User user = JSONResponse.getObject(response, User.class);//not a must
34+ * <br> List<Comment> list = JSONResponse.getList(response.getJSONObject("Comment[]"), Comment.class);//not a must
3035 */
3136public class JSONResponse extends JSONObject {
3237 private static final long serialVersionUID = -6707531287941223427L ;
@@ -51,6 +56,13 @@ public Object get(String key) {
5156
5257
5358
59+ /**
60+ * @param clazz
61+ * @return
62+ */
63+ public <T > T getObject (Class <T > clazz ) {
64+ return getObject (this , clazz );
65+ }
5466 /**
5567 * @param object
5668 * @param clazz
@@ -59,16 +71,16 @@ public Object get(String key) {
5971 public static <T > T getObject (com .alibaba .fastjson .JSONObject object , Class <T > clazz ) {
6072 return JSON .parseObject (JSON .toJSONString (clazz == null ? object : object .getJSONObject (clazz .getSimpleName ())), clazz );
6173 }
62- // /**
63- // * @param json
64- // * @param clazz
65- // * @return
66- // */
67- // public static <T> T getObject(String json, Class<T> clazz) {
68- // return getObject(JSON.parseObject(json, clazz), clazz);
69- // }
70-
71-
74+ // /**
75+ // * @param json
76+ // * @param clazz
77+ // * @return
78+ // */
79+ // public static <T> T getObject(String json, Class<T> clazz) {
80+ // return getObject(JSON.parseObject(json, clazz), clazz);
81+ // }
82+
83+
7284 /**
7385 * arrayObject = this
7486 * @param clazz
0 commit comments