JSON 架构中的日期对象
Date object in JSON schema
我有我的 json 架构 createdAt
作为
{
"title": "details",
"definitions": {
"dateTime": {
"type": "string",
"format": "date-time"
},
"properties" : {
"createdAt": { "$ref": "#/definitions/dateTime" }
}
}
当我尝试创建对象时
Details details = ImmutableDetails.builder()
.createdAt(new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")
.parse("2021-11-30T00:22:11.454Z"))
.build();
我得到的错误是
createDate: [Nov 30, 2021, 0:22:11 AM] is not a valid date-time.
Expected [yyyy-MM-dd'T'HH:mm:ssZ, yyyy-MM-dd'T'HH:mm:ss.[0-9]{1,9}Z,
yyyy-MM-dd'T'HH:mm:ss[+-]HH:mm, yyyy-MM-dd'T'HH:mm:ss.[0-9]{1,9}[+-]HH:mm]
如何指定我的 JSON 模式来接受 java.util.Date
对象?
JSON 架构中的“日期-时间”格式遵循 RFC3339。这是看起来像 2021-12-31T23:59:59Z
或 2021-12-31T23:59:59-05:30
的时间戳,这正是错误消息所说的。
您已经从正确格式的时间戳开始,然后将它们转换为不可接受的格式——因此只需删除该部分。
我有我的 json 架构 createdAt
作为
{
"title": "details",
"definitions": {
"dateTime": {
"type": "string",
"format": "date-time"
},
"properties" : {
"createdAt": { "$ref": "#/definitions/dateTime" }
}
}
当我尝试创建对象时
Details details = ImmutableDetails.builder()
.createdAt(new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")
.parse("2021-11-30T00:22:11.454Z"))
.build();
我得到的错误是
createDate: [Nov 30, 2021, 0:22:11 AM] is not a valid date-time.
Expected [yyyy-MM-dd'T'HH:mm:ssZ, yyyy-MM-dd'T'HH:mm:ss.[0-9]{1,9}Z,
yyyy-MM-dd'T'HH:mm:ss[+-]HH:mm, yyyy-MM-dd'T'HH:mm:ss.[0-9]{1,9}[+-]HH:mm]
如何指定我的 JSON 模式来接受 java.util.Date
对象?
JSON 架构中的“日期-时间”格式遵循 RFC3339。这是看起来像 2021-12-31T23:59:59Z
或 2021-12-31T23:59:59-05:30
的时间戳,这正是错误消息所说的。
您已经从正确格式的时间戳开始,然后将它们转换为不可接受的格式——因此只需删除该部分。