get、Post是一种格式约定,格式控制是通过@RequestBody,@RequestParam,@PathVariable控制的。
1、使用@RequerstBody注解,会直接将参数传到后台,后台将其从json字符串转换为实体。
若实体包含日期,全局上,可在配置文件中使用spring.jackson指定日期格式,比如:
spring:
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
局部可在日期字段上添加@JsonFormat(pattern = "yyyy-MM-dd")注解。
public class RequestBodyDto {
@JsonFormat(pattern = "yyyy-MM-dd")
private Date date;
// getter/setter
}
2、使用@RequestParam注解,前台传参到后台格式为 xxx?date=2023-08-04 。后台需用@DateTimeFormat指定日期格式,如
void test(@DateTimeFormat(pattern="yyyy-MM-dd") @PathVariable("date") Date date){}
3、使用@PathVariable注解,前台传参到后台格式为 xxx?2023-08-04 。后台需用@DateTimeFormat指定日期格式,和@RequestParam注解相同。
注:例三中前台日期格式若传 xxx?2023/08/04 ,会提示无法找到后台地址。所以还不知道如何通过url传yyyy/MM/dd的日期格式。