@Query 사용하기 4 / 패스트캠퍼스 챌린지 25일차

망고쥬스·2021년 11월 25일
0

BookNamdAndCategory (interface)

public interface BookNameAndCategory{
	String getName();
	String getCategory();
}

BookRepository.java

@Query(value = "select b.name as name, b.category as category from Book b")
List<BookNameAndCategory> findBookNameAndCategory();

BookRepositoryTest.java

bookRepository.findBookNameAndCategory().forEach(b -> {System.out.println(b.getName()+ " : " +b.getCategory());});

Result

JPA 초격차 패키지 : null
Spring Security 초격차 패키지 : null

혹은 아래와 같이 Interface가 아닌 Class를 객체를 사용할 수 있다.

BookNamdAndCategory (class)

@Data
@AllArgsConstructor
@NoArgsConstructor
public class BookNameAndCategory{
	private String name;
	private String category;
}

BookRepository.java (JPQL)

@Query(value = "select b.name as name, b.category as category from Book b")
List<BookNameAndCategory> findBookNameAndCategory();

Query에 있는 Book의 경우 테이블이 아닌 Java에서 사용하는 Entity 객체 이다.


#패스트캠퍼스 #패캠챌린지 #직장인인강 #직장인자기계발 #패스트캠퍼스후기 #한번에끝내는Java/Spring웹개발마스터초격차패키지Online

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

https://bit.ly/3FVdhDa

profile
#newbieDeveloper #since 2021.04.06

0개의 댓글