博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Gson转JSON字符串时候, 将时间转成Long型
阅读量:5848 次
发布时间:2019-06-19

本文共 1848 字,大约阅读时间需要 6 分钟。

有些特定需求, 比如说搜索引擎, 很多人都要求时间必须是时间戳. 所以, 我们把时间转成最原始的Long型. Gson默认的是不支持的, 需要手动处理一下.

import java.lang.reflect.Type;import java.util.Date;import com.google.gson.JsonDeserializationContext;import com.google.gson.JsonDeserializer;import com.google.gson.JsonElement;import com.google.gson.JsonParseException;/** * Created with antnest-platform * User: chenyuan * Date: 12/22/14 * Time: 4:39 PM */public class DateDeserializer implements JsonDeserializer
{ public Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException { return new java.util.Date(json.getAsJsonPrimitive().getAsLong()); }}

import com.google.gson.JsonElement;import java.lang.reflect.Type;import java.util.Date;import com.google.gson.JsonPrimitive;import com.google.gson.JsonSerializationContext;import com.google.gson.JsonSerializer;/** * Created with antnest-platform * User: chenyuan * Date: 12/22/14 * Time: 4:38 PM */public class DateSerializer implements JsonSerializer
{ public JsonElement serialize(Date src, Type typeOfSrc, JsonSerializationContext context) { return new JsonPrimitive(src.getTime()); }}

import com.google.gson.Gson;import com.google.gson.GsonBuilder;import java.text.DateFormat;/** * Created with antnest-platform * User: chenyuan * Date: 12/22/14 * Time: 4:33 PM */public class GsonBuilderUtil {    public static Gson create() {        GsonBuilder gb = new GsonBuilder();        gb.registerTypeAdapter(java.util.Date.class, new DateSerializer()).setDateFormat(DateFormat.LONG);        gb.registerTypeAdapter(java.util.Date.class, new DateDeserializer()).setDateFormat(DateFormat.LONG);        Gson gson = gb.create();        return gson;    }}

最后, 我们在new Gson的时候, 我们 Gson gson = GsonBuilderUtil.create(); 就可以了. 

转载于:https://my.oschina.net/vernon/blog/364379

你可能感兴趣的文章
Console-算法-冒泡排序法|倒水法
查看>>
winform壁纸工具:为图片添加当月的日历并设为壁纸 .
查看>>
U盘写保护怎么办 ----->>>>>成功解除保护
查看>>
mysql严重查询速度的问题一则
查看>>
如何诊断ASMLIB故障
查看>>
10g ASM lost disk log
查看>>
Intent之Action
查看>>
Deep learning:十三(Softmax Regression)
查看>>
Sandcastle----强大的C#文档生成工具
查看>>
java调用dll
查看>>
Linux下C编程,进程通信之无名管道通信
查看>>
Jar命令
查看>>
分享:(R)?ex 0.41.0 发布,软件配置和部署
查看>>
inline关键字
查看>>
2年SQL Server DBA调优方面总结
查看>>
记录和打印时间
查看>>
(转载) STL Map容器
查看>>
Entity Framework 5.0运行.NET Framework 4.0之上在查询表达式中使用显示转换的一个问题...
查看>>
验证选择每日学习总结:DropDownList是否已选择验证、存储过程参数为sql字符串问题、将截断字符串或二进制数据。\r\n语句已终止...
查看>>
函数分析AndroidInitProcess分析心得(2)
查看>>