20. User 테이블 생성
by 볼빵빵오춘기src > main > com.cos.blog 밑에 model 패키지 생성
src > main > com.cos.blog > model 밑에 User, Board, Reply 클래스 생성
User 클래스
package com.cos.blog.model;
import lombok.*;
import org.hibernate.annotations.CreationTimestamp;
import javax.persistence.*;
import java.sql.Timestamp;
// ORM => Java(다른 언어) Object -> JPA 가 table로 매핑해주는 기술
@Entity
// @DynamicInsert // insert시 값이 null값을 제외 시켜준다.
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder // 빌더패턴
@Table(name = "META_USER")
public class User {
@Id //Primary Key
@GeneratedValue(strategy = GenerationType.IDENTITY) // 프로젝트에서 연결된 DB의 넘버링 전략을 따라간다.
private int id; // 시퀀스, auto_increment
@Column(nullable = false, length = 30, unique = true)
private String username; // 아이디
@Column(nullable = false, length = 100)
private String password;
@Column(nullable = false, length = 50)
private String email;
@ColumnDefault("'user'") // ""큰 따옴표안에 ' 작은 따옴표를 같이 작성해줘서 문자라는 것을 알려줘야한다.
private String role; // 나중에는 Enum을 쓰는게 좋다. -> Enum을 쓰므로써 도메인을 만들 수 있음.
// 권한을 admin, user, manger 만 넣고 싶은데 만약 String으로 해놨을 경우 오타가나서 adminn이런식으로 들어갈 수 있기 때문
@CreationTimestamp // 시간이 자동으로 입력
private Timestamp createDate;
}
application.properties
spring.jpa.hibernate.ddl-auto을 create로 해준다.
그러면 프로젝트가 실행되면 table이 만들어지는 것을 확인가능하다.
spring.jpa.hibernate.ddl-auto=create
'강의 따라하기 > blog' 카테고리의 다른 글
23. Reply 테이블 생성 (1) | 2024.01.01 |
---|---|
22. Board 테이블 생성 (1) | 2024.01.01 |
19 yaml 설정하기 (1) | 2024.01.01 |
18 lombok 세팅 및 사용해보기 (0) | 2024.01.01 |
17 maven이란 (0) | 2024.01.01 |
블로그의 정보
Hello 춘기's world
볼빵빵오춘기