我在我的项目中使用 jpa。但我必须调用所有方法并连接到数据库。我想用 entitymanagerfactory 和其他想要使用的方法连接一次数据库。我制作了静态 entitymanagerfactory 和 entitymanager,因此我接受了一个错误,即事务处于活动状态。
如何与jpa公开联系?
我在我的项目中使用 jpa。但我必须调用所有方法并连接到数据库。我想用 entitymanagerfactory 和其他想要使用的方法连接一次数据库。我制作了静态 entitymanagerfactory 和 entitymanager,因此我接受了一个错误,即事务处于活动状态。
如何与jpa公开联系?
我怀疑以后还会有其他问题,我建议您按照本教程学习如何制作 Java SE JPA 应用程序。此处更完整的基础教程非常关注 Sun 自己的工具集和组件,但底层基础知识和示例代码可能会对您有所帮助。
无论如何,开始看起来像这样:
public static void main(String[] args) {
EntityManagerFactory emf = Persistence.createEntityManagerFactory("PersistenceUnitName");
EntityManager em = emf.createEntityManager();
// let's start a transaction, everything we do from here on can be either
// committed or rolled back, ensuring the integrity of our data
em.getTransaction().begin();
// update the database here
// okay, done
em.getTransaction().commit();
// and housekeeping, close em an emf
em.close();
emf.close();
}
如您所见,em 和 emf 都不必是静态的。如果您(应该)将项目细分为对象,则可以将它们传递em
给这些对象,这些对象将使用它与数据库进行交互。此外,您不限于只有一个跨越应用程序整个生命周期的大事务,您可以有几个连续的事务。