Hibernate GWT';中getVersion()的用途是什么;什么是工厂?

Hibernate GWT';中getVersion()的用途是什么;什么是工厂?,hibernate,gwt,gxt,requestfactory,Hibernate,Gwt,Gxt,Requestfactory,GWT的RequestFactory要求我在所有实体对象中实现getVersion()方法。我只是让它们都返回0,并标记为@Transient,一切正常 为什么我需要它?这简直令人讨厌。摘自: RequestFactory用于推断实体是否已更改。支持 存储(JDO、JPA等)负责更新每个版本 对象被持久化,并且RequestFactory调用getVersion()以 学习变化。此信息用于两个地方。首先是 如果一个实体 由于在服务器上调用方法而发生的更改,例如 例如,调用持久化可编辑实体会导致

GWT的
RequestFactory
要求我在所有实体对象中实现
getVersion()
方法。我只是让它们都返回
0
,并标记为
@Transient
,一切正常

为什么我需要它?这简直令人讨厌。

摘自:

RequestFactory用于推断实体是否已更改。支持 存储(JDO、JPA等)负责更新每个版本 对象被持久化,并且RequestFactory调用getVersion()以 学习变化。此信息用于两个地方。首先是 如果一个实体 由于在服务器上调用方法而发生的更改,例如 例如,调用持久化可编辑实体会导致 服务器上的更新版本。其次,客户机维护一个版本 最近看到的实体的缓存。每当它看到一个实体 版本已更改,它在事件总线上触发更新事件,以便 侦听器可以更新视图


因此,您的方法每次更改时都应该返回不同的版本控制值。如果您不需要请求工厂实体,传输系统考虑使用ValuePro而不是EntyPytoServer。

只是注意到“客户端缓存”实际上不存在(它只在前2.1个里程碑);IIRC服务器将为其返回且未删除的每个代理发送更新(在客户端的结果几乎相同)。您必须知道Travis GWT(尤其是请求工厂)是一个非常动态的项目,因此我鼓励您不仅遵循文档,因为它可能会过时,而且还讨论小组和解决问题。