Hibernate - переопределить формат вывода даты при генерации JSON - PullRequest
0 голосов
/ 14 марта 2020

С временной величиной в моей сущности, определенной как:

  @Temporal(TemporalType.TIMESTAMP)
  @Column(name = "start_time", length = 19, nullable = false)
  public Date getStartTime() {
    return this.startTime;
  }

  public void setStartTime(Date startTime) {
    this.startTime = startTime;
  }

И маршалинг JSON излагается так (упрощенно):

  @GET
  @RestSecure
  @Path("/list")
  @Produces(MediaType.APPLICATION_JSON)
  public Response list(){
    return Response.status(Response.Status.OK).entity(myEntityList).build();
  }

Есть ли простой способ переопределения выходной формат даты?

Что я получаю, так это эпоха:

"startTime": 1582261711000,

Мне нужна дата в формате ISO 8601, например:

"startTime": "2020-02-21T05:08:31Z",

1 Ответ

1 голос
/ 14 марта 2020

Вы можете использовать аннотацию Джексона DateFormat:

@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssZ")
...