我正在为 Android 编写一个小应用程序,我使用 GreenDAO 作为我的 ORM。我想知道我应该将 session 打开多长时间?我有几个从数据库读取/写入数据的 Activity ,我看到以下可能性:
- 在每个 Activity 基础上保持 session 打开:在 onCreate 中创建并在 onPause/onStop 中关闭
- 在所有 Activity 中保持一个 session 开放,并以某种方式在它们之间传递。
- 在 onCreate 中打开 session ,读取填充 ListView 所需的所有数据,并在仍在 onCreate 中关闭 - 我认为这迫使我一次读取所有数据,但这会大大降低应用程序的速度。
您认为我应该选择哪个选项?也许还有其他一些规范的方法可以做到这一点?
最佳答案
我找到了这篇文章的评论:
http://greendao-orm.com/documentation/how-to-get-started/
其中“DaoMaster”推荐应用范围dao session。 他还谈到了使用 Singletons,但我不会在 Android 中推荐 Singletons,除非你真的知道你在做什么,因为 Singletons 的工作方式与在 jvm 上有点不同。
关于android - SQLite/GreenDAO session 范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17526232/