2013-12-10 85 views
-1

使用JPA规范时,我们将任何类型声明为@transient,但它不会保留在数据库中。同样当我们决定用@transient注解的方法时,它不参与数据库操作。瞬态数据如何在数据库中不存在

JPA如何真正处理PersistenceUnit中的瞬态字段的操作?

+1

手柄什么操作? – Gimby

+1

正如你自己所说的那样,'@ transient'字段永远不会被JPA持久化。您的应用程序可以在运行时根据需要使用这些字段,但每次创建具有“@ transient”属性的对象的新实例时,这些“@ transient”属性都是空的。这取决于您的应用程序来控制从这些字段存储和访问的内容和时间。 –

回答

1

在持久性状态中,持久性上下文的被管实体与数据库同步。在持久化上下文中,使用@transient注释的实体字段的行为与普通变量(行为取决于应用程序)并且JPA不允许此属性状态的行为类似于持久性上下文中的实体的事务执行中的映射对象属性。所以瞬态字段不参与交易。