如何持久化HashMap <string,string =“”>?</string,>

时间:2014-10-16 14:48:34

标签: greendao greendao-generator

如何在greenDAO中保留HashMap,以及如何生成相应的实体?

我已经两次向前和向后阅读文档,但没有任何内容。 谷歌也没有任何帮助。

1 个答案:

答案 0 :(得分:4)

您应该为值创建一个具有String-primary-key和String-proerty的实体:

Entity mapEntity = schema.addEntity("Map");
mapEntity.addStringProperty("key").primaryKey();
mapEntity.addStringProperty("value");

可能需要属性的其他属性(取决于您的需要),例如unique,notNull。

如果您想将Map存储在实体中,那就不那么简单了:

基本上,您可以创建一个这样的实体来存储所有地图:

Entity mapEntity = schema.addEntity("Map");
mapEntity.addLongProperty("id").primaryKey().autoIncrement();
mapEntity.addStringProperty("key").unigue().notNull();
mapEntity.addStringProperty("value");

然后创建关系toOne()toMany()以引用相应的地图。

P.S。也许您应该选择除keyvalue之外的其他名称。这些变量名经常使用,可能会在greendao中产生冲突。

相关问题