Spring/SpringBoot

[goormedu 강의] 스프링부트 블로그 만들기 03 - 01 User 테이블 생성

코딩맛 2024. 8. 8. 00:26
해당 글은 groomedu의 스프링부트 나만의 블로그 만들기 강의를 보고 개인적으로 정리한 글입니다.

 

03 데이터베이스 세팅

- User 테이블 생성

테이블 데이터를 담을 model 생성

 

@Entity

  • 클래스를 테이블화 시키기 위한 어노테이션
  • User 클래스가 Mysql에 자동으로 테이블이 생성이 됌.

@Id

  • PK 값으로 지정해주는 어노테이션

@GeneratedValue(stategy = GenerationType.IDENTITY)

  • 프로젝트에서 연결된 DB의 넘버링 전략을 따라간다.
  • 예를 들어 오라클 사용하면 시퀀스 사용, mysql 사용하면 auto increment 사용한다는 의미

@CreationTimestamp

  • 시간이 자동으로 입력

Enum 타입 사용 -> 도메인 사용 가능

프로그램 상에서 도메인이란 어떤 범위가 정해졌다는 의미

예) 성별 : 남, 여

 

@ColumnDefault("user")

  • 컬럼의 기본값 'user'로 설정

application.yml

jpa:

    ddl-auto : create

  • 프로젝트를 실행할 때마다 테이블을 생성하겠다는 뜻
  • 그래서 최초 테이블 생성시에만 create로 설정해서 프로젝트 실행, 그 후에는 update로 변경해놔야 함.

physical-stategy : org.hibernate.boot.model.naming.PhysicalNamingStategyStategyStandardImpl

entity에 선언한 변수명 그대로 컬럼명을 만들어주겠다는 의미

 

ORM -> Java(다른언어) Object -> 테이블로 매핑해주는 기술