有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java EntityManager每DAO方法

我对EntityManager的用法有疑问。 我读过这样的文章,在一个线程中为每个简单的数据库调用打开和关闭EntityManager,这是不明智的

每个DAO方法有一个EntityManager还是每个DAO方法有一个EntityManager更好


共 (2) 个答案

  1. # 1 楼答案

    我将简要地解释实体和道之间的关系

    [P>考虑了一个在线船舶预订系统的例子,该系统主要由两个实体

    组成。

    一,。管理员-执行添加、修改、删除装运详细信息等操作

    二,。用户-在线预订船票、在线付款等

    在管理实体的这个场景中(添加、修改、删除发货详细信息-该实体可以执行的不同类型的功能),需要一个AdminDAO,它将包含管理实体可以执行的所有功能

    此实体从任何Javaservlet类调用

    简而言之,每个实体需要一个DAO

  2. # 2 楼答案

    应创建EntityManager,执行“工作单元”,然后关闭

    http://docs.jboss.org/hibernate/stable/entitymanager/reference/en/html_single/#d0e980

    工作单元类似于:插入、更新、删除或一些更复杂的业务逻辑。您应该为每个方法获得一个新的EntityManager实例,因为每个方法都应该包含一个工作单元

    更新:还有扩展EntityManager的概念,只要应用程序运行或会话打开,它就会保持打开状态。不过,这将由容器管理