mysqlデータベースの挿入時間が14時間異なる
背景:
Spring cloud開発webプロジェクト、データベース:mysql持続性フレームワーク:mybatis
質問:
この間、データが追加された場合、datatimeタイプのデータがmysqlデータベースに挿入された後の時間差は14時間(データベースデータは現在の時間より14時間少ない)という問題がありました.
チェック:
1、プログラムは入庫前に特別な処理をしていない2、システムタイムゾーンを検査する:CST 3、データベースタイムゾーンのチェック:CST(変更がなければ一般的にシステムタイムゾーン)による問題の原因は、高バージョンjdbcによる問題であり、高バージョンjdbcの最下位ドライバは、データベースからクエリされた時間にCalenderを1つタイプ変換し、Calenderレコードに含まれるタイムゾーンに14時間の差が生じたためです.(引用:https://www.cnblogs.com/bignode/p/9310893.html)
解決:
この問題を解決するには、2つの方法があります.1つは、コンフィギュレーションファイルのjdbcのurlにserverTimezone=CST(オペレーティングシステムとデータベースが一致するタイムゾーンを維持し、どこのタイムゾーンも一致すればいい)を手動で設定する方法です.2つは、pomファイルのspring-bootバージョンとspring-cloudバージョンを変更する方法です.例えば、
これにより5.1が自動的に導入する.46バージョンのjdbcドライバでは、14時間差の問題は発生しません.
Spring cloud開発webプロジェクト、データベース:mysql持続性フレームワーク:mybatis
質問:
この間、データが追加された場合、datatimeタイプのデータがmysqlデータベースに挿入された後の時間差は14時間(データベースデータは現在の時間より14時間少ない)という問題がありました.
チェック:
1、プログラムは入庫前に特別な処理をしていない2、システムタイムゾーンを検査する:CST 3、データベースタイムゾーンのチェック:CST(変更がなければ一般的にシステムタイムゾーン)による問題の原因は、高バージョンjdbcによる問題であり、高バージョンjdbcの最下位ドライバは、データベースからクエリされた時間にCalenderを1つタイプ変換し、Calenderレコードに含まれるタイムゾーンに14時間の差が生じたためです.(引用:https://www.cnblogs.com/bignode/p/9310893.html)
解決:
この問題を解決するには、2つの方法があります.1つは、コンフィギュレーションファイルのjdbcのurlにserverTimezone=CST(オペレーティングシステムとデータベースが一致するタイムゾーンを維持し、どこのタイムゾーンも一致すればいい)を手動で設定する方法です.2つは、pomファイルのspring-bootバージョンとspring-cloudバージョンを変更する方法です.例えば、
org.springframework.boot
spring-boot-starter-parent
2.0.2.RELEASE
1.8
Finchley.RC1
これにより5.1が自動的に導入する.46バージョンのjdbcドライバでは、14時間差の問題は発生しません.