use*_*994 2 java spring hibernate
我正在使用Spring MVC并休眠。我的基础数据库是Sybase ASA。在我的DAO中,我想找出用于查询的交易级别是多少
这就是我的DAO所拥有的。
Session session = getSession();
String SQL_QUERY = "select ..... ";
Query query = session.createSQLQuery(SQL_QUERY);
query.executeUpdate();
Run Code Online (Sandbox Code Playgroud)
我提到了此链接,但是这似乎已经过时,因此无法正常工作 。如果未明确设置,hibernate使用的默认隔离级别是什么?
我会说这个问题被错误地提出:查询本身没有任何隔离级别。隔离级别是事务的特征。
因此,您很可能想知道当前事务的隔离级别是多少?因此,您很可能不会通过代码来管理此级别。在这种情况下,它由DBMS默认设置或当前设置管理。
try {
session = getSessionFactory().openSession();
txn = session.beginTransaction();
session.doWork(new Work() {
@Override
public void execute(Connection connection) throws SQLException {
LOGGER.debug("Transaction isolation level is {}", Environment.isolationLevelToString(connection.getTransactionIsolation()));
}
});
txn.commit();
} catch (RuntimeException e) {
if ( txn != null && txn.isActive() ) txn.rollback();
throw e;
} finally {
if (session != null) {
session.close();
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1603 次 |
最近记录: |