목차
- Blog 테이블 만들기
- User (@GeneratedValue)
- Board (@JoinColumn / fetch = FetchType)
- Reply (@Builder / @Data / @NoArgsConstructor / @AllArgsConstructor)
- application.yml 설정
- ddl-auto:
- show-sql:
- hibernate.format_sql:
1. Blog 테이블 만들기 (User, Board, Reply)
1) User
** @GeneratedValue : 값을 자동으로 생성해서 할당
- @Entity 설정하고 테이블 생성
- @Column으로 각 컬럼별 추가 설정
2) Board
** @JoinColumn : DB 내에서 Join 할 칼럼
- name : Join 시키는 필드명
** fetch = FetchType : 해당 데이터를 언제 가져올지 설정
- EAGER : 당장, 바로
- LAZY : 필요할 때
- @Entity 설정하고 테이블 생성
- @Column으로 각 컬럼별 추가 설정
- 입력될 데이터 용량이 클 것으로 예상되는 칼럼은 @Lob 어노테이션 사용
- @ManyToOne, @JoinColumn...을 사용하여 칼럼 타입을 오브젝트로 작성 (FK로 사용)
3) Reply
** @Builder : 매개변수 개수가 다양한 생성자 사용가능
** @Data : Getter, Setter 사용가능
** @NoArgsConstructor : 매개변수가 없는 생성자 사용가능
** @AllArgsConstructor : 모든 매개변수를 가진 생성자 사용가능
- @Entity 설정하고 테이블 생성
- @Column으로 각 컬럼별 추가 설정
2. application.yml 설정
1) ddl-auto:
- 프로젝트 실행할 때마다 @Entity로 설정한 테이블을 어떻게 처리할지 설정
- ddl-auto: create : 기존 테이블 삭제하고 테이블을 새로 생성(기존 테이블 내의 데이터도 사라짐) / 초창기 일회용으로만 사용
- ddl-auto: update : 기존 테이블 유지
2) show-sql: true
- @Entity로 작성한 테이블들을 console에 표기
3) hidernate.format_sql: true
- @Entity로 작성한 테이블들을 console에 정렬해서 표기
'SpringBoot > JPA' 카테고리의 다른 글
[STS] 회원정보 불러오기 (@PathVariable이란?) (1) | 2024.03.07 |
---|---|
[STS] 회원정보 추가 (Enum 이란?) (0) | 2024.03.07 |
[STS] yml 설정하기 (0) | 2024.03.06 |
[STS] Lombok 사용하기 (Maven 이란??) (0) | 2024.03.05 |
[STS] 데이터 요청하기 (with postman) (0) | 2024.03.05 |