JPA日期没有格式化

时间:2017-04-09 21:52:45

标签: java spring-boot spring-data-jpa java.util.date

我有一个带有日期时间选择器的html表单,用于向Springboot实体和MySQL数据库提交和检索日期。

我们在这个地区使用dd / MM / yyyy hh:mm格式。

提交日期工作正常。当我尝试检索日期时,表格中没有显示任何内容。

html看起来像:

<input type="text" class="form-control" name="start_date" th:text="${#start_date}" />

java实体看起来像:

import javax.persistence.*;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

@Entity
public class Episode {

protected Episode() {}

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
...
@Column(name="start_date")
@DateTimeFormat (pattern="dd/MM/yyyy HH:mm")
private Date start_date;

存储在数据库中的实际值如下所示:

2017-01-25 18:01:23

我原本预计实体中的模式会处理这个问题,但显然我错过了一些东西。

我也尝试让百万美元用以下格式进行格式化:

<input type="text" class="form-control" name="start_date" th:text="${#dates.format(start_date, 'dd/MM/yyyy HH:mm')}" />

但这是无效的百里香。

如何正确地检索日期 - 最好是在后端(java)。

1 个答案:

答案 0 :(得分:0)

你需要修改你的百万美元html:

<input type="text" class="form-control" name="start_date" th:value="${{episode.start_date}}" />
  1. 使用th:value而不是th:text

  2. start_date是一个与剧集有关系的单独实体,因此百日咳对象参考是episode.start_date

  3. 实体不需要修改。

    您还需要使用“{{”

    等双括号

    参考http://www.thymeleaf.org/doc/tutorials/3.0/thymeleafspring.html#double-brace-syntax