1

私は OrmLite 4.48 を使用しており、次の方法で 2 つのオブジェクトをセットアップしました: (簡略化)

public class Chat {
     @ForeignCollectionField(eager = false)
     private ForeignCollection<ChatUser> chatUsers;
}

public class ChatUser {
     @DatabaseField(foreign = true)
     private Chat chat;
}

残念ながら、DB から Chat オブジェクトを照会すると、ChatUser オブジェクトが完全にロードされていることを常にデバッグで確認できますか? ドキュメントに記載されているように、外部コレクションはデフォルトで遅延していますが、私の場合はそうではありませんか?

ところで、クエリを介して ChatUser オブジェクトを個別に読み込むと、Chat 外部フィールドには ID のみが読み込まれていることがわかります (予想どおり)...

エラーは私が見逃した明らかなものだと思いますが、これがどのように簡単になるかわかりませんか?

4

1 に答える 1

0

デバッガー自体が追加のクエリを引き起こし、遅延コレクションがフェッチされることがわかりました:)(私には思い浮かびましたが、実際に起こっているとは思いませんでした:))。

@Gray(https://stackoverflow.com/users/179850/gray)によって説明された回答で別の質問も見つけました

https://stackoverflow.com/a/7244121/1865583

于 2016-01-05T08:12:20.993 に答える