springboot mysql时区设置_java/springboot/mysql时区问题解决方案
解决步骤:
先理清楚逻辑
数据从mysql查出-->进入docker(没容器化跳过)-->进入相应的应用程序(比如java或者框架springboot之类的)-->程序处理完输出返回给前端或者页面-->展示
第一步:先查mysql
所以先进入mysql控制台,select now(),时区没问题则这里显示的时间和当前中国时间一致,或者show variables like '%time_zone%';
image.png
如果时区不对可以设置
set global time_zone = '+8:00';
flush privileges;
不过重启会失效,想不失效可以改my.cnf然后重启mysql
第二步:进入docker容器看时区对不对(如果不是容器化跳过)
先用docker ps 查看容器id,拿到id 进去相应容器
命令为
docker exec -ti 7a542556a73a /bin/bash
接下来在容器内查看当前时间是否和中国时间一致
date -R
如果不一致需要在Dockerfile时加上
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
第三步:应用程序时区
比如java代码中new出的date查看,如果不是中国时区,可以在Dockerfile中加上
ENV JAVA_OPTS $JAVA_OPTS -Duser.timezone=GMT+08
如果是框架的时区问题,那要查询对应框架的时区设置
比如springboot的时区设置如下
public class SpringBootApplication{
public static void main(String[] args) {
TimeZone.setDefault(TimeZone.getTimeZone("Asia/Shanghai"));
SpringApplication.run(SpringBootApplication.class, args);
}
}
除此之外,程序处理完后需要返回前端也有时区差异
springboot中需要在application.yml中设置
spring:
jackson:
time-zone: Asia/Shanghai
第四步:至此后台时区一致,前端展示基本不会有问题,不多叙述
欢迎大家加入Java技术群
1544106895022.png
作者:诗错亦染瑾
链接:https://www.jianshu.com/p/7f83f6ab58e4
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
springboot mysql时区设置_java/springboot/mysql时区问题解决方案相关推荐
- mysql关于时间的面试题,mysql时间设置默认值MySQL常见面试题
1.limit(选出10 到20 条) select * from students order by id limit 9,10; 2.MySQL 会使用索引的操作符号 =,>,=,betwe ...
- java连接mysql时区修改_java连接mysql数据库时的时区设置问题(time_zone)
java在连接mysql数据库时,会由于时区设置不正确导致报以下的错误: The server time zone value '???ú±ê×??±??' is unrecognized or re ...
- mysql时区设置gmt_将MySQL数据库时区设置为GMT
不,不可能在MySQL实例中更改单个数据库的时区. 您可以检索服务器和客户端time_zone设置: SELECT @@global.time_zone, @@session.time_zone; 您 ...
- Mysql时区设置最佳实践,mysql设置时区_修改MySQL时区设置的方法
摘要 腾兴网为您分享:修改MySQL时区设置的方法,一直播,一点开,小猿口算,汤圆等软件知识,以及都优乐,daysmatter,乐学高考app,随缘漂流瓶,虚拟软件,平安知鸟,智能证件照app,新概念 ...
- linux mysql temp 设置_linux上mysql的简单入门
默认状态下其它pc是不能通过ip访问,本地mysql的,需要修改一个配置,如下 $ sudo vi /etc/mysql/my.cnf 找到行 bind-address = 127.0.0.1 直接注 ...
- java mysql 插入 乱码_java向mysql插入数据乱码问题的解决方法
遇到java向mysql插入数据乱码问题,如何解决? MySQL默认编码是latin1 mysql> show variables like 'character%'; +----------- ...
- java连接mysql抛异常_Java 连接MySQL数据库 插入中文 抛出异常
mysql数据库字符集设为默认: 下面解决好的代码,没乱码,我测试过的 String sContent = new String(request.getParameter("content1 ...
- mysql数据库连接时区设置_springboot 连接数据库之时区设置
抽空查看以前的开发日志,发现了一些"问题"日志,决定整理后陆陆续续发出来吧,也为有需要的话小伙伴提供点帮助. 在springboot启动之时,报错了,一看应该就是连接MySql数据 ...
- esxi时区设置 +8_Go语言MySQL时区问题
原文见:Go语言MySQL时区问题 - Jiajun的编程随想 最近由于我要统一技术栈,因此把原本使用SQLite做存储的数据全部迁移到MySQL.博客也是.不过当我检查数据库时,发现时间和 我产生数 ...
最新文章
- 数据结构——马踏棋盘题解(贪心算法)
- SQLSERVER自动定时(手动)备份工具
- 信息学奥赛一本通C++语言——1120:同行列对角线的格
- linux 3d加速驱动_实时Linux,3D打印自行车,Google的“加速的移动页面”等
- matlab fft 功率谱,matlab实现功率谱估计,关于FFT点数选取到底什么标准?
- Java包装类的缓存范围
- 关于angular开发中报错Cannot find module ‘webpack/lib/node/NodeTemplatePlugin‘问题的解决办法若干
- FLASH 闪存的分类与介绍
- bugku ctf 备份是个好习惯 (听说备份是个好习惯)
- 关于语音会议自动转文字系统的想法
- PMP模拟试题与解析(四)
- 如何成为一名高级数字 IC 设计工程师(6-4)数字 IC 验证篇:测试点分解
- java web分享ppt大纲 -- servlet容器简介
- SAP中通过定制开发在寄售结算MRKO中实现发票校验功能
- Python 基础知识教程
- 局域网内两台主机 IP ping 不通的问题分析
- iris接口返回json数据封装
- linux安装appt服务,Centos下pptd ***搭建
- 为什么你的动环监控系统有那么多的问题
- 如何查看windows server2016硬件的使用状况,比如磁盘、GPU等