GreenDAO是一款Android平台的数据持久化平台。
其中的有些小bug,也算是要注意的地方。
1、
一个数据持久化类,进行@Entity 修饰的时候,如果里面的变量要指定@Id 修饰的话。这个数据类型一定要是 Long。否则会保存数据不成功。莫名其妙的保存不成功。一般新手谁知道是这个原因啊。 小坑一个。
@Entity
public class XXXBean implements Serializable {
@Id
private Long _id;
....
}
2、
在GeenDAO里进行保存A的操作,A 保存成功后,马上再获取全部数据,里面是没有A的。GeenDAO有数据缓存机制,有一定的延迟,过N久再获取全部数据才能在数据队列里获取到A。
解决方法:
//在获取全部数据或执行操作前执行以下操作。
daoSession.clear(); daoSession.getXXXXDao().detachAll();
daoSession.getXXXXDao().loadAll();