나는 인터넷 검색을 많이했으나 여전히 최대 절전 모드에서 연결을 사용해야하는 이유를 모르겠다. 일대 다 또는 다른 연관성을 언급하지 않고 일을 처리합니다. 최대 절전 모드 조인을 명시 적으로 사용하지 않고도 일부 조인 조건을 사용하여 테이블에서 카디 전 곱을 항상 수행 할 수 있습니다. 사용하지 않으면 무엇을 놓치겠습니까? 만약 있다면 장점이나 단점을 알려주십시오. 감사합니다.최대 절전 모드에서 연결을 사용하는 이유는 무엇입니까?
1
A
답변
1
Hibernate의 연관성의 주요 이점은 소스 코드를 통해 child
또는 parent
엔티티에 쉽게 액세스 할 수 있다는 것입니다. 내 코드 내에서
@Entity
public class Student{
@OneToMany
private List<Course> courses = new ArrayList<Course>();
//Accessors
}
나는 학생 등 모든 과정을 가져 연결을 사용할 수 있습니다 : 예를 들어 나는 다음이 있다면 모든 것을이 부모를 통과 할 필요가있다
Student student = studentRepo.findById(1, Student.class);
List<Course> courses = student.getCourses();
그 자녀 관계. 추가 SQL 또는 조인이 필요하지 않습니다. 또한 삽입 및 삭제와 같은 다른 중요한 작업을 쉽게 수행 할 수 있습니다.
BTW 원래 질문에서 데카르트 조인을 언급했는데, 이는 예외가 아니고 표준이어야합니다. 이들은 상당한 성능 오버 헤드를 전달할 수 있으며 종종 다른 조인을 사용하여 더 효율적으로 수행 할 수 있습니다.
답장을 보내 주셔서 감사합니다. 누구나 성능이 좋습니다. 방법/이유를 알려주십시오. & 쿼리 (하위 쿼리 포함)가 mysql (프로파일 링으로 검사)에서 빠르게 실행되는 경우 (전체 테이블에 대한 조인이있는 쿼리보다)도 Hibernate에서 빠르게 실행됩니다. –