我使用java通过Google Cloud Endpoints和数据存储区编写API。我刚刚添加了一个ArrayList<HashMap<String, String>>
作为我的一个实体的字段,但它似乎不被Cloud Endpoints识别。我使用了Objectify框架。
起初我注意到因为它而发生了一些NullPointerException,然后我看到数据存储区查看器甚至没有提到该字段。
数据存储区不支持此类型吗?
答案 0 :(得分:0)
使用Objectify,您可以存储任何POJO,是否可以使用开发人员的控制台检查该字段是否显示?
顺便说一句,Cloud Endpoint可以返回任何对象(但不是原始对象,如 int 或 boolean )。因此,在这件事上它不会成为问题。
答案 1 :(得分:0)
数据存储区和云端点marshaller应支持该字段。请记住,空集合在数据存储区中存储为空值。
如果实体存储了空集合,您必须在检索时初始化集合。
说过我同意@QPaysTaxes的建议,从长远来看,如果你将它包装成POJO,你将为自己节省很多痛苦。哪个BTW可以通过ID引用,而不必在整个地方复制数据。