【发布时间】:2015-09-24 02:14:24
【问题描述】:
@PersistenceContext(unitName = "myPU")
private EntityManager em;
public void run1()
{
// uses em
}
public void run2()
{
// uses em
}
据我了解,每种方法代表不同的交易。
我很难弄清楚等价物是什么
可以使用普通 JDBC 的代码,尤其是在 JDBC 连接使用方面。
提交是否在每个方法结束时发出?
是否为每种方法创建并关闭了新连接?
实现可以使用连接池是什么意思?
【问题讨论】:
-
为什么要将 JDBC 与 EntityManager 一起使用?顾名思义,EntityManager 显式地管理实体。您不必担心 JDBC,底层 JPA 提供程序(例如 Hibernate)将为您完成数据库工作。也许您可以详细说明您正在尝试实现的目标和尝试过的目标。了解您查阅过哪些文档也很有用。
-
由于您使用了“ejb”标签,我假设这些方法在 SLSB 中并且事务属性是默认的 (
REQUIRED)。对吗? -
@Brian 是,@DuncanKinnear 我不想混合使用 JPA 和 JDBC,我想对它如何使用 JDBC 连接有一个高层次的了解,因为我使用这个概念。
-
如果您正在调查它在幕后所做的事情,请打开您的 JPA 提供程序的日志并查看。大多数人会在更精细的日志级别记录他们发出的语句,从而准确地向您展示您的配置选项在 JDBC 世界中转换为什么。
标签: java jpa ejb persistence