如何在GWT中获取实体标识符?

如何在GWT中获取实体标识符?,gwt,entity,requestfactory,Gwt,Entity,Requestfactory,在GWT应用程序中创建新实体时(在关系数据库术语中为表中的新行),我需要为新实体提供唯一标识符,并且该标识符需要在系统的所有并发用户中都是唯一的。鉴于此,我无法在客户端生成新的标识符。。。我需要从服务器请求它。我正在为应用程序使用请求工厂,因此我通常不使用GWT RPC与服务器通信,但我认为在这种情况下,这可能是请求唯一标识符的最佳方式。获取唯一标识符的最佳方法是什么?如果新实体中的某些字段(列)存在默认值,您将从何处获取这些值?你能从服务器上得到它们吗?或者将它们嵌入到客户端代码中?您能否从创

在GWT应用程序中创建新实体时(在关系数据库术语中为表中的新行),我需要为新实体提供唯一标识符,并且该标识符需要在系统的所有并发用户中都是唯一的。鉴于此,我无法在客户端生成新的标识符。。。我需要从服务器请求它。我正在为应用程序使用请求工厂,因此我通常不使用GWT RPC与服务器通信,但我认为在这种情况下,这可能是请求唯一标识符的最佳方式。获取唯一标识符的最佳方法是什么?如果新实体中的某些字段(列)存在默认值,您将从何处获取这些值?你能从服务器上得到它们吗?或者将它们嵌入到客户端代码中?

您能否从创建新实体的RF调用中返回该实体的id?目前,在用户完成编辑新数据之前,我不会触发插入新实体的请求上下文。。。也就是说,我调用
RequestContext.create(proxy)
,仅在更改完成时调用
RequestContext.fire()。在用户保存更改之前,我不希望将新实体持久化到服务器。所以我对你的建议感到困惑-请解释一下这是如何工作的。在我的代码中,我将客户机ID保留为null,直到它们被持久化。我会在呼叫开火后更新本地ID。我认为,如果您试图在对象实际持久化之前使用id,那么最终将得到一个不存在的对象的引用。