发布时间:2026-07-21阅读(1)
近日,在调研工作流Activiti7,构建本地项目,开发demo的时候,发起时间不一致问题。已知,Activiti在部署流程的时候,会操作表ACT_RE_DEPLOYMENT,此表的作用是记录流程历史的发布(包括项目本身的启动也会记录一次);且,该表中定义了一个字段DEPLOY_TIME_(timestamp数据类型)。
构建启动项目,部署一个流程(audit_process_1)发现字段DEPLOY_TIME_保存的时间与当前时间相差了13个小时。

流程部署记录表截图
排查问题服务器时区
本地服务,肯定是东八区时间,不存在对应的问题,跳过此步骤。
查询mysql服务器的时间配置
SHOW VARIABLES LIKE %time_zone%;

时区结果
CST时区
美国中部时间 Central Standard Time (USA) UTC-06:00澳大利亚中部时间 Central Standard Time (Australia) UTC 09:30中国标准时 China Standard Time UTC 08:00古巴标准时 Cuba Standard Time UTC-04:00
然而,美国从“3月11日”至“11月7日”实行夏令时,美国中部时间改为 UTC-05:00,与 UTC 08:00 相差 13 小时。
解决方案数据库连接参数
新增参数:serverTimezone=Asia/Shanghai
url: jdbc:mysql://localhost:3306/workflow?useSSL=false&nullCatalogMeansCurrent=true&serverTimezone=Asia/Shanghai username: root password: 123456

流程发布截图
mysql配置
default-time-zone = 08:00
timestamp,以时间戳格式存储,占用4个字节,显示依赖于所指定的时区;
datatime,以 YYYY-MM-DD HH:MM:SS 格式存储时期时间,精确到秒,占用8个字节的存储空间。
上一篇:芭蕾舞适合从多大开始学习
下一篇:如何注册qq号 怎样注册qq号
Copyright © 2024 有趣生活 All Rights Reserve吉ICP备19000289号-5 TXT地图HTML地图XML地图