2014-06-19 2 views
0

JPA로 최대 절전 모드를 배우고 있습니다. 일대 다 관계로, 게으른 초기화 문제가 있습니다. 그런 다음 가져 오기 유형을 EAGER로 변경했는데 "여러 봉지를 가져올 수 없습니다"라는 메시지가 나타났습니다.최대 절전 모드 : 많은 관계에 대해 * SET가 List보다 나은 이유

그럼 목록을 세트로 변경했습니다. 나는 잘 작동하는지 궁금해.

하지만 그 이유를 알고 싶습니다. 왜 세트가 목록보다 나은지 알고 싶습니다.

나는 set과 List의 기능을 잘 이해하고있다.

+1

코드 조각을 게시 할 수 있습니까 ?? – PVR

+0

나는 그것이 List에서 Set으로의 변환과 관련이 있다고 생각하지 않는다. 설정이 괜찮다면 둘 다 작동 할 것이다. Set은 중복 객체를 허용하지 않으므로 Set보다 Set가 우선합니다. 이는 Set에 항상 고유 한 요소 세트가 있음을 의미합니다. – Programmer

+0

필자는 애플리케이션에 필요한 데이터를 사용합니다. 영속 메커니즘이 당신의 선택을 결정하지 않아야합니다. 주문해야합니까? 목록을 사용하십시오. –

답변

0

집합은 중복 요소를 포함 할 수없는 모음입니다.

List는 정렬 된 컬렉션이며 중복 요소를 포함 할 수 있습니다. 색인에서 모든 요소에 액세스 할 수 있습니다. 리스트는 동적 인 길이의 배열과 같습니다.

HashSet에서의 조회는 ArrayList에서 조회가 O (n) 시간이 걸릴 때 일정 시간 O (1)입니다. 따라서 HashSet 성능은 ArrayList보다 더 안정적입니다. 자세한 내용은 here for list 및 을 참조하십시오.