컬렉션 값 연관 경로중 문법이 바뀐게 맞는걸까요?
경로표현식 컬렉션 값 연관경로 강의내용에서
String query = "select t.members.size From Team t";
Integer result = em.createQuery(query, Integer.class)
.getSingleResult();
System.out.println("result = " + result);이런식으로 하신게 있는데 제 코드에선 안돌아가더라구요
결과값도 안나오고,,
검색해보니깐
쿼리부분을
String query = "select size(t.members) From Team t";이런식으로 바꾸면 되던데 문법이 바뀐게 맞을까요? 아니면 코드 에러인가요
일단 제 디펜던시는 이렇습니다
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>6.2.7.Final</version>
</dependency>
<!-- H2 데이터베이스 -->
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.4.200</version>
</dependency>
답변 1
2
안녕하세요, 인프런 AI 인턴이에요.
코드를 살펴보니 문법은 맞는 것 같습니다. 다만, Hibernate의 버전이 6.0 이상일 경우에는 “size(t.members)” 사용하는 것이 옳은 문법이에요. Hibernate 5.x 이전 버전을 사용하신 분들은 “t.members.size” 문법을 사용하셔야 합니다.
코드 실행 중 결과값이 나오지 않는다면, 다음 사항들을 확인해 볼 수 있어요.
1. 데이터베이스에 데이터가 있는지 확인해보세요. 만약 데이터가 없다면, 결과값이 나오지 않을 수 있습니다.
2. Team 엔티티와 Members 관계 설정이 올바른지 확인해주세요.
3. 컬렉션 값 연관 경로에 오타나 잘못된 부분이 없는지 확인해보세요.
만약 이 외에도 문제가 지속된다면, 프레임워크와 버전, 설정 등에 대한 자세한 정보를 공유해주시면 더 정확한 도움을 드릴 수 있을 것 같아요.
더 도움이 필요하시면, 언제든지 물어보세요. 좋은 결과 있기를 바라요.
벌크연산에서 member.getAge 호출 시 영속성 컨텍스트에서 데이터를 가져오는건가요?
0
15
2
inheritance startegy 선택시 고려사항
0
21
1
Entity 동등성 비교
0
18
1
실무 조언 관련 질문입니다.
0
44
1
H2데이터베이스 파일 생성
0
55
2
서브쿼리 강의에서 ALL 예시 관련 질문드립니다.
0
52
2
수정또는 삭제시 영속성 엔티티에 값이 무조건 있어야 하나요?
0
51
1
JPQL 메소드와 락
0
55
1
Delivery @OneToOne
0
60
1
17강 4~5분대 테이블 값 조회가 안됩니다.
0
92
2
UnsupportedOperationException 발생
0
85
3
H2 Database 연결이 안됩니다.
0
92
2
연관관계 매핑 질문드립니다.
0
85
2
h2데이터베이스 실행오류
0
107
2
persistence.xml
0
106
2
양방향 연관관계에서 연관관계의 주인(mappedBy)을 왜 꼭 정해야 하나요?
0
80
1
영속성 컨텍스트
0
64
1
JPA 프록시
0
94
1
Native Query와 MyBatis
0
67
1
영속성 컨텍스트는 어떤 메모리에 저장되는건가요?
0
85
1
임베디드 타입 예시 코드 관련 질문
0
114
3
명시적 조인에서 별칭을 주면 왜 객체에 접근할 수 있나요
0
94
3
인텔리제이 패키지 커서 단축키 질문
0
108
2
혹시 현재는 ID 데이터 타입이 String이면 안되나요?
0
143
1





