Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在GAE的objectify中查询@Embedded map 请考虑以下样品 @Entity public class Abc { @Id private Long id; @Unindexed private String name; @Embedded private Map<String, Xyz> objs; } public class Xyz { private String objName; private String objStatus; } @实体 公共课Abc{ @身份证 私人长id; @未索引 私有字符串名称; @嵌入 私有地图objs; } 公共类Xyz{ 私有字符串objName; 私有字符串objStatus; }_Java_Google App Engine_Objectify - Fatal编程技术网

Java 在GAE的objectify中查询@Embedded map 请考虑以下样品 @Entity public class Abc { @Id private Long id; @Unindexed private String name; @Embedded private Map<String, Xyz> objs; } public class Xyz { private String objName; private String objStatus; } @实体 公共课Abc{ @身份证 私人长id; @未索引 私有字符串名称; @嵌入 私有地图objs; } 公共类Xyz{ 私有字符串objName; 私有字符串objStatus; }

Java 在GAE的objectify中查询@Embedded map 请考虑以下样品 @Entity public class Abc { @Id private Long id; @Unindexed private String name; @Embedded private Map<String, Xyz> objs; } public class Xyz { private String objName; private String objStatus; } @实体 公共课Abc{ @身份证 私人长id; @未索引 私有字符串名称; @嵌入 私有地图objs; } 公共类Xyz{ 私有字符串objName; 私有字符串objStatus; },java,google-app-engine,objectify,Java,Google App Engine,Objectify,现在我希望Abc的对象objs.get(“someKey”).getObjName().equals(“someName”)为true 如何在Objectify中进行此查询?另外,如果我将“objs”存储为list而不是map,我是否可以查询Abc的对象,以便其中一个list值的objName为“someName”?在这方面需要帮助。谢谢您应该可以这样查询: Objectify ofy = factory.begin ofy.query(Abc.class).filter("objs.someK

现在我希望Abc的对象
objs.get(“someKey”).getObjName().equals(“someName”)
为true


如何在Objectify中进行此查询?另外,如果我将“objs”存储为list而不是map,我是否可以查询Abc的对象,以便其中一个list值的objName为“someName”?在这方面需要帮助。谢谢

您应该可以这样查询:

Objectify ofy = factory.begin
ofy.query(Abc.class).filter("objs.someKey.objName=", "someName")

映射键简单地折叠到实体属性的映射中,使用点作为分隔符,映射字段的名称(“objs”)作为前缀以避免冲突。

我们可以在这样序列化的映射中放置的最大键/值数是多少?常规数据存储限制适用,在将值存储在数据存储的内部结构(协议缓冲区)中后,该值为1MB。请注意,此方法有些过时,Objectify 4对嵌套映射有不同(但类似)的方法。但是,考虑到映射是否被索引为可量化,这将花费很多,因为每个索引(对于每个额外的键值对)将意味着再写入两个数据存储