持久性上下文是一组实体,因此对于任何持久性标识都有一个唯一的实体实例。
持久化上下文处理一组实体,这些实体保存要在某个持久化存储(例如数据库)中持久化的数据。特别地,上下文知道实体相对于上下文和底层持久性存储可以具有的不同状态(例如,被管理的、分离的)。
虽然与Hibernate相关(一个JPA提供程序),但我认为这些链接是有用的:
http://docs.jboss.org/hibernate/core/4.0/devguide/en-us/html/ch03.html
http://docs.oracle.com/javaee/6/api/javax/persistence/entitymanager.html
实体可以拥有的各种状态以及这些状态之间的转换描述如下:
http://docs.jboss.org/hibernate/entitymanager/3.6/reference/en/html/objectstate.html
http://gerrydevstory.com/wp-content/uploads/2012/05/jpa-state-transtition.png
持久性上下文是一组实体,因此对于任何持久性标识都有一个唯一的实体实例。
问题内容: 事务范围的持久性上下文和扩展的持久性上下文之间有什么区别? 问题答案: 在JSR-220 Enterprise JavaBeans 3.0规范中清楚地解释了差异: 5.6容器管理的持久性上下文 (…) 可以将容器管理的持久性上下文定义为具有范围为单个事务的生存期或跨越多个事务的扩展生存期,这取决于创建容器时所指定的生存期 。该规范分别将这种持久性上下文称为 事务范围的持久性上下文 和
有一种方法可以绕过持久性上下文,只将实体用作数据库表的包装器?
Vlad关于如何修复MultipleBagsException的示例将是我们的起点:如何修复MultipleBagsException-Vlad Mihalcea EntityManager的定义如下: 那么,为什么我们需要启动事务以便启用PersistenceContext,即使我们将其设置为使用扩展上下文呢?
我正在实施一个项目与rest web service和mongoDB,我将是有用的使用JPA数据库操作。当然,我需要使用Hibernate?,这将是其他一些较轻的框架的最佳选择。数据库是小的几个实体,但许多记录,如果可能的话还会插入图像,如果OpenShift允许的话。在这种情况下,最好用作框架持久性?
如果一次调用<code>会话。保存(customerObject)则不需要插入客户…查询数据库。Hibernate将设置id属性(“序列”或“增量”生成器),并将实体绑定到持久性上下文。当<code>事务时,持久性上下文与数据库同步。调用commit() Q:Hibernate将在哪里设置id属性 Q:在与db同步之前,持久性上下文缓存sql查询是否会插入到customer…中?我的意思是,何时生