- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 에러핸들링
- 코어 자바스크립트
- Git
- java
- typescript
- TIL
- sql
- 알고리즘
- TWIL
- Err-Handling
- mongodb
- MariaDB
- CSS
- LEVEL 2
- react
- 배포
- LEVEL1
- Refactoring
- CRUD
- 프로그래머스
- Docker
- TMIL
- LEVEL 1
- 아고라스테이츠
- First Project
- javascript
- 오늘도 개발자가 안된다고 말했다
- 코딩테스트
- 리팩터링 2판
- 면접을 위한 cs 전공지식 노트
Archives
성장에 목마른 코린이
[Spring Boot] DTO (Data Transfer Object) 본문
728x90
DTO란 계층간 데이터 교환을 위해 사용하는 객체 (Java Beans)입니다.
DTO 기법을 사용하면 중요한 정보를 노출시키지 않고 두 시스템(API와 서버 등) 간 통신을 원활하게 촉진할 수 있습니다.
Python, C++, Java 같은 객체 지향 프로그래밍(OOP) 언어 환경에서 DTO를 사용할 수 있습니다.
따라서 DTO는 개발과 업데이트가 용이합니다.
OOP 환경은 "호출" 시스템을 이용합니다. 각 시스템은 데이터 조회와 같아서 시간과 처리 속도가 필요합니다.
이때 주의를 기울이지 않으면 다음과 같이 숨기고 싶은 중요한 데이터가 호출로 인해 노출될 수 있습니다.
회사 출입 시 직원에게 이름과 사진을 요구할 수 있습니다.
이때 신원 확인을 위해 해당하는 데이터를 제공해야 합니다.
하지만 데이터베이스에 저장된 해당 직원의 다른 정보까지 제공할 필요는 없습니다.
DTO는 필요한 데이터만 전송할 수 있습니다.
DTO에는 비즈니스 로직이 아닌 데이터만 저장해야 합니다.
또한 용량이 작은 단순환 환경으로, 한 가지 작업만 수행하는 것이어야 합니다.
효과적인 DTO 사용 방법
- 상용구 코드를 최소화합니다. 코드를 일일이 새로 작성하기 때문입니다.
- 작성이 용이합니다. DTO는 작성이 어려울 정도로 복잡해서는 안 됩니다. 다만, 이러한 코드는 깨지기도 쉽습니다.
- 읽을 수 있어야 합니다. 누구든지 코드 구문을 분석할 수 있어야 합니다.
'Java > Spring Boot' 카테고리의 다른 글
[Spring Boot] Servlet 생명주기 (16 - 19) (0) | 2022.11.02 |
---|---|
[Spring Boot] Servlet 설정 with Gradle (13 - 16) (0) | 2022.11.02 |
[Spring Boot] Tomcat vs Jetty vs Undertow (0) | 2022.11.01 |
[Java] Spring과 Spring Boot의 차이, Spring Boot Starter (0) | 2022.10.21 |
[Java] Spring Boot Annotation 정리 (0) | 2022.10.21 |
Comments