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

लेन-देन के दौरान लिखने के लिए केवल पढ़ने के लिए हाइबरनेट सत्र को कैसे परिवर्तित करें (मास्टर/स्लेव डीबी)

हम लेन-देन केवल रीड ओनली मोड में खोलते हैं और फिर इसे राइट मोड में बदल देते हैं क्योंकि रीड ओनली कनेक्शन कोई समस्या नहीं होगी क्योंकि यह साल्वे डीबी के साथ है।

हम HibernateTemplate . को ओवरराइड करते हैं वर्ग और सत्र लिखने के तरीके में बनाने के तरीके बनाएं

 public final void writeEnabled(){
    getSession().doWork(jdbcWorkWriteEnabled);
}

public final void writeDisabled(boolean flush){
    if(flush)
        flush();
    getSession().doWork(jdbcWorkWriteDisabled);
}

public static final void writeEnabled(Session session){
    session.doWork(jdbcWorkWriteEnabled);
}

public static final void writeDisabled(boolean flush,Session session){
    if(flush)
        session.flush();
    session.doWork(jdbcWorkWriteDisabled);
}

final static Work jdbcWorkWriteEnabled = new Work(){
    public void execute(Connection connection) throws SQLException {
        connection.setReadOnly(false);
    }
};

final static Work jdbcWorkWriteDisabled = new Work(){
    public void execute(Connection connection) throws SQLException {
        connection.setReadOnly(true);
    }
};

एप्लिकेशन लॉजिक में लिखने से पहले हम जांचते हैं कि
कनेक्शन राइट मोड में है, फिर बस लिखें।>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. फ़ील्ड सूची में अज्ञात स्तंभ

  2. साझा होस्टिंग प्लेटफॉर्म पर फ़ाइल को MySQL डीबी में कैसे लोड करें?

  3. प्रति समूह N परिणाम प्राप्त करने के लिए GROUP BY के भीतर LIMIT का उपयोग करना?

  4. पेपैल आईपीएन MySQL डेटाबेस अपडेट नहीं कर रहा है

  5. mysql कार्यक्षेत्र रिकॉर्ड सीमा