Gwt 请求工厂差异计算和';静态';查找方法

Gwt 请求工厂差异计算和';静态';查找方法,gwt,requestfactory,Gwt,Requestfactory,我被这三个问题困住了: 1) 我看到diff是用AutoBeanUtils的diff方法计算的。我在实体中看到一个名为parentObject的标记,该标记用于计算差异 parent=proxyBean.getTag(Constants.parent\u对象)在AbstractRequestContext类中 这是否意味着加载到浏览器上的给定实体有两个副本?如果我的实体实际大小为1kb,则加载的实际数据将为2kb(因为实体的两个副本正在加载到浏览器上) 2) 在服务器端: 假设我必须从数据库中获

我被这三个问题困住了:

1) 我看到diff是用AutoBeanUtils的diff方法计算的。我在实体中看到一个名为
parentObject
的标记,该标记用于计算差异

parent=proxyBean.getTag(Constants.parent\u对象)
AbstractRequestContext
类中

这是否意味着加载到浏览器上的给定实体有两个副本?如果我的实体实际大小为1kb,则加载的实际数据将为2kb(因为实体的两个副本正在加载到浏览器上)

2) 在服务器端:

假设我必须从数据库中获取一个实体,
static find
应该是这样的:我每次都必须进行一次db调用,或者是否有一种方法可以微调该行为?[很抱歉,我没有很好地理解
定位器的概念。]

3) 当从客户端发送差异时,如果服务器端发生崩溃(出于任何不需要是当前请求特定的原因),会发生什么情况

非常感谢

  • 当您
    .edit()
    代理时,它会创建一个副本,并将作为参数传递的不可变代理存储为返回代理的
    父对象

  • 您通常会在每次调用该方法时进行一次DB调用(对于
    定位器
    find()
    方法也是如此),每次请求不超过两次。如果需要,您可以使用某种缓存,但如果您使用JPA或JDO,这将由您自行解决(您必须使用每个请求的会话模式,也称为OpenSessionInView)

  • 如果解码请求时出现任何错误,将返回一个全局错误,该错误将传递给失败的
    RequestContext
    请求的所有
    接收器的
    onFailure

  • 当您
    .edit()
    代理时,它会创建一个副本,并将作为参数传递的不可变代理存储为返回代理的
    父对象

  • 您通常会在每次调用该方法时进行一次DB调用(对于
    定位器
    find()
    方法也是如此),每次请求不超过两次。如果需要,您可以使用某种缓存,但如果您使用JPA或JDO,这将由您自行解决(您必须使用每个请求的会话模式,也称为OpenSessionInView)

  • 如果解码请求时出现任何错误,将返回一个全局错误,该错误将传递给失败的
    RequestContext
    请求的所有
    接收器的
    onFailure