当前位置: 首页 > 知识库问答 >
问题:

如何在Spring boot2中用MongoDB将日期转换为纪元(unix时间戳)?

李耀
2023-03-14
{

            "main_reg_dt": 1515485462433
}
@JsonInclude(JsonInclude.Include.NON_DEFAULT)
@QueryEntity
public class Card {

    @Id
    @JsonProperty("id")
    @Field("_id")
    String id;

    @JsonProperty("main_reg_dt")
    @Field("main_reg_dt")
    Date registeredDateTime;
}

如何在Spring boot2中用MongoDB将日期转换为纪元(unix时间戳)?

共有1个答案

窦哲彦
2023-03-14

我找到了改变序列化方法的方法。

首先,创建自定义序列化程序

public class CustomDateSerializer extends JsonSerializer {
    @Override
    public void serialize(Object o, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {
        long formattedDate = ((Date) o).getTime() / 1000;
        jsonGenerator.writeString(String.valueOf(formattedDate));
    }
}

然后,添加使用自定义序列化程序的注释

@JsonProperty("main_reg_dt")
@Field("main_reg_dt")
@JsonSerialize(using = CustomDateSerializer.class)
Date registeredDateTime;
 类似资料:
  • 上下文是,我们的产品中有一个现有的应用程序,它生成并向现有的oracle过程发送纪元号&反之亦然。它在该过程中使用如下内容 当我尝试这些查询时,它对我也适用于Oracle10g服务器(如果有关系的话,还有Oracle sql Developer4.x)。 在现有的过程中,要求将值保存为日期本身(时间组件与日期无关),但是在新的要求中,我必须将unix EPOCH值转换为日期时间(小时/分钟/秒级别

  • 问题内容: 我有包含Java应用程序中的Unix时间戳的Excel文档。我想看看它们翻译成什么,并在Excel中将其表示为人类可读的日期。 例如,以下long: 1362161251894的 求值 结果 应类似于: 2013年3月1日11:07:31,894 我假设可以为此创建一个公式,但不确定如何。谢谢! 问题答案: 是的,您可以创建一个公式来为您执行此操作。Java和Unix / Linux计

  • 问题内容: 我目前在使用Python时遇到问题。我有一个Pandas DataFrame,列之一是带有日期的字符串。格式为: “%Y-%m-%d%H:%m:00.000”。例如:“ 2011-04-24 01:30:00.000” 我需要将整列转换为整数。我尝试运行此代码,但是它非常慢,并且有几百万行。 你们知道如何将整个列转换为纪元时间吗? 提前致谢 ! 问题答案: 将字符串转换为using ,

  • 问题内容: 我在PostgreSQL中有一个字符串。 我想将时间戳转换为整数,例如:1477354441 我想向该值添加自定义分钟,例如 如何在PostgreSQL中实现呢? 问题答案:

  • 我试图编写一个SQL表达式,该表达式将在特定时区将unix历元(1970/1/1以来的秒)转换为本地时间,并从中提取小时值。在研究了这段时间的解决方案后,我仍然不确定如何处理时区。注意,我尽量避免使用NEW_TIME()函数,因为它只使用时区缩略词的有限子集,而不使用全时区名称。 结果是 结果有几个问题 第1列:从时间戳开始,该值比使用日期关闭1小时 第2列:在America/los_Angele