inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

연관관계 메서드에 대해 질문드립니다.

미해결

@Entity @Table(name = "orders") @Getter @Setter @NoArgsConstructor(access = AccessLevel.PROTECTED) public class Order { @Id @GeneratedValue @Column(name = "order_id") private Long id; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "member_id") private Member member; @OneToMany(mappedBy = "order", cascade = CascadeType.ALL) private List<OrderItem> orderItems = new ArrayList<>(); @OneToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY) @JoinColumn(name = "delivery_id") private Delivery delivery; //배송정보 private LocalDateTime orderDate; //주문시간 @Enumerated(EnumType.STRING) private OrderStatus status; //주문상태 [ORDER, CANCEL] //==연관관계 메서드==// public void setMember(Member member) { this.member = member; member.getOrders().add(this); // Member 엔티티 부분 : private List<Order> orders = new ArrayList<>(); } public void addOrderItem(OrderItem orderItem) { orderItems.add(orderItem); // OrderItem 엔티티 부분 : private Order order; orderItem.setOrder(this); } public void setDelivery(Delivery delivery) { this.delivery = delivery; // Delibery 엔티티 부분 : private Order order; delivery.setOrder(this); } member.getOrders().add(this) -> addOrderItem과 setDelivery에서는 setOrder(this)로 연관관계를 설정해줬는데, 왜 setMember 메소드에서만 getOrders().add(this)로 연관관계를 설정한 것인가요? Member 엔티티의 orders메소드가 List라 그런 것인가요? setMember에서는 같은 List임에도 불구하고 this.member = member라고 했는데, 왜 여기서는 add(orderItem)으로 연관관계를 설정한 것인가요? orderItems가 List라서 그런 것인가요?

  • 스프링
  • spring
  • 연관관계메서드
  • 김영한강사님
  • 양방향연관관계
whdk333 댓글 1 좋아요 0 조회수 212

.

해결됨

자바 ORM 표준 JPA 프로그래밍 - 기본편

.

  • 양방향연관관계
  • 편의메서드
  • JPA
  • java
댓글 1 좋아요 0 조회수 208

양방향 연관관계 질문

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

Table 명은 ORDERS로 했고 객체는 Order라고 이름을 지었습니다. mappedBy는 테이블명인 ORDERS로 해야하는게 맞지 않나요?

  • 양방향연관관계
  • java
  • JPA
열심히들어요 댓글 1 좋아요 0 조회수 231

인기 태그

인프런 TOP Writers

주간 인기글