gpt4 book ai didi

java - Hibernate 获取 JasperRunManager 的连接对象

转载 作者:行者123 更新时间:2023-11-29 06:00:43 24 4
gpt4 key购买 nike

我在项目中使用 Hibernate 3.2.5,并使用 Jasper 3.7.2 为应用程序生成一些报告。

有什么方法可以从 HibernateSessionFactory 对象中获取连接对象吗?我只想处理一个连接,因为此时我必须有一个用于 ODBC 连接的属性文件,它将通过 JasperRunManager 静态方法处理 Jasper,并为另一端处理 Hibernate。

这是我需要传递连接的方法:

byte[] net.sf.jasperreports.engine.JasperRunManager.runReportToPdf(InputStream inputStream, Map parameters, Connection conn) throws JRException

提前致谢。 :)

最佳答案

我在 hibernate 4 上遇到了同样的问题这是解决方案

Session ses = ...
final InputStream finalCompiledReportStream = compiledReportStream;
final OutputStream finalByteArrayOutputStream = byteArrayOutputStream;
ses.doWork(new Work() {
public void execute(Connection connection) throws SQLException {
try {
JasperFillManager.fillReportToStream(finalCompiledReportStream, finalByteArrayOutputStream, parameters, connection);
} catch (JRException e) {
ReportAction.this.logger.error(e);
}
}
});

关于java - Hibernate 获取 JasperRunManager 的连接对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10218655/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com