안녕하세요 이해가 조금 안가는 부분이 있어서 글 질문드립니다.
17:53쯤 보시면
findAll() 메서드는 JpaRepository 인터페이스가 가지고 있는 메서드 입니다. 그런데
@Override @EntityGraph(attributePaths = {"team"}) List<Member> findAll();
이렇게만 적어 주셨는데 이게 왜 쿼리가 되는지가 신기합니다..
오버라이드 해서 따로 쿼리문을 적어주지 않으시고(쿼리를 재정의 하지 않으시고)
team 만 연관짓게 해주셨는데..
어떻게 Member 엔티티를 다 끌고 오는것인가요..
findBy... 이런 메소드 이름으로 가져오는 형태도 아닌데
이게 궁금합니다
두번째 질문입니다.
21:29 마지막 부분에서 Member.all 같은
@NamedEntityGraph 메서드는
@NamedQuery 와는 다르게 query="..." 를 직접 사용할수가 없더라구요.. (Member 엔티티에서) 그래서 findBy,.. 같은 이름으로 쿼리를 조회해 오는 (메서드 쿼리랑) 같이 조합해서쓸수밖에 없는거죠?
감사합니다 쿼리문을 따로 재정의 하지 않아도
그냥 기본 findAll() + 엔티티 그래프 기능이 되게 JPA가 지원 해주는것이였네요