엔티티 전체를 조회 하는 것이 아닌 이름만 조회하기 위해, 프로젝션을 사용하는것 으로 알고 있습니다.
하지만, 단순 jpa + jqpl로도 이름만 조회가 가능한데, 다음과 같이 구현하면, 내부적 동작방식이 다른지? 여부가 궁금합니다.
MemberRepository.java
@Query("select m.name from Member m where m.name = :name")
String findOnlyOneName(@Param("name") String name);
@Test
public void 간단하게_이름만조회() throws Exception{
//given
Team team = new Team("teamA");
teamRepository.save(team);
Member m1 = new Member("kim1",10,team);
memberRepository.save(m1);
em.flush();
em.clear();
//when
String findMemberName = memberRepository.findOnlyOneName("kim1");
//then
assertThat(findMemberName).isEqualTo("kim1");
}
안녕하세요. 김동훈님
도움을 드리고 싶지만 질문 내용만으로는 답변을 드리기 어렵습니다.
정확히 어떤 점이 궁금하신지 잘 이해가 되지 않습니다.
궁금한 상황 2가지를 나누어 작동하는 예제 코드로 만들어서 올려주시겠어요?
실제 동작하는 전체 프로젝트를 ZIP파일로 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.
구글 드라이브 업로드 방법은 다음을 참고해주세요.
https://bit.ly/3fX6ygx
주의: 업로드시 링크에 있는 권한 문제 꼭 확인해주세요
추가로 다음 내용도 코멘트 부탁드립니다.
1. 문제 영역을 실행할 수 있는 방법
2. 문제가 어떻게 나타나는지에 대한 상세한 설명 (오류 화면, 오류 로그 포함)
링크: 공식 서포터즈
링크: 자주하는 질문
감사합니다.
답글