fastjson - 將json對象轉換成List集合

從接口response里拿出json格式的返回對象,轉換成String類型

def data = JSONPath.read(responseString, '$.data') // responseString就是String類型的文本
//使用JSONPath.read方法需要import com.alibaba.fastjson.JSONPath

此時如果data是個數(shù)組時,返回類型是class com.alibaba.fastjson.JSONArray
如果data是一個普通數(shù)據(jù)節(jié)點,返回類型是class java.lang.String

對于JSONArray,可以將其存進List,對象類型是Video

List<Video> videos = JSONObject.parseArray(data.toJSONString(), new Video().class, new ParserConfig())
//data.toJSONString是將JSONArray文本轉換成String類型
//因為fastjson的parseArray方法只處理String類型

//此前需要
import com.alibaba.fastjson.JSONArray
import com.alibaba.fastjson.JSONPath
import com.alibaba.fastjson.JSONObject
import com.alibaba.fastjson.parser.ParserConfig

Json format sample:

{
  "code":0,
  "message":"0",
  "ttl":1,
  "data":[
    {
      "aid":"672247475",
      "bvid":"BV1BU4y1a7ih",
      "typename":"日常",
      "title":"aaaa1",
      "subtitle":""
    },
    {
      "aid":"672247476",
      "bvid":"BV1BU4y1a7ih",
      "typename":"日常",
      "title":"aaaa2",
      "subtitle":""
    }]
}

以下類用于處理數(shù)組對象的格式

public class Video {
    
    public String aid;
    public String bvid;
    public String typename;
    public String title;
        public Video(String aid, String bvid, String typename, String title) {
          this.aid = aid;
          this.bvid = bvid;
          this.typename = typename;
          this.title = title;
    }
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容