floatfirstTOC: right
1️⃣ View 먼저 확인
🔹 게시글에 대한 Entity 테이블이 필요하다.
🔹 일단 View 먼저 확인해서 필요한 필드값을 확인하고, 비즈니스를 이해하여서 테이블에 필요한 칼럼을 판단해야된다.
🔹 게시글이라는 비즈니스에는
제목
/내용
/작성자
/게시물번호
/작성된시간
이라는 필드값이 필요할 것이라 예측이 된다.
2️⃣ Entity 테이블 생성
🔹 DB의 데이터를 조회하고 담는 정보를 넣는 역할을 하는 Entity 테이블을 담을 Board 객체를 설정한다..
🔹 게시물 번호는 Board테이블의
id
가 될 것이다.
🔹 제목과 내용은 확인된 대로 title
과 content
가 될 것이다.
🔹 작성자 ID는 userId
로 설정하여 user테이블의 PK인 id를 참조할 것이다. (카멜표기법 꼭 지켜준다.)
🔹 작성된 시간은 createdAt
으로 설정한다 (카멜표기법!!) package shop.mtcoding.blog.board; import jakarta.persistence.*; import lombok.Data; import java.time.LocalDateTime; @Table(name="board_tb") @Data @Entity // 테이블 생성하기 위해 필요한 어노테이션, entity는 DB의 자료를 1차적으로 담는 그릇 public class Board { // User 1 -> Board N @Id // PK 설정 @GeneratedValue(strategy = GenerationType.IDENTITY) // auto_increment 전략 private int id; private String title; private String content; private int userId; // 테이블에 만들어 질때 user_id private LocalDateTime createdAt; // 카멜표기법으로 넣으면 JPA가 자동변 }
🔹 카멜표기법을 정확히 지켜주어야지 JPA가 인식하고 처리한다.
🔹 Board테이블이 잘 인식되고 있다.

2️⃣ 데이터 초기화
🔹
resource
/templates
/db
/data.sql
경로의 sql파일에 초기화 용도로 사용할 데이터를 넣는다.insert into board_tb(title, content, user_id, created_at) values('제목1', '내용1', 1, now()); insert into board_tb(title, content, user_id, created_at) values('제목2', '내용2', 1, now()); insert into board_tb(title, content, user_id, created_at) values('제목3', '내용3', 1, now()); insert into board_tb(title, content, user_id, created_at) values('제목4', '내용4', 2, now());
H2 데이터베이스 접속
http://localhost:8080/h2-console/
데이터 확인
