spring data class response DTO

cozzin·2024년 5월 24일
0
data class UserResponse(
    val id: Long,
    val name: String,
    val email: String
)
@RestController
@RequestMapping("/users")
class UsersController {

    @PostMapping
    fun createUser(@RequestBody request: CreateUserRequest): ResponseEntity<UserResponse> {
        return ResponseEntity.ok(
            UserResponse(
                id=1,
                name=request.name,
                email=request.email
            )
        )
    }
}

dto 만들어서 response로 전달하면 json 형식의 응답 결과를 만들어주는 것을 알 수 있다.

% curl -X POST -H "Content-Type: application/json" -d '{"name":"John", "password":"password123", "email":"john@example.com"}' http://localhost:8080/users
{"id":1,"name":"John","email":"john@example.com"}

dto는 controller layer에서 사용하고, model은 service layer에서 사용하려고 한다. 이게 맞는건지는 좀 더 개발해보면서 확인해보자.

profile
Software Engineer

0개의 댓글