在我的Spring Boot應用程序中,我需要處理帶有日期時間字段的表單并將其轉換為LocalDateTimeJava。我指定了pattern "YYYY-MM-dd HH:mm",當我使用輸入值提交表單時,它無法轉換1990-01-01 10:10。這是表單對象:public class UserForm { @NotNull @DateTimeFormat(pattern = "YYYY-MM-dd HH:mm") private LocalDateTime dateTime; // getters, setters}控制器:@RequestMapping("/users")@Controllerpublic class UserController { @GetMapping("") public String userForm(UserForm userForm) { return "/users/form"; } @PostMapping("") public String postForm(@Valid UserForm userForm, BindingResult bindingResult) { System.out.println(userForm + " " + bindingResult); return "/users/form"; }}和胸腺嘧啶的形式:<form th:object="${userForm}" th:action="@{/users}" method="post"> <span th:each="err: ${#fields.errors('dateTime')}" th:text="${err}" style="background-color:red;color:white;"/> <input type="text" th:field="*{dateTime}"/> <input type="submit"></form>這個例子有什么問題?我應該如何修復它以使其正確解析String為LocalDateTime?我也在這里提交了示例應用程序。更新:在“轉換失敗”下,我的意思是我得到了例外:org.springframework.core.convert.ConversionFailedException:無法從類型[java.lang.String]轉換為類型[@ javax.validation.constraints.NotNull @ org.springframework.format.annotation.DateTimeFormat java.time.LocalDateTime]價值1990-01-01 10:10使用小寫字母可以yyyy解決此問題。謝謝。
添加回答
舉報
0/150
提交
取消