Визуализируйте org.joda.time.DateTime как String в Почтальоне - PullRequest
0 голосов
/ 18 октября 2019

Я анализирую строку в org.joda.time.DateTime, используя следующий код:

DateTime submitDateTime = DateTime.parse("2019-10-14T09:08:40.000+0000");

Затем я назначаю это время даты полю в объекте (dateSent)

public class SmsEntry {
    private String smsId;
    private String status;
    private String text;
    private String from;
    private String to;
    private String type;
    private DateTime dateSent;
    private DateTime dateReceived;

}

После этого массив таких объектов является результатом вызова метода GET для конечной точки. Там эта дата представлена ​​как узел json:

            "dateSent": {
                "year": 2019,
                "dayOfMonth": 14,
                "dayOfWeek": 1,
                "dayOfYear": 287,
                "era": 1,
                "hourOfDay": 9,
                "minuteOfHour": 8,
                "secondOfMinute": 40,
                "millisOfSecond": 0,
                "centuryOfEra": 20,
                "yearOfEra": 2019,
                "yearOfCentury": 19,
                "weekyear": 2019,
                "monthOfYear": 10,
                "weekOfWeekyear": 42,
                "millisOfDay": 32920000,
                "secondOfDay": 32920,
                "minuteOfDay": 548,
                "zone": {
                    "fixed": true,
                    "id": "UTC"
                },
                "millis": 1571044120000,
                "chronology": {
                    "zone": {
                        "fixed": true,
                        "id": "UTC"
                    }
                },
                "afterNow": false,
                "beforeNow": true,
                "equalNow": false
            }

Между тем, если у меня есть только этот код:

    public static void main(String[] args) {
        DateTime dt = DateTime.parse(dateToParse);
        System.out.println(dt.toString());
    }

В результате получается следующая строка:

2019-10-14T09:08:40.000Z

Что мне нужно сделать, чтобы такая строка отображалась вместо узла JSON при вызове конечной точки?

1 Ответ

1 голос
/ 18 октября 2019

Вы, кажется, используете Java. Если вы используете Джексона для сериализации ваших объектов в JSON, добавьте следующую зависимость:

<dependency>
  <groupId>com.fasterxml.jackson.datatype</groupId>
  <artifactId>jackson-datatype-joda</artifactId>
  <version>${jackson.version}</version>
</dependency> 

и зарегистрируйте JodaModule в своем ObjectMapper:

ObjectMapper mapper = new ObjectMapper();
mapper.registerModule(new JodaModule());

Подробнее см. В документации 1014 *.

...