Framework/Spring

[Spring API 계층] DTO(Data Transfer Object)

pongic 2022. 12. 7. 21:04
반응형

DTO란?

데이터를 전송하기 위한 용도의 객체 정도로 생각

클라이언트에서 서버 쪽으로 전송하는 요청 데이터,

서버에서 클라이언트 쪽으로 전송하는 응답 데이터의 형식으로 데이터 전송이 이루어진다.

이 구간에서 DTO를 사용

 

DTO 클래스가 요청 데이터를 하나의 객체로 전달 받는 역할을 해준다

@RestController
@RequestMapping("/v1/members")
public class MemberController {
    @PostMapping
    public ResponseEntity postMember(MemberDto memberDto) {
        return new ResponseEntity<MemberDto>(memberDto, HttpStatus.CREATED);
    }

		...
		...
}

DTO 클래스를 사용하면 유효성 검증 로직을 DTO 클래스로 빼내어 핸들러 메서드의 간결함을 유지

 

@PostMapping
    public ResponseEntity postMember(@RequestBody MemberPostDto memberPostDto) {
        return new ResponseEntity<>(memberPostDto, HttpStatus.CREATED);
    }

@RequestBody 

JSON 형식의 Request Body를 MemberPostDto 클래스의 객체로 변환 시켜주는 역할

반응형

'Framework > Spring' 카테고리의 다른 글

[Spring] AllArgsConstructor, NoArgsConstructor  (0) 2022.12.07
[Spring] Spring Framework 개념 및 정리  (2) 2022.10.17