在写一个带有日期类型的查询时,出现
Failed to convert value of type 'java.lang.String' to required type 'java.util.Date'; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type [java.lang.String] to type [@org.springframework.web.bind.annotation.RequestParam java.util.Date] for value '2021-12-31'; nested exception is java.lang.IllegalArgumentException]
在网上多处进行了查询,找了个最简单的处理办法:
第一步:在实体类上面加两个注解
//表示该字段在接收到前端数据反序列化的时候字段表现出的格式 @DateTimeFormat(pattern = "yyyy-MM-dd") //表示服务在序列化该字段传给前端的时候序列化的格式 @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
代码如下:
@Column(name = "scheduling_date") @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @ApiModelProperty(value = "排班日期") private LocalDate schedulingDate;
第二步:在controller类的参数上面加上参数的格式化注解
@DateTimeFormat(pattern = "yyyy-MM-dd")
代码如下:
//按照日期查询排班信息 @GetMapping("/getSchedulingBySchedulingDate/{schedulingDate}") @ApiOperation(value = "按照日期查询排班信息", httpMethod = "GET") public ListgetSchedulingBySchedulingDate(@PathVariable("schedulingDate") @DateTimeFormat(pattern = "yyyy-MM-dd")LocalDate schedulingDate){ return factorySchedulingServiceImpl.findBySchedulingDate(schedulingDate); }
加完后就OK,启动,测试通过!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)