20.12.28 07:53 작성
·
161
답변 3
0
2020. 12. 29. 23:24
네 의문 케이스는 쿼리는 실행되지만 결과를 받아서 저장하는 곳이 없기 때문에 잘못된 코드 입니다.
혹시 앞에 return 이 있으면 즉시 결과를 반환합니다.
감사합니다.
0
2020. 12. 29. 07:49
안녕하세요~
케이스를 좀 나누어서 적어봤습니다.
// 기본케이스
List<School> schools = factory.selectFrom(qSchool).leftJoin(qSchool.students, qStudent).fetch();
// 의문케이스 : schools 와 같은 변수가 없음
factory.selectFrom(qSchool).leftJoin(qSchool.students, qStudent).fetch();
0
2020. 12. 28. 22:27
안녕하세요. soollung님
factory.selectFrom(qSchool) -> factory.select(qSchool).from(qSchool)의 축약입니다. 따라서 같은 뜻입니다.
그리고 반환값을 담는 컨테이너가 없다는 뜻이 정확하게 이해가 안되는데요.
반환을 하지 않으면 값을 조회하고, 아무곳에 담지 않았으니... 데이터베이스에서 조회하고 그냥 버리게 됩니다.
관련된 메서드 전체를 보여주시면 더 도움을 드릴 수 있을 것 같아요.
감사합니다.