mysql遇到时区问题的坑(Java解决方案)
最近项目遇到一个坑,就是server和db之间存在时区问题,本人的db是utc时间,
可以使用代码设置时区来解决,本人这里使用joda三方包,joda蛮好用的,具体用法这里不做详细描述。
先引入pom
<dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId><version>2.10.1</version> </dependency>
下面在使用的地方加上下面一句即可。
// 这里使用UTC,还有其他的配置参数,比如: Asia/Shanghai Asia/Chongqin 等等DateTime utcDT = new DateTime().withZone(DateTimeZone.UTC).toLocalDateTime().toDateTime();... ... ...UserDto dto = new UserDto(); dto.setCreated(utcDT.toDate()); userMapping.insertRecords(dto);
除了上面的方法外,还可以在驱动器的连接URL上加参数,如下:
spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://127.0.0.1:3306/xxx?useUnicode=true&characterEncoding=utf8 &allowMultiQueries=true&useLegacyDatetimeCode=false&serverTimezone=UTC spring.datasource.username=root spring.datasource.password=111111
说明:useLegacyDatetimeCode=false 关键是这个参数,引用:http://www.voidcn.com/article/p-eqvuhiio-bsb.html 这里有详细的介绍
附上mysql官网文档:https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-configuration-properties.html
转载于:https://www.cnblogs.com/jimmyshan-study/p/10974926.html
mysql遇到时区问题的坑(Java解决方案)相关推荐
- JAVA使用MySQL数据库连接时区问题解决方法?
java.sql.SQLException: The server time zone value '�й���ʱ��' is unrecognized or represents more tha ...
- IDEA连接mysql出现时区错误_idea连接数据库时区错误
错误界面 IDEA连接mysql,地址,用户名,密码,数据库名,全都配置好了,点测试连接,咔!不成功! 界面是这样的, 翻译过来就是:服务器返回无效时区.进入"高级"选项卡,手动设 ...
- mysql8 index255_详解关于MySQL 8.0走过的坑
今天手贱更新了MySQL 8.0 第一个问题:Navicat连接不上数据库 安装的mysql为localhost:3306,配置一切默认,安装后打开Navicat 12 新建连接,直接报错 authe ...
- mysql印度时区_一次 JDBC 与 MySQL 因 “CST” 时区协商误解导致时间差了 14 或 13 小时的排错经历...
CST 时区 名为 CST 的时区是一个很混乱的时区,有四种含义: 美国中部时间 Central Standard Time (USA) UTC-06:00 澳大利亚中部时间 Central Stan ...
- 数据库时区那些事儿 - MySQL的时区处理
原文地址 当JVM时区和数据库时区不一致的时候,会发生什么?这个问题也许你从来没有注意过,但是当把Java程序容器化的时候,问题就浮现出来了,因为目前几乎所有的Docker Image的时区都是UTC ...
- mysql内部时区_一文解决MySQL时区相关问题
前言: 在使用MySQL的过程中,你可能会遇到时区相关问题,比如说时间显示错误.时区不是东八区.程序取得的时间和数据库存储的时间不一致等等问题.其实,这些问题都与数据库时区设置有关,本篇文章将从数据库 ...
- Linux部署Tomcat踩的坑以及解决方案【8080无法访问、日志显示XX端口被占用、修改默认端口、无法提供安全连接】
Linux部署Tomcat踩的坑以及解决方案[8080无法访问.日志显示XX端口被占用.修改默认端口.无法提供安全连接] 8080无法访问 解压开压缩包后,执行bin目录下的 startup.sh 后 ...
- mysql的时区设置
mysql的时区设置 IDEA配置mysql数据库时,地址,用户名,密码,数据库名填写之后,点测试连接,提示 Server returns invalid timezone. Go to 'Advan ...
- 关于Mysql 的时区问题
问题: 遇到这样一个问题,Mysql的时区,没有设置,默认是时区是0,在java代码中对应的字段类型是TimeStamp,mysql字段类型也是TimeStamp 项目A 代码中获取到的时间 是正确的 ...
最新文章
- 通过IP地址和子网掩码与运算计算相关地址
- 技术图文:进一步完善自动化交易系统 - 03
- 分享一个数据库工具DTOOLS
- jQuery.validate使用必备
- nyoj 10 skiing(DAG上的最长路,备忘录方法)
- C# RGB颜色转换为16进制
- 【干货】腾讯人力资源与组织管理体系.pptx(附下载链接)
- 分治,递归,贪心算法,动态规划的关系
- Beego 框架学习(一)
- LNMP之PHP服务的安装(FastCGI方式)
- java itext 页边距_iText的用法
- pb使用http方式上传下载文件
- u盘数据恢复软件哪个好?怎么恢复u盘数据?
- 混合颜色的色值计算公式
- 多路测量实时同步工作原理_数字示波器原理
- 通过Google+设置壁纸报错
- 大学“电路分析基础”试题合集第四章
- it小鲜肉c语言编程,小鲜肉修炼手册信院篇100.doc
- GCC最新版安装及错误解决
- SpringBoot之:SpringBoot中使用HATEOAS
热门文章
- JS_Java_Oracle_MySQL截取字符串的函数
- html 元素的属性
- Linux 命令之 curl -- 文件传输工具/下载工具/网络接口调试
- 云服务器的协议,云服务器协议
- 上传文件显示进度条_文件上传带进度条进阶-断点续传
- 【音视频安卓开发 (三)】OpenGL ES 直接绘制YUV
- LeetCode 234 回文链表
- cmake 安装mysql5.6_CMAKE安装MYSQL 5.6.10
- html文字添加波浪线,利用css渐变给文字下方加波浪线
- elasticsearch原理_花几分钟看一下Elasticsearch原理解析与性能调优