# 1. Entity : DB 테이블과 매핑하는 객체
@Getter
@NoArgsConstructor
@Table(name = "member")
@Entity
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id = null;
@Column(unique = true, nullable = false, length = 20)
private String userId;
@Column(nullable = false, length = 20)
private String password;
@Column(nullable = false, length = 20)
private String name;
private Integer age;
}
# 2. DTO (Data Transfer Object) : Layer 간 데이터 교환, 데이터 전달용
@Getter
public class BookDto {
private long id;
private String bookName;
private String author;
}
# 3. VO (Value Object) 값을 갖는 순수한 도메인, 값 표현용
@Getter
public class UserVo {
private final String name;
private final Integer age;
private final String address;
}
'스프링' 카테고리의 다른 글
DDD 설계 vs SQL중심 설계 (0) | 2023.11.11 |
---|---|
@GeneratedValue 의 default는? (0) | 2023.11.10 |
HTTP method 종류 (0) | 2023.11.06 |
Controller - Service - Repository 구조 (0) | 2023.11.03 |
스프링 Controller 간단 구현 (0) | 2023.11.02 |