java - 如何从 Hibernate Session 获取 java.sql.Connection 对象

标签 java hibernate

我有需要java.sql.Connection的要求。但我这里用的是Hibernate。不知何故,我进行了研究,发现了以下替代方案,但这不起作用。

import org.hibernate.connection.ProxoolConnectionProvider;
public class ConnectionDB{
    //I have imported below class 
    ProxoolConnectionProvider proxoolProvider = new ProxoolConnectionProvider();
    org.hibernate.cfg.Configuration cfg = HibernateUtil.getConfiguration();//this method will return configuration 
    java.util.Properties props =  cfg.getProperties();//This will return Properties Object
    //Using properties object I just tried to get The Connection Object by following method
    proxoolConn.configure(props);// I just configured the Porperties object 
    proxoolConn.getConnection();
}

但不幸的是,我最终毫无异常(exception)地在控制台中结束了。我使用的是 Struts 2、Hibernate 和 JasperReports。

谁能帮我从 Hibernate 获取连接对象吗?

最佳答案

以下代码假设您有一个现有的且打开的 Hibernate org.hibernate.Session:

public void doWorkOnConnection(Session session) {
  session.doWork(new Work() {
    public void execute(Connection connection) throws SQLException {
      //use the connection here...
    }
  });
}

如果您需要有关如何使用上述类的信息,请阅读Hibernate 3.5 Javadoc 。具体来说,请阅读Session,然后阅读Work

关于java - 如何从 Hibernate Session 获取 java.sql.Connection 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24153008/

相关文章:

java - Guice 注入(inject)通用列表

java - 使用 Java 将带有特殊字符的值插入到 SQLite 中

java - 复制具有关联角色的新用户

java - session 值不显示在 jsp struts 2 中

java - 是否有键盘快捷键可以在项目窗口中选择特定模块?

java - 为 Vuforia 创建网格 (Java)

java - 我们可以从 hql 查询中获取单个对象吗?

java - Hibernate JPA 注解 1 到 0..1 关系

java - 在 DB 中克服的值(value)

java - 关于创建交易的 Controller 方法问题