1、数据库中时间和前台展示时间不一致问题?
1.1 原因
spring中对于@RestController或者@Controller+@ResponseBody
注解的接口方法的返回值默认是Json格式,
所以当对于date类型的数据,在返回浏览器端是会被spring-boot
默认的Jackson框架转换,而Jackson框架默认的时区GMT(相对于中国是少了8小时)。
1.2 解决方法
如果你的项目是 SpringBoot
在application.properties添加配置 配置spring的时区 这条语句能解决你时间少8个小时问题
可以是Date时间格式化,一般这两条语句一起用
spring.jackson.time-zone=GMT+8
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
1.3 字段对比
数据库字段
实体类字段 格式化时间
1.4 效果
时间可以正常显示 数据库保存时间
2、如何保存日期数据到数据库?
数据库中保存时间的类型 是 datetime
实体类字段 修饰时间的是Date
如何保存具体到秒的时间到数据库呢 ?
先将日期格式化一下,然后再转换成Date类型的。再将数据保存到数据库
SimpleDateFormat simpleDateFormat2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String data = simpleDateFormat2.format(new Date());
Date date = simpleDateFormat2.parse(data);
保存到数据库的时间 格式如下: