J'utilise Hibernate 3.6 avec MSSQL 2005, 2008, 2012.
Je voudrais définir le niveau d'isolation d'une transaction créée par la session, mais je ne trouve aucune information sur.
C'est mon code
Session sess = factory.openSession(); Transaction tx = null; try { tx = sess.beginTransaction(); // do some work ... tx.commit(); } catch (RuntimeException e) { if (tx != null) tx.rollback(); throw e; // or display error message } finally { sess.close(); }
Je voudrais faire quelque chose comme ça
sess.beginTransaction(1|2|4|8);
Est-ce possible?
Je vous remercie.
Je viens de découvrir une solution qui a fonctionné pour moi
if (forceReadCommitted) { this.session.doWork(new Work() { @Override public void execute(Connection connection) throws SQLException { connection.setTransactionIsolation(2); } }); }
mais vous pouvez remarquer que c'est pour toute la connection et non pour une transaction spécifique. Il pourrait y avoir de meilleures solutions encore.