후다다닥
391
2021-07-28 20:26:03
3
142

스프링부트 SPRING DATA JPA 사용법 질문드립니다.


제가 스프링부트를 거의 처음 시작하는 단계에서 이러한 과제를 풀고 잇는데 막히는 부분이 있어서 질문드립니다. 다름아니라 제가 TXT 파일에서 데이터들을 Stream 해와서 JPArepository상속받은 Interface를 객체화 시켜서 saveall()함수로 데이터를 저장시키고(엔티티로 각 repository 클래스 1:1로 엔티티 클래스 만들어둠) 보니깐 spring data jpa 로 제가 오라클등에서 구현하는 db를 실제로 사용할 수 있더라구요. 해서 @Query(value = "SELECT...", nativeQuery = true) 이런 구조로 사용자정의 쿼리를 불러와서 객체에 저장해서 관리하고 싶은데, 보통 이쿼리가 조인도 되있고 총 3테이블의 데이터를 가져오기에 하나의 레포지토리클래스 안에 이쿼리를 쓰기가 불가능하던데 이렇게 다중 조인 되있는 상태에서 여러 컬럼을 추출해야할 경우엔 어떻게 해결해야할까요 ㅜㅜ?

0
  • 답변 3

  • 쭈꾸마뇽
    183
    2021-07-28 20:31:53

    jpa에 대한 개념부터 공부하시는 걸 추천할게요


    jpa는 엔티티간 연관관계를 통해서 조인되있는 테이블 데이터를 가져올 수 있습니다.


    연관관계의 종류도 여러개 있고 쿼리 날리는 옵션도 다양하니 한번 찾아보시는걸 추천드려요

  • 카시와기유키
    677
    2021-07-28 22:16:37

    하나의 Entity 에서 OneToMany, ManyToOne 등 연관관계를 갖는 다른 Entity 를 둘 수 있습니다.

    예를 들어, Person Entity 에 ManyToOne 으로 Car Entity 가 있다면 Person 을 조회하여 Car 도 따라 조회가 됩니다.

    여러 컬럼을 추출하는 것은 DTO 를 이용해도 됩니다.

  • ntz10130
    7
    2021-07-28 23:53:09

    조인 많고 쿼리 복잡해질땐 JPA 사용 안하는걸 추천 드립니다.

  • 로그인을 하시면 답변을 등록할 수 있습니다.