Bibi's DevLog 🤓🍎
[SpringDataJDBC] Map으로 1:N 관계 맵핑하기 본문
맵으로 1:N 관계 맵핑
@MappedCollection()
: 맵의 키에 기존 키를 맵핑하기.
idColumn=""
: id로 쓸 테이블컬럼명 지정. (외래 키로 연결해 준) Dish의 카테고리keyColumn=""
: 맵의 key값으로 쓸 테이블컬럼명 지정
이번 미션의 경우..
Category : Dish 가 1:N 관계이므로
1인 Category가 N인 Dish들의 Map(dishes
)을 가져야 한다.
dishes
가 갖는 ID
Category.java
public class Category {
@Id
private Long id;
private String name;
private CategoryType type;
@MappedCollection(idColumn = "category", keyColumn = "id")
private Map<String, Dish> dishes = new HashMap<>();
// ...
}
Dish.java
public class Dish {
@Id
private String id;
private String mainImage;
private String alt;
private String deliveryType;
private String title;
private String description;
private String normalPrice;
private String sellingPrice;
private String badge;
@Column(value = "category")
private Long categoryId;
private String topImage;
private String thumbImages;
private String deliveryInfo;
private String deliveryFee;
private String detailSection;
private int stock;
private String point;
// ...
}
'🖥 BE 백엔드 > Spring 스프링' 카테고리의 다른 글
Path Variable과 Query Parameter (스프링의 @RequestParam과 @PathVariable) (0) | 2021.04.30 |
---|---|
[Spring Data JDBC] Spring Data JDBC란? (0) | 2021.04.30 |
AWS EC2 (Ubuntu) 서버에 스프링 앱 배포 과정 정리 (0) | 2021.04.30 |
[Spring Data JDBC, JPA] @Embeded란?, @Embeded 사용하기 (0) | 2021.04.30 |
[Spring] HTTP method - PUT (0) | 2021.04.06 |