Spring boot 为什么@DateTimeFormat在th:text中无效
在我的Spring Boot 2应用程序中 我的模型:Spring boot 为什么@DateTimeFormat在th:text中无效,spring-boot,thymeleaf,Spring Boot,Thymeleaf,在我的Spring Boot 2应用程序中 我的模型: import org.springframework.format.annotation.DateTimeFormat; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.validation.constraints.NotNull; import java.
import org.springframework.format.annotation.DateTimeFormat;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.validation.constraints.NotNull;
import java.util.Date;
@Entity
public class Category {
@Id
@GeneratedValue
private int id;
@NotNull
private String name;
private String description;
@NotNull
@DateTimeFormat(pattern = "dd.MM.yyyy HH:mm:ss")
private Date created;
@DateTimeFormat(pattern = "dd.MM.yyyy HH:mm:ss")
private Date updated;
此处为模板:
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title th:text="${appName}">Category template title</title>
<link th:href="@{/public/style.css}" rel="stylesheet"/>
<meta charset="UTF-8"/>
</head>
<body>
<div class="container entity_list">
<h2>Categories</h2>
<br/>
<table>
<tr>
<th width="80">ID</th>
<th width="120">Name</th>
<th width="200">Created At</th>
<th width="200">Updated At</th>
<th width="60"></th>
<th width="60"></th>
</tr>
<th:block th:each="category : ${categoryList}">
<tr>
<td th:text="${category.id}"></td>
<td th:text="${category.name}"></td>
<td th:text="${category.created}"></td>
<td th:text="${category.updated}"></td>
<td><a th:href="@{/category/edit/{id}(id=${category.id})}">Edit</a></td>
<td><a th:href="@{/category/delete/{id}(id=${category.id})}">Delete</a></td>
</tr>
</th:block>
</table>
</div>
</body>
</html>
类别模板标题
类别
身份证件
名称
创建于
更新于
在这里生成html:
<!DOCTYPE html>
<html>
<head>
<title></title>
<link href="/public/style.css" rel="stylesheet"/>
<meta charset="UTF-8"/>
</head>
<body>
<div class="container entity_list">
<h2>Categories</h2>
<br/>
<table>
<tr>
<th width="80">ID</th>
<th width="120">Name</th>
<th width="200">Created At</th>
<th width="200">Updated At</th>
<th width="60"></th>
<th width="60"></th>
</tr>
<tr>
<td>1</td>
<td>Toys</td>
<td>2020-01-08 14:44:30.035</td>
<td></td>
<td><a href="/category/edit/1">Edit</a></td>
<td><a href="/category/delete/1">Delete</a></td>
</tr>
<tr>
<td>2</td>
<td>Electronics</td>
<td>2020-01-08 14:44:30.136</td>
<td></td>
<td><a href="/category/edit/2">Edit</a></td>
<td><a href="/category/delete/2">Delete</a></td>
</tr>
<tr>
<td>3</td>
<td>Supermarket</td>
<td>2020-01-08 14:44:30.138</td>
<td></td>
<td><a href="/category/edit/3">Edit</a></td>
<td><a href="/category/delete/3">Delete</a></td>
</tr>
</table>
</div>
</body>
</html>
类别
身份证件
名称
创建于
更新于
1.
玩具
2020-01-08 14:44:30.035
2.
数码产品
2020-01-08 14:44:30.136
3.
超市
2020-01-08 14:44:30.138
如您所见,日期的格式不是dd.MM.yyyy HH:MM:ss。
为什么? 使用表达式应应用您的@DateTimeFormat
。(表单字段会自动执行此操作。)
<td th:text="${{category.created}}"></td>
<td th:text="${{category.updated}}"></td>