繁体   English   中英

如何 map 将 Google 云数据存储实体 (com.google.cloud.datastore.Entity) 提取到自定义 Java object

[英]How to map fetched Google cloud datastore Entity (com.google.cloud.datastore.Entity) to Custom Java object

我正在使用以下查询 (com.google.cloud.datastore.Query) 获取数据存储实体 (com.google.cloud.datastore.Entity) 的列表。 我无法将数据存储实体 object map 到我的自定义 Java ZA8CFDE6331BD59EB62AC96ZF8911 任何建议都会有很大帮助。 谢谢你。

Query<Entity> query = Query.newEntityQueryBuilder()
                .setNamespace("abc")
                .setKind("ca")
                .setFilter(StructuredQuery.PropertyFilter.eq("name", "xyz"))
                .build();

QueryResults<Entity> tasks = datastore.run(query);

for (QueryResults<Entity> it = tasks; it.hasNext(); ) {
            Entity entity = it.next();
            User user = entity.toUser();//How to map to my custom Java class
        }

不确定数据存储区中User和实体之间的关系是什么,以及您到底想做什么,但是数据存储区 Java API 中有getPropertyMap方法( 参考)。 该方法似乎非常适合您的任务,因为它返回Map<String,Value>

您需要做的就是在User class 中实现新的构造函数,它将从此Map创建User实例。

该行应该如下所示: User user = new User(entity.getPropertyMap());

我相信这只是其中一种方法:)

我希望它会有所帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM