Java timezone设置和mybatis连接数据库时区设置方式

目录
  • Java timezone设置和mybatis连接数据库时区设置
    • JVM时区设置
    • Mybatis
  • Mybatis timezone问题
    • 解决方法

Java timezone设置和mybatis连接数据库时区设置

JVM时区设置

springboot工程运行时,需要指定时区,这样获取的时间才会和系统时间相同。以下介绍方法:

1.查看当前时区

centos7以前(不含centos7)

cat /etc/sysconfig/clock

centos7以后(包含centos7)

timedatectl

在启动jar包的时候指定-Duser.timezone即可。举例:

nohup java -Xms1024m -Xmx10240m -Xmn3840m -Xss512k -Djava.io.tmpdir=./tmp-jar -Duser.timezone=Asia/Shanghai $JAR_NAME >/dev/null 2>&1 &

Mybatis

连接MYSQL数据库时需要指定时区,这样查出来的时间和数据库中的时间才会一致。

具体操作:

spring.datasource.druid.url=jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai&useSSL=false&zeroDateTimeBehavior=convertToNull&useLegacyDatetimeCode=false

注意这里的 serverTimezone=Asia/Shanghai

这里使用的是阿里的druid连接池。

Mybatis timezone问题

more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.

解决方法

在配置文件中的连接字符串添加serverTimezone=GMT%2B8

