2014-10-19 8 views
11

के साथ इंस्टेंट (जेडीके 8) निरंतर जेपीए और न ही हाइबरनेट वर्तमान में जेडीके 8 (जेपीए ticket, हाइबरनेट ticket) में जेएसआर -310 द्वारा लाए गए नए दिनांक/समय कक्षाओं का समर्थन करता है। फिर भी, मैं जेडीके 8 दिनांक/समय कक्षाओं के साथ कोड करना चाहता हूं क्योंकि आखिरकार वे अच्छी तरह डिज़ाइन किए गए हैं। विशेष रूप से, मुझे java.time.Instant में दिलचस्पी है, सभी java.time.* प्रकारों के लिए पूर्ण समर्थन में नहीं, क्योंकि मेरी सभी संस्थाएं इस विशेष श्रेणी का उपयोग करेंगी (या तो मुझे लगता है कि कम से कम :-)जेपीए 2/हाइबरनेट

एक विकल्प लिखना है type converter, जैसा कि जेपीए 2.1 द्वारा परिभाषित किया गया है। हालांकि, हमारा ऐप सर्वर जेबॉस ईएपी 6.3 है जो जेपीए 2.0 है लेकिन 2.1 संगत नहीं है, इसलिए यह अब सवाल से बाहर है।

अगला विकल्प एक हाइबरनेट उपयोगकर्ता प्रकार (अन्य जेएसआर -310 कक्षाओं here को परिवर्तित करने के बारे में एक ब्लॉग पोस्ट) का उपयोग करना है।

क्या बेहतर विकल्प हैं? धन्यवाद।

+0

में विलय कर दिया गया है हाँ: http://jadira.sourceforge.net/index.html –

उत्तर

13

या तो उपयोग हाइबरनेट 5.2.0+ निम्नलिखित निर्भरता:

आप अब Ipandzic की टिप्पणी से hibernate-java8 निर्भरता को शामिल करने की जरूरत है और आप किसी भी अतिरिक्त कदम के बिना इस तरह LocalDateTime या त्वरित रूप java.time.* कक्षाओं का उपयोग कर सकते हैं -
+0

धन्यवाद: एक पुस्तकालय है कि आप के लिए इन हाइबरनेट उपयोगकर्ता प्रकार परिभाषित करता है का उपयोग करें। मैं अभी तक हाइबरनेट 5 का उपयोग नहीं कर सकता, हालांकि, यह केवल बीटा में है। – wishihadabettername

+0

एनपी, आप जल्द ही करेंगे। यह 27/मई/2015 को रिलीज के लिए निर्धारित है, [यहां] देखें (https://hibernate.atlassian.net/projects/HHH?selectedItem=com.atlassian.jira.jira-projects-plugin:release-page) – lpandzic

+0

अफसोस की बात है, उन्होंने रिलीज शेड्यूल बदल दिया है, इस समय, केवल सीआर 1 संस्करण उपलब्ध है। – lpandzic

3

हाइबरनेट 5.2 में बाद इस मुद्दे को और अधिक पूरी तरह से हल किया है। आपको java.util.LocalDateTime आदि का उपयोग करके Temporal के रूप में कॉलम को चिह्नित करने की आवश्यकता नहीं है, जिस तरह से आपको पुराने java.util.Date दृष्टिकोण के साथ जाना था।

हाइबरनेट 5.2 के बाद से, hibernate-java8 सामग्री hibernate-coresee the change notes here