1. 说明
对于@RequestBody注解,Springboot默认使用Jackson实现json字符串和java对象之间的转换(序列化和反序列化);也可进行修改使用阿里的fastjson(本文不介绍),Jackson不支持LocalDateTime与格式yyyy-MM-dd HH:mm:ss之间的转换,需要自定义转换。
2. 格式化@RequestBody时间
a) 方法1
直接在类成员变量上加注解进行转换(注意时区),只对单个类有效。LocalDate
、LocalTime
类似
@DateTimeFormat(pattern = “yyyy-MM-dd HH:mm:ss”)
@JsonFormat(pattern = “yyyy-MM-dd HH:mm:ss”, timezone = “GMT+8”)
private LocalDateTime time;
3格式化@RequestParam时间
@GetMapping(path = “date”)
public String world(@RequestParam @DateTimeFormat(pattern = “yyyy-MM-dd HH:mm:ss”) LocalDateTime datetime,
@RequestParam @DateTimeFormat(pattern = “yyyy-MM-dd”) LocalDate date,
@RequestParam @DateTimeFormat(pattern = “HH:mm:ss”) LocalTime time) {
return "test datetime";
}