SPRING

JPA

(ㅇㅁㅇ^) 2023. 8. 31. 15:05

application.properties에 추가

 

1
2
3
4
# JPA
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.H2Dialect
# 자동으로 스키마 만든다.
spring.jpa.hibernate.ddl-auto=create
cs

 

h2 db를 쓰지 않고 mariaDB 쓸 때는 create를 none으로 바꾼다.

create 쓰면 데이터 다 날아가고 새로 생성한다.

dialect도 바꾼다.

spring.jpa.properties.hibernate.dialect= org.hibernate.dialect.MariaDB103Dialect

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@Entity
@Data
@Table(name = "members")
public class Member {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int mno;
    @Column(length = 10)
    private String mname;
    @Column(name = "mid", unique = true)
    private String mid;
    @Column(columnDefinition = "text")
    private String mpw;
    @Column(columnDefinition = "timestamp")
    private String mjoindate;
}
cs

 

@Id : 기본키 지정

@GeneratedValue(strategy = GenerationType.IDENTITY) : auto_increment

@Column

: 컬럼의 길이나 데이터 타입 등 세부설정을 위해 사용 컬럼 이름이 맵핑 = @Column(name=”컬럼명”)

Text 길이 = @Column(length = 50)

길이제한 없음 : columnDefinition = "TEXT"

Longtext = @Column(columnDefinition="mediumtext")

Datetime = @Column(columnDefinition="TIMESTAMP")