zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    js的异步运行机制
    Android NDK 安装与配置
    JNI与NDK的区别
    Android 开发手记一NDK编程实例
    android AIDL服务
    Android Service学习之AIDL, Parcelable和远程服务
    Android中JNI的使用方法
    Android之drawable state各个属性详解
    android中的Touch研究
    Android中的ListView点击时的背景颜色设置
  • 原文地址:https://www.cnblogs.com/jimmyshan-study/p/10974926.html
Copyright © 2011-2022 走看看