gpt4 book ai didi

java - 如何获得与使用 Java 使用的 JPA 相同的数据库连接?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:05:33 25 4
gpt4 key购买 nike

我正在使用 Jasper Reports 生成报告。

我正在使用临时表生成报告,我需要 JPA 在创建临时表时使用相同的连接,我该如何实现相同的目的。

最佳答案

可能你离这里只有三步之遥。

你可以用下面的方式做到这一点

  1. 将 JTA 数据源用于 persistance.xml,如下所示

    <persistence-unit name="sample">
    <jta-data-source>java:comp/env/jdbc/DBConnectionDS</jta-data-source>
    ....
    </persistence-unit>
  2. 为了生成报告,从数据源中检索连接,如下所示

    InitialContext initialContext = new InitialContext();
    DataSource dataSource = (DataSource)initialContext.lookup("java:comp/env/jdbc/DBConnectionDS");
    Connection connection = dataSource.getConnection();
  3. 使用连接生成如下报告:

    JasperPrint print = JasperFillManager.fillReport(report, parameters, connection);

这应该是我所相信的。这个想法是,对 JPA 和 JasperReport 使用通用的 JNDI 连接,然后在适用的地方使用它们。

我没有使用 JasperReports,但使用了 BIRT Report 并以这种方式解决了它,没有任何问题。

关于java - 如何获得与使用 Java 使用的 JPA 相同的数据库连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7977146/

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