Nabbleでこのリンクを見ました。誰か(James Sutherland)が誰かに「すべてのJPQLクエリを削除を実行しています。これは基本的に独自のSQLを実行するのと似ています。クエリを正しく実行して、制約を維持する責任があります。
これは、JPAでオブジェクトを削除する通常の方法ではありません。JPAでは、通常、オブジェクトを読み取り、それに対してremove()を呼び出します。」
これが本当かどうか疑問に思いました。単純なテーブル以上のものを削除することがどれほど困難であったかに基づいて、私はこれが正しいと思い始めます。
これまでの私の考えは、次のようにすることです。
- 選択ステートメントを実行しますが、特にそうかもしれません(たとえば
、学生コースが4を超え、マークが60を
超え、2011年から2012年の間に学生が登録されているすべての学生を選択します)。 - オブジェクトの表示/編集/削除(つまり、EntityManagerのマージ/永続化/削除)
- すすぎ、泡立てなど
これは、JPAを使用することを想定している方法へのアプローチとして合理的に聞こえますか、それとも私はベースから外れていますか?