MySQL में कॉलम कितने प्रकार के होते हैं? मुझे संदेह है कि यह DATETIME है। यह प्रकार "समय में क्षण" संग्रहीत नहीं करता है, यह "घड़ी पर घंटे" संग्रहीत करता है, इसलिए अलग-अलग समय क्षेत्रों में अलग-अलग क्षण हो सकते हैं।
जब MySQL ड्राइवर java.util.Date to DATETIME कॉलम लिखता है, तो उसे "घड़ी पर घंटा" लिखने के लिए कुछ समय क्षेत्र चुनना पड़ता है, क्योंकि एक ही java.util.Date का अर्थ अलग-अलग समय क्षेत्रों में अलग-अलग घंटे हो सकता है। यह MySQL सर्वर के स्थानीय समय क्षेत्र की तरह घंटे को स्टोर करता है।
LocalDateTime में यह समस्या नहीं है, क्योंकि यह DATETIME की तरह है। यह घड़ी पर घंटे का प्रतिनिधित्व करता है, समय में क्षण नहीं, इस प्रकार वर्ष/माह/दिन-घंटा/मिनट/सेकंड डेटाबेस में संग्रहीत होते हैं। हाइबरनेट लॉग में नोटिस लोकलडेटटाइम जैसा है वैसा ही दिया गया है, जबकि तारीख के आगे टाइमज़ोन ("सीएसटी") है।
आम तौर पर, यूटीसी में हमेशा समय स्टोर करना अच्छा अभ्यास है, इसलिए डेटटाइम का उपयोग करें, न कि दिनांक और न ही लोकलडेटटाइम। जदिरा कनवर्टर के साथ डेटटाइम हमेशा DATETIME को UTC के रूप में संग्रहीत/पढ़ता है।