gpt4 book ai didi

java - 当实体具有长 ID 时,GWT Requestfactory 实体定位器无法与 Objectify 一起使用

转载 作者:行者123 更新时间:2023-12-01 15:29:22 25 4
gpt4 key购买 nike

我的 GWT+GAE 应用程序使用 Requestfactroy 实体定位器,在服务器端我使用 Objectify,当我的实体 ID 类型为 String 时它运行良好,现在我想更改为 Long id,并且卡住了:通过使用定位器签名我找不到实体:

 @Override
public T find( Class<? extends T> clazz, Long id )
{
}

因为Objectify需要包含@Parent键来获取子实体(HRD),并且从上面的方法我们无法获取父实体。我从 GWT 论坛找到了这个帖子: here

但是这个线程似乎没有给出任何建设性的建议(它最终回到了 String ID Entity 来寻求解决方案)。

非常感谢。

最佳答案

问题是长 ID 不足以识别您的对象。正如你所说,你还需要它的父对象,因此ID实际上是一个复合ID:父对象和子对象的ID。

顺便说一句,这里使用 keyToString 或类似的有什么问题? (按照您链接到的线程上的建议)
来自定位器的ID仅在服务器端使用并且仅定位器使用(并且序列化按原样传回并往返于客户端;但它们在客户端是不透明的东西,您甚至没有访问权限)。

关于java - 当实体具有长 ID 时,GWT Requestfactory 实体定位器无法与 Objectify 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9750650/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com