JAVA/Spring
VO DTO DAO
영공쁘이
2021. 12. 8. 00:45
VO
Value Object , 불변의 성격을 가짐
데이터 그 자체로 의미있는 것으로, (read only!)
색으로 예시를 들으면, 빨간색은 RGB값이 (255,0,0) 초록색(0,255,0,0) 이런식으로 고정이 되어있음(이를 VO)
DTO
Data Transfer Object , 가변의 성격을 가짐
한마디로, 데이터를 담는 컨테이너<그릇> (getter를 위해 사용됨)
이는, 데이터를 setter and getter를 함으로써, 해당 사용하는 객체의 값이 변할 수 있음
* API: 컴퓨터의 기능을 실행시킬 방법
- 서버 측 : Database Record Data -> DTO -> API(JSON or XML) -> Client
- 클라이언트 측 : Server -> API(JSON or XML) -> DTO -> View or Local Database System
DAO
Data Access Obejct , 데이터 접근 객체
직접 DB에 접근하여 CRUD 기능을 수행, 데이터 접근 로직 & 비즈니스 구현 로직
배경: 원래는 매번 DB와 커넥션을 하기 위해 커넥션을 만드는데, 이들을 모아놓은 곳이 커넥션 풀
이들을 동작 때마다 수행하기에는 오버헤드가 걸리므로, 이 기능만 전담으로 하는 곳이 필요했다.
그래서, 이를 전담하는 곳을 만든 객체가 바로 DAO