問題は、GreenDao がセッション キャッシュから SQL データベースを更新するのはいつですか?
データベースから既存のエンティティを照会し、そのプロパティ (フィールド) の 1 つを変更するとします。いずれにせよ、SQL データベースを指示せずに変更が実行されます。
それで、エンティティを更新する必要がありますか?GreenDao がセッション キャッシュをデータベース自体にフラッシュするのはいつですか?
あなたの説明は、JPA/Hibernate セッション キャッシュのように聞こえます。greenDAO にはそれがありません。より簡単です。メモリに保持されているオブジェクトがあり、常に手動でデータベースに更新します。
いくつかの詳細情報 (完全にはほど遠い): http://greendao-orm.com/documentation/sessions/
GreenDAO コード (エンティティ、DAO、DaoSession など) を生成すると、DAO はデフォルトでAbstractDao
、データベースを更新するためのさまざまなメソッドを持つクラスを拡張します。 ( update(T entity)
、refresh(T entity)
、updateInTrx(java.lang.Iterable entities)
)。
詳細については、AbstractDao javaDocを確認してください。