Какви са типовете колони в MySQL? Подозирам, че е DATETIME. Този тип не съхранява „момент във времето“, той съхранява „час на часовника“, така че може да означава различен момент в различни часови зони.
Когато драйверът на MySQL пише java.util.Date в колона DATETIME, той трябва да избере някаква часова зона, за да напише "час по часовник", тъй като един и същ java.util.Date може да означава различен час в различни часови зони. Той съхранява часа като в местната часова зона на MySQL сървър.
LocalDateTime няма този проблем, защото е като DATETIME. Той представлява час на часовник, а не момент във времето, поради което година/месец/ден-час/минута/секунда просто се съхраняват в базата данни. Забележете, че в журнала на хибернация LocalDateTime е даден такъв, какъвто е, докато има часова зона („CST“) до дата.
Като цяло е добра практика да съхранявате времето винаги в UTC, така че използвайте DateTime, а не Date или LocalDateTime. DateTime с конвертора на jadira винаги съхранява/чете DATETIME като UTC.