注文テーブルへの外部キーに接続されている顧客データを含むテーブルがあります。明らかに、1人の顧客が複数の注文を持つことができますが、すべての注文には1人の顧客がいます。
顧客データを取得すると、Hibernateはクライアントの接続された注文を自動的に取得します。しかし、多くの場合、私は顧客データだけが必要です。パフォーマンス上の理由から、それを避け、必要なときにのみ注文を受け取りたいと思います。
それは可能ですか?そして、これは実際にパフォーマンスに影響を与えますか?
ありがとう!ノイズ
注文テーブルへの外部キーに接続されている顧客データを含むテーブルがあります。明らかに、1人の顧客が複数の注文を持つことができますが、すべての注文には1人の顧客がいます。
顧客データを取得すると、Hibernateはクライアントの接続された注文を自動的に取得します。しかし、多くの場合、私は顧客データだけが必要です。パフォーマンス上の理由から、それを避け、必要なときにのみ注文を受け取りたいと思います。
それは可能ですか?そして、これは実際にパフォーマンスに影響を与えますか?
ありがとう!ノイズ
顧客をロードするときcustomerとの間の関連付けをマッピングした場合、注文はアクセスしたときにのみロードされます。このようにして、読み込みが速くなります。orderFetchtype.LAZY
逆に、はオブジェクトをロードするときにFetchType.EAGERコレクションをロードし、パフォーマンスに影響を与えます。orderscustomer
好みの関連付けフェッチの種類を知ることができますHibernate。アノテーションを使用した例は次のとおりです。
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)