首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用gson将日期序列化为long?

使用gson将日期序列化为long可以通过自定义Gson的序列化和反序列化逻辑来实现。下面是一个示例代码:

代码语言:java
复制
import com.google.gson.*;
import java.lang.reflect.Type;
import java.util.Date;

public class DateSerializer implements JsonSerializer<Date>, JsonDeserializer<Date> {
    @Override
    public JsonElement serialize(Date date, Type typeOfSrc, JsonSerializationContext context) {
        return new JsonPrimitive(date.getTime());
    }

    @Override
    public Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException {
        long time = json.getAsLong();
        return new Date(time);
    }
}

然后在使用gson进行序列化和反序列化时,注册自定义的DateSerializer:

代码语言:java
复制
Gson gson = new GsonBuilder()
        .registerTypeAdapter(Date.class, new DateSerializer())
        .create();

// 将日期序列化为long
String json = gson.toJson(date);

// 将long反序列化为日期
Date date = gson.fromJson(json, Date.class);

这样就可以使用gson将日期序列化为long了。

推荐的腾讯云相关产品:腾讯云对象存储(COS),它是一种海量、安全、低成本、高可靠的云存储服务,适用于存储大量非结构化数据,如图片、音视频、备份文件等。您可以通过以下链接了解更多信息:

