Bean クラスには、次の注釈があります。
class User {
@OneToMany(targetEntity = Feedback.class,mappedBy = "user",cascade =
CascadeType.ALL,fetch = FetchType.LAZY)
private List<Feedback> feedbacks;
...
}
フィードバックのあるユーザーを削除したい。これを入力すると:
sessionFactory.getCurrentSession().delete(
sessionFactory.getCurrentSession().get(User.class, id));
ユーザーは正常に削除されます (id は主キー)。しかし、私はすべてのユーザーを削除したいのですが、魔女は役割が「管理者」であり、次のクエリを入力すると:
String query = "DELETE from User WHERE role='" + role + "'";
sessionFactory.getCurrentSession().createQuery(query).executeUpdate();
フィードバックへの参照がないユーザーのみが削除されます。クエリの何が問題になっていますか? 助けてください。