728x90
반응형
Spring boot를 공부하던 중 DAO, DTO, VO에 혼동이 너무 많이 일어난다.
그렇기에 확실히 알고가려고 한다.
DAO (Data Access Object)
DAO는 DB의 data에 접근하기 위한 객체로 직접 DB에 접근하여 CRUD 등을 조작할 수 있는 기능을 수행한다.
즉, Service와 DB를 연결하는 역할을 한다. SQL을 사용하여 CRUD API를 동작할 수 있다.
@Repository
public interface UserRepository extends JpaRepository<User, Long> {
@Override
Optional<User> findById(Long aLong);
DTO (Data Transfer Object)
DTO는 계층간 데이터 교환을 위한 객체이다. 즉, Service 와 Controller 사이에서 사용하는 데이터 교환 객체이다.
로직을 갖고있지 않는 순수한 객체이며 오로지 Getter/Setter 메소드만 갖는다.
@Getter
@Setter
public class UserDto{
private String userName;
private String password;
private String email;
private String userPhoneNumber;
private String zipcode;
private String address;
}
VO (Value Object)
VO는 DTO와 동일한 개념이지면 Read Only 속성을 갖는다.
단순히 값을 표현하기 위한 객체이다.
728x90
반응형
'1.프로그래밍 > Java' 카테고리의 다른 글
[Spring Boot] Annotation 정리 - 1 (0) | 2021.11.18 |
---|---|
[Spring boot] Entity에 대하여 (0) | 2021.11.16 |
[Spring boot] Spring boot @Builder 에 대하여 (0) | 2021.11.15 |
[Spring boot] Spring boot MySql 시작하기 (0) | 2021.11.15 |
[Spring boot] net::ERR_ABORTED 404 에러 (0) | 2021.11.07 |