GWT - 如何在 @Entity 注释的类之外实现 RequestContext 方法?
是否可以在 @Entity 注解的类之外实现 RequestContext
方法?
@Entity
class TheEntity {
public static TheEntity theMethod() { ... } // don't want it here
}
@Service(TheEntity.class)
interface TheEntityRequest extends RequestContext {
Request<TheEntity> theMethod(); // this one
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
是的,你可以。官方 GWT 文档中提到了这一点,尽管不是很清楚详细的。
我发现这篇博客文章 大卫·钱德勒。
一些提示:
(示例链接来自博客文章中讨论的项目)
实体定位器方法(
find
、create
、getId
,getVersion
) 可以在通用定位器类 (示例)。为此,您的实体必须扩展具有getId
和getVersion
方法的 BasicEntity 类。然后在客户端上,您可以像这样指定定位器:数据访问方法可以在服务中移动。您可以拥有通用服务 (示例),然后为每个实体扩展它以提供特定的方法(示例)。
在客户端上,您可以这样定义服务:
还要注意服务定位器的需要。它可以像 这个。
Yes, you can. This is mentioned in the official GWT documentation, though it's not very detailed.
I've found of great help this blog post by David Chandler.
Some pointers:
(example links are from the project discussed in the blog post)
Entity locator methods (
find
,create
,getId
,getVersion
) can be moved in a generic Locator class (example). For this to work your entities must extend a BasicEntity class that has thegetId
andgetVersion
methods. Then on the client you would specify the locator like this:Data access methods can be moved in a service. You can have a generic service (example), and then extend it for each entity to provide specific methods (example).
On the client you define your service like this:
Note the need for a service locator also. It can be as simple as this.