StatelessSession#connection()在Hibernate上不赞成使用?

时间:2015-02-27 22:29:26

标签: java hibernate orm database-connection stateless-session

我正在清理一些警告,我使用connection() StatelessSession方法提出了一些代码,其弃用文档说他们在{{1}上弃用相同方法时错过了它}。

现在,this question的答案指向Session上的doWork方法,但Session上不存在此类方法。那么,人们应该如何修复这种弃用?

2 个答案:

答案 0 :(得分:0)

StatelessSession.connection()方法的目标是:

  

返回与此实例关联的当前JDBC连接。

StatelessSessionSessionImplementor继承此方法,该方法未被弃用,因此使用它是安全的。即使它将从StatelessSession中删除,您仍然可以使用SessionImplementor中的此方法。

答案 1 :(得分:0)

您可以这样做:

    StatelessSession statelessSession = HibernateUtil.getSessionFactory().openStatelessSession();
    try {
        ((StatelessSessionImpl) statelessSession).getJdbcConnectionAccess().obtainConnection().setTransactionIsolation(TRANSACTION_REPEATABLE_READ);
    } catch (SQLException e) {
        e.printStackTrace();
    }