フロントエンドは時刻値 2099-01-01T00:00:00+08:00 を springboot が提供する RESTful インターフェイスに送信し、mysql データベースに保存します。
データベースは 2098-12-31 16:00:00 に保存されていることがわかります。この時点では、mybatis の jdbctype は指定されておらず、デフォルトのタイムスタンプが使用されます。
タイムゾーンが間違っている Linux システムを確認したところ、mysql 自体のタイムゾーンには問題がなかったので、設定の問題と思われます。
Springboot で使用される Date オブジェクトは、出力値を直接受け入れて出力しますが、時刻は問題ないため、データベースの書き込みの一部に含まれている必要があります。
mybatisの設定には問題はありませんが、データベースURLへの接続のタイムゾーンの問題であることが分かりました。
serverTimezone=UTCは、 serverTimezone=GMT%2B8
に変更されました。GMT+8 は使用しないでください。プラス記号を使用すると問題が発生します。
テストを再度開始すると、データベースに期待どおりの内容が書き込まれます。
読み取り以外に、フロントエンドに返されるのは 2019-06-04T02:51:31.000+0000 で、これも East Eighth District に変換する必要があります。
上記のデータベースからの読み込みが設定されているので問題ないはずなので、オブジェクトをjsonに変換するときにSpringbootにある必要があります
spring.jackson.time-zone パラメーターが GMT+8 に設定されているだけです。