@RequestBody中使用@DateTimeFormat报错: JSON parse error: Expected array or string.; nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException

原因分析

根据异常提示:不匹配输入异常,指输入的参数错误,说是只支持String类型和Array数组类型的。

@PostMapping("/test")
public Dto getWindStorageOutputPower(@ApiIgnore @RequestBody @DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate localDate) {
    System.out.println(localDate);
    return null;
}
@RequestBody中使用@DateTimeFormat报错: JSON parse error: Expected array or string.; nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException

修改:

将输入参数改为String类型的日期。比如 2021-06-04;或者将@RequestBody改为@RequestParam。
其他场景

  • 如果接受前端的是实体类,日期为实体中的一个属性,需要将@DateTimeFormat加到成员变量上,而不是在方法参数中
    @RequestBody中使用@DateTimeFormat报错: JSON parse error: Expected array or string.; nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException
@RequestBody中使用@DateTimeFormat报错: JSON parse error: Expected array or string.; nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException

@RequestBody中使用@DateTimeFormat报错: JSON parse error: Expected array or string.; nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException

上一篇:微信小程序提示云函数部署不成功


下一篇:一个Java crash问题解决