• Spring boot 2.1.x 造成的问题


    1. mysql-conector-java 版本默认使用了 8.0.1.5 

    导致:项目启动时的警告:Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.

    并且由于我的mysql的版本还是5.6.16,并且我的数据库链接url没有加上serverTimezone=Asia/Shanghai这一参数,导致我的数据库的时间我java项目的时间相隔13个小时,据说这也是因为:

    JDBC 与 MySQL 因 “CST” 时区协商误解导致

    名为 CST 的时区是一个很混乱的时区,在与 MySQL 协商会话时区时,Java 会误以为是 CST -0500,而非 CST +0800

    CST 时区

    名为 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

    今天是“4月28日”。为什么提到日期?因为美国从“3月11日”至“11月7日”实行夏令时,美国中部时间改为 UTC-05:00,与 UTC+08:00 相差 13 小时。

    所以:在升级了依赖的版本之前一定要查询可能产生的影响,并多方面测试,避免造成不必要的麻烦。

    我的解决方式是mysq-connector还是强制使用原来较低的版本版本,就不会产生相差13个小时和启动的警告了。

    <dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.41</version>
    </dependency>

    参考:

    https://juejin.im/post/5902e087da2f60005df05c3d?utm_source=tuicool&utm_medium=referral 

  • 相关阅读:
    沙盒配置好的测试
    云端存储的实现:云存储1
    演职人员名单MobileMenuList
    关于GitHub的朋友的NE Game
    到了冲刺阶段
    云存储的配置3
    刚才花了1$赞助了那位伙计
    我知道这对自己是个积累的过程,很好,我成长的很快
    煎熬过后终于有一刻释怀
    空白不曾停止。。。
  • 原文地址:https://www.cnblogs.com/bfyq/p/10790546.html
Copyright © 2020-2023  润新知