首页 > 解决方案 > 如何将 Thymeleaf th:field 与 java 8 LocalDate 绑定

问题描述

我正在使用弹簧靴(2.0.3)和Thymeleaf(3)。我在尝试将th:fieldLocalDate (java 8) 绑定时遇到问题。我的问题很复杂,因为日期输入由日、月和年的各个字段分隔。

<input th:field="*{date.day}" type="number" pattern="[0-9]*"> <input th:field="*{date.month}" type="number" pattern="[0-9]*"> <input th:field="*{date.year}" type="number">

通过时间(thymeleaf-extras-java8time)显示 localDate 一切正常,但它与字段的绑定是一个问题。

标签: spring-mvcspring-bootthymeleaf

解决方案


我没有尝试过,但是 LocalDate 类型没有日期、月份和年份的设置器。您很可能无法像这样“收集” LocalDate 对象。您必须为日、月和年创建一个带有 setter 和 getter 的中间对象。像 LocalDateFields 之类的东西。您将在 web 方法中获取此对象并将其转换为 LocalDate 对象。


推荐阅读