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

ObjectMapper正在转换为错误的日期时间

明星剑
2023-03-14

我以< code > " score timestamp ":" 2015-04-15t 10:00:00 . 000 z ",的形式传递日期,并希望使用方法将此json保存为数据库中的字符串

 ObjectMapper objMapper = new ObjectMapper();
String ratingData = objMapper.writeValueAsString(scoreTimestamp);

我希望日期为:“ScoreTimestamp”:“2015-04-15 10:00”,其中作为对象Mapper正在将其转换为:

  "scoreTimestamp" : {
"year" : 2015,
"dayOfMonth" : 15,
"dayOfWeek" : 3,
"era" : 1,
"dayOfYear" : 105,
"monthOfYear" : 4,
"weekyear" : 2015,
"yearOfEra" : 2015,
"yearOfCentury" : 15,
"weekOfWeekyear" : 16,
"centuryOfEra" : 20,
"millisOfSecond" : 0,
"millisOfDay" : 36000000,
"secondOfMinute" : 0,
"secondOfDay" : 36000,
"minuteOfHour" : 0,
"minuteOfDay" : 600,
"hourOfDay" : 10,
"zone" : {
  "fixed" : true,
  "id" : "UTC"
},

有人能帮帮我吗?

共有1个答案

王亮
2023-03-14

从Jackson v2.0开始,您可以直接在字段上使用@JsonForata注释:

@JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", timezone="GMT")
private Date scoreTimestamp;

或设为默认值

DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm a z");
objMapper.setDateFormat(df);
 类似资料:
  • 当尝试将json字符串转换为对象时,我看到下面列出的错误。我没有Data类的源代码&它是一个jar文件的一部分。有什么办法可以让我用混合剂来解决这个问题吗? 代码 数据类(我无法对此文件进行更改) 当我运行此操作时,我看到以下错误: com.fasterxml.jackson.databind.exc.InvalidFormatException:无法从字符串值“16:15:00”构造javax.

  • 我有以下应该返回时间戳的函数。当使用以下斜杠以字符串格式输入日期时,此代码有效:“2019/3/4”,但在使用 怎么回事?

  • 问题内容: 是否有一个内置的转换方法为在Python,例如获得在指定日期的午夜?相反的转换很容易:有一个方法。 我真的必须手动打电话吗? 问题答案: 您可以使用;现在,您创建一个初始化为午夜的对象。

  • 问题内容: 我有一个使用转换的字符串,现在我正尝试将其转换回来,但是当UIPicker启动时,这给了我错误的一天 我尝试了硬编码,但结果仍然相同。UIDatePicker上的日期在1991年12月22日开始。 如果我使用hardcore ,则从1979年12月23日开始。 (我不知道是不是这种情况,但是我在UIPickerView中有,但它是为字符串使用的。。我不认为是因为保存时,它保存了正确的值

  • 问题内容: 有谁知道如何将JS dateTime转换为MySQL datetime?还有一种方法可以向JS日期时间添加特定的分钟数,然后将其传递给MySQL日期时间? 问题答案: 尽管JS确实拥有足够的基本工具来执行此操作,但它相当笨拙。

  • 问题内容: 我已经尝试过一百万种不同的方法,但是没有用。任何帮助将非常感激。 上面的方法不起作用。 基本上,我想做的是获取纪元时间并将其转换为澳大利亚时间。我的当地时间是+05.30,但是我当然不希望这成为促成这种转化的因素。 编辑- 当我运行您的确切代码时,输​​出 时代1318388699000 2011年10月12日星期三08:34:59 GMT + 05:30 12/10/2011 03: