タグ

programingとperformanceに関するtvskのブックマーク (1)

  • わかりやすいJPA (5):JOIN FETCH

    はじめに これはJPAを解説する連載の5回目です。 うっかりすると、JPQLでは予期しなかった大量のSQLが発行されてしまう場合があります。これは “N+1” 問題と言われているものですが、解決のためには次のような4つの選択肢があります。 JPQLでJOIN FETCHを使う Criteria API(JPQLをプログラムとして書く)でFetch Joinを記述する Named Entithy Graph を使う Dynamic Entity Graph を使う ここでは、1.のJPQLによる方法について解説します。また、そのほかの方法も、この後の章で順次、詳しく解説する予定です。 N+1問題とは 次のような具体的な例で考えましょう。 // すべてのEmployeeエンティティを得る TypedQuery<Employee> query = em.createQuery("SELECT e

    わかりやすいJPA (5):JOIN FETCH
    tvsk
    tvsk 2017/03/01
    q'inner loop order entity' N+1問題を回避する. JOIN FETCH か エンティティグラフ
  • 1