27일차
List<String> showTables();
-> 이렇게는 작동이 되지 않음
@Query(value = "show tables", nativeQuery = true)
List<String> showTables();
-> 이렇게는 작동이 가능하다.
BookRepository.java
Hibernate:
show tables
[address, author, book, book_and_author, book_review_info, publisher, review, user, user_history]
JPA에서 활용할 수 있는 native query를 알아보았습니다.
Converter 활용하기
Java의 객체화를 할 때 DB와의 형식이 다른 경우 사용한다.
DB에서 정보를 가져와 Entity 형식에 맞게 바꿔주는 것.
JPA에서 ENUM데이터를 가져오는 경우 Coverter를 사용하게 된다.
Book Entity
private int status; //판매상태
public boolean isDisplayed(){
return status == 200;
}
data.sql
insert into book(`id`, `name`, `publisher_id`, `deleted`, `status`) values (1, 'JPA초격차패키지', 1, false, 100);
insert into book(`id`, `name`, `publisher_id`, `deleted`, `status`) values (2, 'Spring Security 초격차 패키지', 1, false, 200);
insert into book(`id`, `name`, `publisher_id`, `deleted`, `status`) values (3, 'Spring Boot 올인원 패키지', 1, true, 100);
BookRepositoryTest
@Test
void converterTest(){
bookRepository.findAll().forEach(System.out::println);
}
Result
id=1 출력
id=2 출력
#패스트캠퍼스 #패캠챌린지 #직장인인강 #직장인자기계발 #패스트캠퍼스후기 #한번에끝내는Java/Spring웹개발마스터초격차패키지Online
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.