PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

JPA का उपयोग करके PostgreSQL में UUID को बनाए रखना

PostgreSQL JDBC ड्राइवर ने गैर-JDBC-मानक प्रकार के कोड का प्रतिनिधित्व करने के लिए दुर्भाग्य से एक तरीका चुना है। वे बस उन सभी को Types.OTHER पर मैप करते हैं। लंबी कहानी संक्षेप में, आपको यूयूआईडी मैपिंग (पोस्टग्रेज-विशिष्ट यूयूआईडी डेटाटाइप के कॉलम के लिए) को संभालने के लिए एक विशेष हाइबरनेट प्रकार मैपिंग सक्षम करने की आवश्यकता है:

@Id
@Column(name = "customer_id")
@org.hibernate.annotations.Type(type="org.hibernate.type.PostgresUUIDType")
private UUID id;

या अधिक संक्षेप में:

@Id
@Column(name = "customer_id")
@org.hibernate.annotations.Type(type="pg-uuid")
private UUID id;

एक अन्य (बेहतर) विकल्प org.hibernate.type.PostgresUUIDType को java.util.UUID के रूप में उजागर सभी विशेषताओं के लिए डिफ़ॉल्ट हाइबरनेट प्रकार मैपिंग के रूप में पंजीकृत करना है। यह दस्तावेज़ीकरण में शामिल है @ http://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch06.html#types-registry



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL 9.2.1 को हाइबरनेट से जोड़ना

  2. @BatchSize एक स्मार्ट या बेवकूफी भरा उपयोग?

  3. मैं मूल क्वेरी में स्ट्रिंग [] पैरामीटर कैसे सेट कर सकता हूं?

  4. निष्क्रिय PostgreSQL कनेक्शन के लिए कोई समयबाह्य है?

  5. प्राथमिक कुंजी के रूप में ईमेल पते का प्रयोग करें?