失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > java 日期类Date插入mysql数据库时间总是比参数时间少一天

java 日期类Date插入mysql数据库时间总是比参数时间少一天

时间:2018-10-13 06:15:45

相关推荐

java 日期类Date插入mysql数据库时间总是比参数时间少一天

问题发生:

插入日期比预想的少了一天,查看java 中执行的sql

INSERT INTO t3b_msg (send_dt) values(str_to_date(' - 10 - 18','%Y-%m-%d'));

但是到了数据库时间就变成 -10-17了

解决:

经百度发现

自己mysql驱动配置时区问题

自己mysql配置

jdbc.url=jdbc:mysql://10.16.93.62:3306/aml?useUnicode=true&autoReconnect=true&allowMultiQueries=true&useSSL=false

数据库驱动使用的版本是

<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.15</version></dependency>

少了一个参数时区的设置即

serverTimezone=Asia/Shanghai

如果设定为serverTimezone=UTC,会比中国时间早8个小时

所以修改后的url为

jdbc.url=jdbc:mysql://10.16.93.62:3306/aml?useUnicode=true&autoReconnect=true&allowMultiQueries=true&useSSL=false&serverTimezone=Asia/Shanghai

问题完美解决

附带: mysql url 重要参数说明

更多参数请看这里

或者这里

如果觉得《java 日期类Date插入mysql数据库时间总是比参数时间少一天》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。