<property name="url" value="jdbc:mysql://localhost:3306/database?useSSL=true&amp;useUnicode=true&amp;characterEncoding=utf8&amp;serverTimezone=GMT%2B8"/>

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 详解java连接mysql数据库的五种方式

    第一种方式:将用户名和密码封装在Properties类中 首先,导入数据库连接包这个是毋庸置疑的.创建一个jdbc驱动dirver.将数据库(以MySQL为例)的url保存在所创建的字符串url中.如果mysql版本低于8.0,则url保存形式应该为: String url = "jdbc:mysql://localhost:3306/test" 如果mysql版本为8.0版本或以上,url保存形式为: String url = "jdbc:mysql://localhost

  • 使用Mybatis-plus策略自动更新数据库时间失败问题解决

    引言 在mybatis项目中,我们一般会使用它的插件plus以扩充它的基本查询功能.另一方面,在阿里巴巴开发手册的规范中也提到,在数据库表创建的时候,一般会有一个create_time和update_time字段,它们的建表语句往往如下: 'create_time' timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, 'update_time' timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE C

  • 关于Mybatis-Plus字段策略与数据库自动更新时间的一些问题

    字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断" 问题描述: 当字段策略为 0 "忽略判断" 的时候,如果实体和数据库有字段是需要自动更新的,例如update_time,更新某条记录的时候自动刷新update_time,理论上我们在业务控制的时候是不需要设置update_time的,利用数据库特性就好,但是在该字段策略下,业务逻辑要更新字段(没有主动设置 update_time),这时候因为忽略判断,

  • Java timezone设置和mybatis连接数据库时区设置方式

    目录 Java timezone设置和mybatis连接数据库时区设置 JVM时区设置 Mybatis Mybatis timezone问题 解决方法 Java timezone设置和mybatis连接数据库时区设置 JVM时区设置 springboot工程运行时,需要指定时区,这样获取的时间才会和系统时间相同.以下介绍方法: 1.查看当前时区 centos7以前(不含centos7) cat /etc/sysconfig/clock centos7以后(包含centos7) timedatec

  • Lumen timezone 时区设置方法(慢了8个小时)

    根据 Laravel 4.x 和 5.0 的经验, 只需要到 config/app.php 中设置下 'timezone' 参数为 'PRC' 就好了, 找到 Lumen 的 config 目录, 在 /vendor/laravel/lumen-framework/config 路径下, 但是 config/app.php 的参数选项中没有 timezone 参数选项, 手动加上后也是无效的. 然后想到 Laravel 5 的 .env 文件, 结果发现 Lumen 的 .env 文件里也没有关

  • 详解Jvm中时区设置方式

    这篇文章memo一下Jvm中关于时区设定的基础操作. Java的时区设定 这里列出如下三种方式 方式 说明 TimeZone.setDefault方式 通过java的utils下的TimeZone进行动态设定 user.timezone传递方式 运行时通过传递-Duser.timezone=xxx进行设定 TZ环境变量方式 通过export的TZ环境变量进行设定 TimeZone.setDefault方式 Sample代码如下: sh-4.2# cat TestTimeZone.java imp

  • PHP中date与gmdate的区别及默认时区设置

    一.date与gmdate有什么区别? PHP时间函数中有两个格式化函数:date()和gmdate(),在官方的文档中的描述为: 复制代码 代码如下: date()   #- 格式化一个本地时间/日期gmdate() #- 格式化一个 GMT/UTC 日期/时间,返回的是格林威治标准时(GMT). 先来举个例子,我们现在所在的时区是+8,那么服务器运行以下脚本返回的时间应该是这样的:当前时间假定是2013-03-14 12:15:27 复制代码 代码如下: echo date('Y-m-d H

  • 详解Django 时间与时区设置问题

    再写入数据库对时间进行加减操作时候 django报告了错误 TypeError: can't subtract offset-naive and offset-aware datetimes 修改setting.py 文件 在Django的配置文件settings.py中,有两个配置参数是跟时间与时区有关的,分别是TIME_ZONE和USE_TZ 如果USE_TZ设置为True时,Django会使用系统默认设置的时区,即America/Chicago, 此时的TIME_ZONE不管有没有设置都不

  • SpringBoot:JPA + AuditingEntityListener时区设置方式

    目录 JPA + AuditingEntityListener时区设置 可在应用配置中添加如下配置 @EntityListeners(AuditingEntityListener.class)介绍 @EntityListeners AuditingEntityListener.class JPA + AuditingEntityListener时区设置 在SpringBoot项目中,如果应用启用了EnableJpaAuditing并且使用AuditingEntityListener对实体的创建时

  • Java设置session超时的几种方式总结

    Java设置session超时的几种方式总结 1.      在web容器中设置(此处以tomcat为例) 在tomcat-5.0.28\conf\web.xml中设置,以下是tomcat 5.0中的默认配置: <!-- ==================== Default Session Configuration ================= --> <!-- You can set the default session timeout (in minutes) for

  • 通过Java实现对PDF页面的详细设置

    前言 下面的示例将介绍通过Java编程来对PDF页面进行个性化设置的方法,包括设置页面大小.页边距.纸张方向.页面旋转等.这里有如下多种页面大小尺寸可供选择: 同时,设置文档内容旋转时,可支持如下角度进行内容旋转: 使用工具:Free Spire.PDF of Java 2.2.2(免费版) 方法1:通过官网下载并引用jar,如下步骤: 步骤1:在Java程序中新建一个文件夹可命名为Lib.并将产品包中的jar文件(如下图)复制到新建的文件 夹下. 步骤2:复制文件后,添加到引用类库:选中这个j

  • Java 重命名 Excel 工作表并设置工作表标签颜色的示例代码

    通常在一份Excel文档中可能包含多个内容不同的工作表,而他们的默认名都为Sheet1.Sheet2.Sheet3等.为了方便我们的查找和操作,我们可以将这些工作表重新命名并设置不同的工作表标签颜色.本文就将介绍如何借助Free Spire.XLS for Java来完成这些操作. 产品导入: 1. 下载Free Spire.XLS for Java包并解压缩,然后将lib文件夹下的Spire.Xls.jar包作为依赖项导入到Java应用程序中. 2. 直接通过Maven仓库安装JAR包,按如下

  • MyBatis limit分页设置的实现

    错误的写法: <select id="queryMyApplicationRecord" parameterType="MyApplicationRequest" resultMap="myApplicationMap"> SELECT a.*, FROM tb_user a WHERE 1=1 <if test="ids != null and ids.size()!=0"> AND a.id IN

随机推荐