如何在greenDAO中保留HashMap,以及如何生成相应的实体?
我已经两次向前和向后阅读文档,但没有任何内容。 谷歌也没有任何帮助。
答案 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。也许您应该选择除key
和value
之外的其他名称。这些变量名经常使用,可能会在greendao中产生冲突。