- DB 관련 어노테이션
- @Entity
- DB 테이블과 1:1로 매칭되는 JPA 클래스
- @Table
- 클래스 이름이 테이블 이름으로 자동으로 설정되는데, 이럴때 테이블명 직접 지정할 때 사용
- @Id
- 기본키 id 열로 사용
- @GeneratedValue(strategy = GenerationType.IDENTITY)
- GenerationType 종류
- IDENTITY
- MySQL, MariaDB, PostreSQL, H2DB
- SEQUENCE
- Oracle, PostreSQL
- AUTO
- 자동 선택
- IDENTITY
- GenerationType 종류
- @Column(name=”컬럼명”)
- 해당 멤버 변수의 컬럼명 지정
- @DateTimeFormat(pattern = “yyyy-mm-dd”)
- Date 데이터를 가져올 때 날짜 형식 사용자 지정 가능
- @RequestParam @ModelAttribute 매핑
- @JsonFormat
- @RequestBody @ResposeBody 매핑
- @Entity
- 데이터 모델링 클래스 종류
- Entity 클래스
- DB 테이블과 Entity 클래스는 1:1 매칭(연결)
- 로직 코드를 작성하면 안된다.
- JPA에서 사용한다.
- DTO 클래스 (Data Transfer Object)
- 다른 계층 간에 데이터 교환을 위해 데이터를 변형하여 사용하는 객체
- 로직 코드를 가지고 있지 않고, 순수하게 getter/setter로 이루어져 있다.
- 엔티티 클래스에 있는 모든 멤버변수(컬럼)을 사용할 필요없이 원하는 컬럼만 담는 DTO를 만들어 사용할 수 있다.
- VO 클래스 (Value Object)
- DTO 클래스와 동일한 개념이지만 Getter만 가지는 Read Only의 속성을 갖고있다.
- DAO 클래스 (Data Access Object)
- DB에 실제 접근하여 CRUD 하는 객체를 말한다.
- JPA의 Repository를 사용하는 경우를 말한다.
- Entity 클래스
728x90
'Back-end > Spring Boot' 카테고리의 다른 글
[Spring Boot] MyBatis (0) | 2024.04.13 |
---|---|
[Spring Boot] URI 어노테이션 (0) | 2024.04.06 |
[Spring Boot] Model에서 Rest API로 변환 (0) | 2024.04.06 |
[Spring Boot] Test (0) | 2024.04.06 |
[Spring DB] Repository (JPA, JPQL, Native SQL) (0) | 2024.04.06 |