• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

User 의 List<Post> posts 컬렉션 조회시

23.02.24 13:58 작성 조회수 228

0

안녕하세요.
JPA 로 Post 를 등록하고 User 의 List<Post> posts 컬렉션 정보를 조회할때 질문드립니다.

post 등록시 User 의 List<Post> posts 컬렉션에 따로 post 를 넣지 않았는데 조회할 경우에 post 정보가 나오게되는 이유가 궁금합니다.... post가 User 컬렉션에 자동적으로 저장되는 것인가요?

답변 1

답변을 작성해보세요.

0

안녕하세요, 이도원입니다.

말씀하신 것과 같은 이유 등으로 JPA를 사용합니다. 즉, 기존에 SELECT, JOIN 등의 SQL 문장을 실행하여 User, Post 등의 결과 값을 가져오던것을 JPS에서는 Entity의 매핑관계에 의해 JOIN과 같은 SQL 처리를 간략하게 해 줄 수 있습니다. 아래 코드와 같이 User 클래스의 posts에는 @OneToMany가 Post 클래스의 user에는 @ManyToOne의 객체 매핑 관계를 설정해 놓았기 때문에, User와 Post가 1:N의 관계로 설정되어 JOIN처러 결과값을 가져올 수 있게 됩니다. Post에 대한 데이터는 실제 Post 테이블에만 저장되게 됩니다.

  • User 클래스

image

  • Post 클래스

image

감사합니다.