Как я могу сохранить время в формате UT C, используя groovy? - PullRequest
0 голосов
/ 13 января 2020

Я пытаюсь сохранить дату в формате UT C через следующий код в Groovy, но получаю ошибку:

Document document = new Document("Id",1583084)
        .append("SrcType", 1)
        .append("ActualMonth",1)
        .append("CampaignKey" ,1)
        .append("CampaignOID",11)
        .append("CreatedOn",new Date())
        .append("Date",new Date(),TimeZone.getTimeZone('UTC'))

Ошибка:

Response code: 500
Response message: Exception: groovy.lang.MissingMethodException: No signature of method: org.bson.Document.append() is applicable for argument types: (java.lang.String, java.util.Date, sun.util.calendar.ZoneInfo) values: [Date, Mon Jan 13 18:11:05 PKT 2020, sun.util.calendar.ZoneInfo[id="UTC",offset=0,dstSavings=0,useDaylight=false,transitions=0,lastRule=null]]
Possible solutions: append(java.lang.String, java.lang.Object), spread(), any(), find(), grep()

Что я делаю не так

Ответы [ 2 ]

0 голосов
/ 13 января 2020
java.time.Instant.now()

возвращает текущий момент из системы UT C часы

2020-01-13T14:34:52.858Z
0 голосов
/ 13 января 2020

UT C не является форматом, UT C является основным стандартом времени , вам необходимо изменить синтаксис, включив в него желаемый формат времени и даты , например:

new Date().format('yyyy-MM-dd HH:mm:ss', TimeZone.getTimeZone('UTC'))

Демонстрация:

enter image description here

Дополнительная информация:

...