일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 알고리즘
- 프로그래머스
- 시나공
- softeer
- 공부일지
- SW봉사
- java
- 백준
- 1과목
- 회고
- 소프티어
- C++
- 스프링
- 문제풀이
- CJ UNIT
- 코틀린
- BFS
- programmers
- 백준 알고리즘
- MYSQL
- 코딩교육봉사
- kotlin
- 정보처리산업기사
- 자바
- python
- SQL
- 데이터베이스
- 백준알고리즘
- 파이썬
- 코딩봉사
Archives
- Today
- Total
JIE0025
[JPA] 카테고리 Entity DB 반영 체크 본문
728x90
Application.yml에 해당 내용을 적어줬었다.
name 과 password도 아래 더 내용이 있지만 생략했다.
엔티티를 아래와 같이 만들어주었었다.
package com.FlagHome.backend.v1.category.entity;
import lombok.*;
import javax.persistence.*;
import java.util.ArrayList;
import java.util.List;
@Entity
@Getter
@NoArgsConstructor(access = AccessLevel.PROTECTED)
public class Category {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column
private String name;
@Column(name = "category_depth")
private int categoryDepth;
@ManyToOne(fetch = FetchType.LAZY) //지연로딩, Category 조회할 때 부모도 함께 조회할 필요는 없고, 해당 카테고리의 자식들은 필요함.
@JoinColumn(name="parent")
private Category parent;
//cateorgy : parent = n : 1
//외래키가 존재하는 곳이 곧 '연관관계의 주인'이다.
//name 속성은 말 그래도 Team 엔티티에 존재하는 member 라는 필드를 어떤 이름으로 Team 테이블에 컬럼명으로 설정할 것인지를 나타내주는 것이다.
//지연로딩할 필요는 없을듯
@OneToMany(mappedBy = "parent", cascade = CascadeType.REMOVE) //부모가 삭제되면 자식도 삭제되어야함.
private List<Category> children = new ArrayList<>();
//하위 메뉴를 가져오기 위한 1:n
public void setName(String name) {
this.name = name;
}
public void setChildren(List<Category> children ) {
this.children = children;
}
@Builder
public Category(Long id, String name, Category parent, int categoryDepth, List<Category> children) {
this.id = id;
this.name = name;
this.parent = parent;
this.categoryDepth = categoryDepth;
this.children = children;
}
}
먼저 서버를 틀어주고,
일단 동작을 시켜봤는데 디비엔 반영이 되었다.
MySQL Workbench에도 잘 반영되어 있는것을 확인할 수 있다.
'백엔드 > 테스트' 카테고리의 다른 글
[Postman][4] Get Categories (컨트롤러 요청메세지 테스트) (0) | 2022.12.19 |
---|---|
[Postman][3] depth가 1~3 인 카테고리 추가 (컨트롤러 요청메세지 테스트) (0) | 2022.12.18 |
[MockMvc] CategoryControllerTest (1) depth가 0인 카테고리 추가 (0) | 2022.12.17 |
[Postman][2] id가 1인 카테고리 수정 (컨트롤러 요청메세지 테스트) (0) | 2022.12.17 |
[Postman][1] depth가 0인 카테고리 추가 (컨트롤러 요청메세지 테스트) (0) | 2022.12.17 |