1

目前在我的应用程序中,我们正在使用 GWT RequestFactory。我们有多个 EntityProxy。几个 finder 方法从服务层返回 List。由于我们在应用程序中使用分页,因此我们在列表中返回预先配置的 EntityProxy 数量。我们还需要 EntityProxy 的总数,以便在我们单独请求的分页 UI 中显示。我们想创建一些包装器对象,将 List 和 totalRecord 计数封装在单个类中。因此,在单个请求中,我们可以获得列表和记录计数。使用 requestfactory 最好做什么?注意:我是 GWT RequestFactory 的初学者。

4

2 回答 2

2

Umit 的回答是相当正确的。我只会添加一个抽象分页处理的层。当您有 BasicTables 和 BasicLists 通过同一接口 PageProxy(例如,用于分页)处理所有数据时,这会很有用

public interface PaginationInfo extends ValueProxy {
    public int getTotalRecords();
    //either have the manual page info
    public int getPageNumber();
    //or use the count API on GAE (returned by your db request as a web safe String)
    public String getCount();
}

public interface PageProxy extends ValueProxy {
    public PaginationInfo getPageInfo();
}

public interface MyEntityProxy extends EntityProxy  {}

public interface MyEntityPageProxy extends PageProxy {
    public List<MyEntityProxy> getEntities();
}
于 2013-10-12T17:54:02.763 回答
1

好吧,您可以使用以下内容:

public interface MyEntityProxy extends EntityProxy  {}

public interface MyEntityPageProxy extends ValueProxy {
    public List<MyEntityProxy> getEntities();
    public int getTotalRecords();
}

PageProxy使用通用接口(即)会更好,MyEntityPageProxy<T extends EntityProxy>但是由于这个错误,这是不可能的,或者至少只能通过一种解决方法。

因此,对于每个EntityProxy您想要拥有分页支持的人,您都必须创建一个单独的PageProxy界面。

于 2013-10-11T10:47:18.127 回答