fastjson使用技巧

前端之家收集整理的这篇文章主要介绍了fastjson使用技巧前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

json格式化

@H_301_2@#post请求json格式 {"results": [{ "vin": "1888","pushId": "40","pushState": 1,"arrivalTime": "2018-03-10 21:02:22" },{ "vin": "03064","arrivalTime": "2018-03-10 21:02:22" } ] }
  • 现在想取得results里的内容:
@H_301_2@Map<String,Object> map=JSON.parSEObject(body,Map.class); String results=map.get("results");
  • 会直接报错.错误为:

    java.lang.ClassCastException: com.alibaba.fastjson.JSONArray cannot be cast to java.lang.String

  • 正确写法为:

@H_301_2@Map<String,String> map=JSON.parSEObject(body,new TypeReference<Map<String,String>>(){}); String results=map.get("results");

fastjson date时间格式化:

@H_301_2@JSON.toJSONStringWithDateFormat(pushContent,"yyyy-MM-dd HH:mm:ss")

自动把Date时间格式为yyyy-MM-dd HH:mm:ss格式 .

@H_301_2@package com.abupdate.carpush.bean; import com.abupdate.carpush.common.BaseParams; import com.fasterxml.jackson.annotation.JsonFormat; import java.util.Date; import java.util.List; /** * @author allen * @date 20/03/2018 */ public class PushContent { private String token; private List<String> vins; private String content; private String pushId; @JsonFormat(shape = JsonFormat.Shape.STRING,pattern = BaseParams.TIME_PATTERN_FORMAT,timezone = "GMT+8") private Date endTime; public List<String> getVins() { return vins; } public void setVins(List<String> vins) { this.vins = vins; } public String getContent() { return content; } public void setContent(String content) { this.content = content; } public String getPushId() { return pushId; } public void setPushId(String pushId) { this.pushId = pushId; } public Date getEndTime() { return endTime; } public void setEndTime(Date endTime) { this.endTime = endTime; } public String getToken() { return token; } public void setToken(String token) { this.token = token; } }

猜你在找的Json相关文章