DAO 레이어의 삭제 옵션에 관한 한 가지 큰 의문! ? 조건이, 그리고 왜 여기서 복수가있을 때 어떤 방법 삭제 대량 낫다 : -JPA를 사용하여 대량 삭제할 때 올바른 방법은 무엇입니까?
한 방법
EntityManager.remove();
2 접근법
EntityManager.createNamedQuery (DeleteQuery);
감사합니다.
DAO 레이어의 삭제 옵션에 관한 한 가지 큰 의문! ? 조건이, 그리고 왜 여기서 복수가있을 때 어떤 방법 삭제 대량 낫다 : -JPA를 사용하여 대량 삭제할 때 올바른 방법은 무엇입니까?
한 방법
EntityManager.remove();
2 접근법
EntityManager.createNamedQuery (DeleteQuery);
감사합니다.
NamedQuery.
하나의 검색어로 여러 행을 삭제할 수 있습니다. 바로 거기에서 큰 우승입니다.
EntityManager를 사용하여 개별적으로 삭제해야하는 경우에도 삭제할 실제 엔티티가 있어야합니다. 반면 NamedQuery를 사용하면 키가 필요하기 때문에 엔티티를 처음 읽을 이유는 없습니다.
전반적으로 훨씬 빠릅니다.
NamedQuery를 사용하는 것이 더 나은 방법입니다! 권리 ! 감사 –
및 createQuery ("DELETE FROM ...")는 어떻게됩니까? 즉, 명명 된 것과 같지만 저장된 쿼리 –
또는 createNativeQuery (...)에 대해서는 DELETE를 수행하지만 콜백 및 케스케이드 발생을 원하지 않는 것은 무엇입니까? –