解决控制台能够数据Date数据,但是浏览器中无法显示Date的相关数据
@ResponseBody
@GetMapping("/test/people")
public people getPeople(){
people p = new people();
p.setName("yjh");
p.setAge("25");
p.setBirth(new Date());
return p;
}
浏览器json数据中无Birth的输出;
{
"name": "yjh",
"age": "25",
}
原因:people对象中,没有对Date数据进行格式化,导致浏览器无法解析birth的json格式,使之没有输出
解决方法1):加上注解 @JsonFormat(pattern=“yyyy年MM月dd日 HH时mm分ss秒”,timezone = “GMT+8”)
@JsonFormat(pattern="yyyy年MM月dd日 HH时mm分ss秒",timezone = "GMT+8")
private Date birth;
解决方法2):使用
@Data :自动创建set、get方法
@NoArgsConstructor :自动创建无参构造器
@AllArgsConstructor :自动创建有参构造器
public class people {
private String name;
private String age;
private Date birth;
}
@Data:该注解会自动为你解析Date格式,保证能输出json数据
**注意:**使用这三个注解之前:1.在setting中下载lomok插件,2.在pom.xml文件中引入lombok的jar包,才可以使用上面三个注解
结果:
{
"name": "yjh",
"age": "25",
"birth": "2021-06-02T02:49:18.777+00:00"
}