腾讯云对象存储(COS):https://cloud.tencent.com/product/cos

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • SpringMVC处理json(三)

    使用Gson库处理JSON数据Gson是Google提供的Java库,用于Java对象序列化为JSON字符串,或JSON字符串反序列化为Java对象。...Gson提供了一个简单而灵活的API,可以帮助我们快速地Java对象转换为JSON字符串,或JSON字符串转换为Java对象。下面介绍如何在SpringMVC中使用Gson处理JSON数据。...getUser方法中创建了一个User对象,并使用new Gson().toJson方法User对象序列化为JSON字符串,并返回给浏览器。...反序列化JSON字符串除了Java对象序列化为JSON字符串之外,Gson还可以JSON字符串反序列化为Java对象。...createUser方法中使用@RequestBody注解获取请求体中的JSON字符串,并使用new Gson().fromJson方法JSON字符串反序列化为User对象,并将User对象保存到数据库中

    57840

    如何一个 .NET 对象序列化为 HTTP GET 的请求字符串

    如果是 POST 请求时,我们可以使用一些库序列化为 json 格式作为 BODY 发送,那么 GET 请求呢?有可以直接将其序列化为 HTTP GET 请求的 query 字符串的吗?...key1=value&key2=value&key3=value 于是我们一个类型序列化为后面的参数: 1 2 3 4 5 6 7 8 9 10 11 12 [DataContract] public...关于源代码包不引入额外依赖 dll 的原理,可以参见: .NET 多个程序集合并成单一程序集的 4+3 种方法 - walterlv 方法 我们需要做的是,一个对象序列化为 query 字符串。...本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。...欢迎转载、使用、重新发布,但务必保留文章署名 吕毅 (包含链接: https://blog.walterlv.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。

    30120

    java:关于json解析工具选型(JSON-java,json-lib,gson,fastjson)

    最近的项目需要对java 对象和json之间的序列化和反序列化,更准确的说是java bean对象和json之间的转换,使用哪个工具进行转换,让我犹豫了不少时间。...google-gson google出品的东西质量都不会差,gson拥有非常快的序列化反序列化速度,使用起来也非常方便灵活,网上有不少资料介绍它的用法。...但是目前gson是基于字段序列化的(fields-based),而不是基于getter/setter方法来决定哪些字段需要被序列化(properties),也就是就说对于一个对象中的成员(field),...我只希望拥有getter/setter方法的成员序列化,使用gson会将其他不需要被序列化的private成员也输出到json字符串中,这无疑是多余的,会让json体积更大。...rootUser.setName("root"); group.addUser(guestUser); group.addUser(rootUser); // 对日期使用

    1.8K60

    Gson 简单使用姿势小结

    Gson 简单使用姿势小结 关于 Json 序列化的框架可以说比较多了,比如 Spring 默认的 Jackson,国内互联网用的比较多的 FastJson,本文则主要介绍一下 Gson 的简单使用姿势...对象序列化 对象的序列化与反序列化可以说是最常见的,在 Gson使用过程中,推荐的对象写法 filed:private 修饰 不希望序列化的成员,添加transient修饰符 默认无参构造方法(可选...JsonObject 与 JsonArray 某些场景下我们可能并没有定义反序列化的数据对象,比如 FastJson 中的直接反序列化为JSONObject/JSONArray,然后手动获取数据进行业务处理...,这种场景下,gson 可以如何支持呢?...泛型序列化 以上属于常规的基本使用姿势,实际的工作中,关于泛型的序列化和反序列化可以说非常常见了,那么应该如何处理呢 public static class ResWrapper { private

    76720

    除了FastJson,你还有选择: Gson简易指南

    趁着周末,在家学习下同样具备对象JSON相互转换功能的优秀开源框架 Gson,并且打算今后项目使用 FastJson 的地方逐渐换成使用 Gson,记录下学习总结的内容,希望对小伙伴也有所帮助。...Gson 基本使用 使用 Gson 框架进行序列化与反序列操作,都离不开 com.google.gson.Gson 对象,它也是 Gson 框架的关键对象,提供的公共 API 具备了多种序列化和反序列方式...Map 除了JSON 字符串序列化为自定义的Java 对象之外,我们该可以转为 Map 集合,Gson 提供了对 Map 集合的转换,使用起来也十分简单: @Test void test_map()...那又该如何处理呢, 我们需要使用 Gson 的 另外一个 fromJson 方法:fromJson(String json, Type typeOfT) ,先看下使用方式 @Test public void...(Date.class, new DateSerializer()).create(); 这样一来,一旦遇到要序列化 Date 类型的字段时,都会通过自定义的 serialize 方法日期以 yyyy-MM-dd

    1.3K30

    除了FastJson,你还有选择: Gson简易指南

    趁着周末,在家学习下同样具备JSON与对象转换功能的优秀开源框架 Gson,并且打算今后项目使用 fastjson 的地方逐渐换成使用 Gson,记录下学习总结的内容,希望对小伙伴也有所帮助。... 对象转化成 JSON字符串的过程称为序列化,JSON 字符串转化成对象的过程称为反序列化。...Map 除了JSON 字符串序列化为自定义的Java 对象之外,我们还可以转为 Map 集合,Gson 提供了对 Map 集合的转换,使用起来也十分简单: @Test void test_map()...那又该如何处理呢, 我们需要调用 Gson 的 另外一个 fromJson 方法:fromJson(String json, Type typeOfT) ,先看下使用方式 @Test public...(Date.class, new DateSerializer()).create(); 这样一来,一旦遇到要序列化 Date 类型的字段时,都会通过自定义的 serialize 方法日期以 yyyy-MM-dd

    1.6K40

    重学springboot系列之JSON处理工具类

    重学springboot系列之JSON处理工具类 FastJSON、Gson和Jackson对比 在Spring中注解方法使用Jackson 常用注解 手动数据转换 Bug Jackson全局配置 --...-- FastJSON、Gson和Jackson对比 开源的Jackson:SpringBoot默认是使用Jackson作为JSON数据格式处理的类库,Jackson在各方面都比较优秀,所以不建议Jackson...---- 在Spring中注解方法使用Jackson jackson主要的作用是: 什么叫序列化与反序列化?...序列化:按照指定的格式、顺序等实体类对象转换为JSON字符串 所以我们下面就给大家介绍一下jackson的常用注解的使用方法,帮助我们进行序列化和反序列化工作。...indent_output: false #某些类对象无法序列化的时候,是否报错 fail_on_empty_beans: false #设置空如何序列化,见下文代码方式详解

    2.4K10

    Mson,让JSON序列化更快

    问题 我们经常需要在主线程中读取一些配置文件或者缓存数据,最常用的结构化存储数据的方式就是将对象序列化为JSON字符串保存起来,这种方式特别简单而且可以和SharedPrefrence配合使用,因此应用广泛...分析Gson的源码可以发现,它在序列化时大量使用了反射,每一个field,每一个get、set都需要用反射,由此带来了性能问题。 如何优化 知道了性能的瓶颈之后,我们如何去修改呢?...我做了个简单的测试,分别用Gson和JSONObject的方式去序列化一个bean,看下各自速度如何。...Gson = new Gson(); Bean testBean = Gson.fromJson(a, new TypeToken(){}.getType()); long...工具 虽然JSONObject能够解决我们的问题,但在项目中有大量的存量代码都使用Gson序列化,一处处去修改既耗费时间又容易出错,也不方便增加减少字段。

    2K110
    领券