- JPA에서는 테이블을 자동으로 생성해주는 기능이 존재한다.
- DB Table == JPA Entity
@Entity : 해당 클래스가 Entity임을 명시
@Table : 실제 DB 테이블의 이름
@Id : Index primary key를 명시
@Column : DB Column의 이름
@GeneratedValue : primary key의 전략 설정
@NoArgsConstructor // 매개변수가 없는 기본 생성자
@AllArgsConstructor // 모든 매개변수를 가지는 생성자
@Data // 객체로 사용할 것이기 때문에
@Entity
// @Table(name = "user") user 테이블과 연결할 것임을 명시, class명과 table명 같으면 생략 가능
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY) //mysql을 사용하기 때문에 IDENTITY
private Long id;
// @Column(name = "account") 컬럼명 일치하므로 생략 가능
private String account;
private String email;
private String phoneNumber; //db에서는 phone_number, JPA에서 자동으로 매칭시켜줌
private LocalDateTime createdAt;
private String createdBy;
private LocalDateTime updatedAt;
private String updatedBy;
}
@NoArgsConstructor 를 사용하지 않으면 에러 발생!
'개발공부 > Java(JPA)' 카테고리의 다른 글
[Java] String VS StringBuilder 차이점 (0) | 2025.02.17 |
---|---|
JPA 란? (1) | 2025.02.13 |
Repository (0) | 2025.02.13 |
JPA 연관 관계 설정 (0) | 2023.06.18 |
JPA 자동 설정 기능 (0) | 2023.06.18 |