2

我有一个java.util.ArrayList包含红色标记的值:在此处输入图像描述

如果我在 JavaScript 中使用 then 渲染它,render relations as JSON则值如下: 在此处输入图像描述

毫秒已经过去了,如果我理解正确的话,它的值receiveDate是一个字符串,所以没有办法将它解析为另一种格式。

有没有办法呈现毫秒没有消失的值?

4

2 回答 2

1

方法一

import grails.converters.JSON

def r = [now: new Date(), name: 'Roong']
JSON.registerObjectMarshaller(Date) {o -> o.getTime()}
println(r as JSON)

结果 1

{
  "now": 1356595418027,
  "name": "Roong"
}

或者您可以在 Config.groovy
方法 2中设置

grails.converters.json.date = "javascript"

结果 2

{
  "now": new Date(1356595418027),
  "name": "Roong"
}
于 2012-12-27T08:10:28.217 回答
0

您可以使用方法将丢失的部分保存到另一个键值对

java.sql.Timestamp.getNanos()

并通过合并这两部分来恢复javascript中的完整值。例如:

String receiveDate = grails.converters.JSON.parse(jsonData).data[0].receiveDate
def formatDate = receiveDate.replace('Z','.'+ dt.getNanos().toString()).replace('T', ' ')
def tsDate = java.sql.Timestamp.valueOf(formatDate)
println 'The timestamp is : ' +  tsDate
于 2012-12-26T02:26:14.967 回答