Tôi muốn biết mà thực hiện phương pháp loại bỏ là tốt hơn:JPA và DAO thực hiện hoạt động xóa
public void remove(T t) {
entityManager.remove(entityManager.merge(t));
}
public void remove(PK pk) {
entityManager.remove(entityManager.getReference(entityType, pk));
}
Tôi đã đọc khá nhiều bài viết về vấn đề này và trong hầu hết các một trong số họ nó tương tự như cách tiếp cận đầu tiên, xuất hiện với tôi khá vô dụng vì nó có thể được thực hiện mà không cần lấy toàn bộ thực thể từ cơ sở dữ liệu (nếu nó không có trong bối cảnh kiên trì) và sau đó loại bỏ nó. Có điều gì tôi thiếu và cách tiếp cận đầu tiên thực sự tốt hơn?
Tại sao bạn không gọi 'entityManager.remove (t) '? – stacker
@stacker: Tôi muốn phương pháp này loại bỏ cả các thực thể được quản lý và tách rời. – VaclavDedik