अधिक जानकारी की आवश्यकता है। टेबल डबल है? मैं ओरेकल से परिचित नहीं हूं, लेकिन क्या यह एक फ़्लोटिंग पॉइंट प्रकार है? java.sql.Types
किस प्रकार का अनुवाद करता है? आप अपने डेटाबेस के लिए बोली वर्ग में डेटाबेस प्रकार मैपिंग के लिए java.sql.Types
देख सकते हैं। इस मामले में यह org.hibernate.dialect.Oracle10gDialect
है (जो 9i और 8i तक फैला हुआ है)। ऐसा लगता है कि
registerColumnType(Types.DOUBLE, "double precision");
तो, तालिका double precision
के रूप में परिभाषित करने की आवश्यकता है, और जावा वर्ग कुछ है कि Types.Double
, आमतौर पर double
करने के लिए नक्शे होगा के रूप में परिभाषित किया जाना चाहिए।
त्रुटि संदेश से, यह की तरह अपनी मेज float
जो इस मानचित्रण
registerColumnType(Types.FLOAT, "float");
जिसके लिए उम्मीद जावा प्रकार कुछ है कि Types.FLOAT
, आमतौर पर float
को नक्शे होगा का प्रयोग करेंगे के रूप में परिभाषित किया गया है लग रहा है, एक सटीक मूल्य।
सबसे आसान काम करने के लिए या तो अपनी तालिका या जावा क्लास को मिलान करने के लिए बदलना है। वैकल्पिक रूप से, आप एक उपयोगकर्ता प्रकार निर्दिष्ट कर सकते हैं जो एक एकल परिशुद्धता मान को एक डबल परिशुद्धता मान पर मैप करेगा; मैं नहीं सोच सकता कि आप वास्तव में ऐसा क्यों करना चाहते हैं, लेकिन हो सकता है कि यदि आपके पास कक्षा और तालिका दोनों पर नियंत्रण नहीं था, जो कि काफी दुर्लभ है, तो मुझे लगता है।
hth।
स्रोत
2010-03-26 16:51:20
क्या आप दिखा सकते हैं कि आप वास्तव में इस कॉलम को कैसे मैप करते हैं? बीटीडब्ल्यू ने यह नोट करके कि आप उत्पादन में जाने से पहले आखिरी मिनट में हैं, आप बस अपने ऐप का परीक्षण करने के लिए अपनी नींद के बारे में विनोदी टिप्पणी प्राप्त करना सुनिश्चित करें :-) –
हाहा :) चिंता न करें, मैं मैला नहीं हूँ जब उत्पादन सामग्री की बात आती है। जब तक यह तय नहीं किया जाता है तब तक यह बाहर नहीं जाएगा। वैसे भी, यह मेरे सह-कार्यकर्ता में से एक बग है और मैं बस उसकी मदद करने की कोशिश कर रहा हूं। हालांकि अच्छी टिप्पणी :) –
मैंने आपके सुझाव के अनुसार अपना प्रश्न संपादित किया। धन्यवाद। –