Java 我需要将日期从json传递到我的控制器

Java 我需要将日期从json传递到我的控制器,java,rest,date,thymeleaf,Java,Rest,Date,Thymeleaf,嗨,我是个约会新手 这是我的控制器。我想传递字符串日期,而不是Instant.now()。 @PutMapping("/edit") public void edit (@RequestBody Client client) { clientService.update (client.getId (), Instant.now ()); } public interface ClientService { Subscription upda

嗨,我是个约会新手

这是我的控制器。我想传递字符串日期,而不是Instant.now()。

@PutMapping("/edit")
  public void edit (@RequestBody Client client) {
     clientService.update (client.getId (), Instant.now ());
  }


 public interface ClientService {
     Subscription update(String clientId, Instant myTime);
 }


${#temporals.format(client.myTime, 'yyyy-MM-dd')}
我的实体

  @NotNull
  @JsonProperty("myTime")
  @JsonFormat(pattern="yyyy-MM-dd")
  private OffsetDateTime myTime;

public OffsetDateTime getMyTime() {
    return myTime;
  }

  public void setMyTime(OffsetDateTime myTime) {
    this.myTime = myTime;
  }
当我尝试将client.getMyTime()传递给edit()时,我有以下情况:

org.springframework.http.converter.httpMessageNodeTableException: 无效的JSON输入:无法反序列化类型的值
java.time.OffsetDateTime
来自字符串“2021-05-05”:未能 反序列化java.time.OffsetDateTime:(java.time.DateTimeException) 无法从TemporalAccessor获取OffsetDateTime:{},已解析为ISO 至2021-005-05,类型为java.time.format.Parsed;嵌套异常是 com.fasterxml.jackson.databind.exc.InvalidFormatException


如何解决?如何将日期从前端传递到控制器?

尝试使用
java.util.date
对象

private Date myTime;

格式不是必需的。

您使用的是Thymeleaf HTML模板还是REST JSON API?您使用的是
@Controller
还是
@RestController
?是的,我使用Thymeleaf,我使用restcontrollers,所以您使用Thymeleaf显示HTML页面(通过
@Controller
),然后使用JavaScript向REST API发出AJAX请求(使用
@RestController
),对吗?使用OffsetDateTime有什么具体原因吗?在我的项目中有很多OffsetDateTime的用法。换成别的东西会有很大的问题。