Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hibernate 休眠重编辑会话_Hibernate - Fatal编程技术网

Hibernate 休眠重编辑会话

Hibernate 休眠重编辑会话,hibernate,Hibernate,我有一个编辑窗口,用户可以在其中编辑实体和一些其他链接实体(这必须在从第一个编辑窗口打开的单独窗口中完成) 例如,假设我们有一个人,具有属性,并且这个人有一个到部门的链接。可以将部门分配给用户、更改为任何其他部门,或者用户只需编辑当前链接的部门(在单独的子窗口中,使用“确定”和“取消”按钮)。假设这个过程可以更深入,他也可以编辑与部门相关的实体 我能用这个做什么?在我看来,我还有下一个选择: 打开会话,从中获取所需的实体并修改此实体,并在第一个(父级、用户)窗口通过“确定”按钮关闭时提交此会话,

我有一个编辑窗口,用户可以在其中编辑实体和一些其他链接实体(这必须在从第一个编辑窗口打开的单独窗口中完成)

例如,假设我们有一个人,具有属性,并且这个人有一个到部门的链接。可以将部门分配给用户、更改为任何其他部门,或者用户只需编辑当前链接的部门(在单独的子窗口中,使用“确定”和“取消”按钮)。假设这个过程可以更深入,他也可以编辑与部门相关的实体

我能用这个做什么?在我看来,我还有下一个选择:

  • 打开会话,从中获取所需的实体并修改此实体,并在第一个(父级、用户)窗口通过“确定”按钮关闭时提交此会话,或通过“取消”按钮回滚所有更改
  • 在这种方法中,我无法理解如何取消在子窗口中所做的更改?此外,保持长期疗程是否正确?用户可以打开编辑窗口并转到某个地方。。。看起来很糟糕

  • 打开会话,获取一些,分离。让用户使用分离的实体。以某种方式加载所需的实体,跟踪更改的内容、删除的内容或创建的内容。最后创建新会话,合并所有需要的实体并提交 在这种方法中,跟踪更改看起来是重复的工作,因为hibernate可以通过OOTB(开箱即用)来完成。当用户需要一些实体进行编辑时,我必须首先查看我的存储—也许他已经编辑了?与hibernate的OOTB完全相同

    我尝试过谷歌这个问题,但没有找到任何东西。这种模式有什么最佳实践吗


    提前感谢您,并为我的英语不好感到抱歉。

    为什么不创建隐藏表单,然后在关闭时从子窗口设置它们的值。和根据父窗口提交或回滚确定或取消。隐藏表单如何改变这种情况?在父窗口中创建隐藏表单,关闭子窗口时,通过javascript或jquery将子表单的值设置为父窗口的表单。这不是关于html或js的问题。我有一个java应用程序,表单在这里没有任何变化。问题是如何使用hibernate管理大型编辑上下文。