Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
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
Archives
Today
Total
관리 메뉴

참새의 이야기

[MVC1] 스프링 MVC Response 본문

Spring

[MVC1] 스프링 MVC Response

참새짹짹! 2023. 8. 4. 15:14

스프링 MVC Response

HTTP 응답 - ResponseEntity

강의를 들으면서 가장 생소했던 부분이었다.

응답할 내용을 ResponseEntity에 담아서 반환한다.

이는 HTTP 메시지 컨버터를 통해서 JSON 형식으로 변환되어 반환된다.

@GetMapping("/response-body-json-v1")
public ResponseEntity<HelloData> responseBodyJsonV1() {
    HelloData helloData = new HelloData();
    helloData.setUsername("userA");
    helloData.setAge(20);
    return new ResponseEntity<>(helloData, HttpStatus.OK);
}

@ResponseStatus(HttpStatus.OK)
@ResponseBody
@GetMapping("/response-body-json-v2")
public HelloData responseBodyJsonV2() {
    HelloData helloData = new HelloData();
    helloData.setUsername("userA");
    helloData.setAge(20);
    return helloData;
}

위의 V1처럼 ResponseEntity를 직접 사용할 수도 있고, 아래와 같이 @ResponseBody 어노테이션을 사용할 수도 있다.

후자의 경우에는 HTTP 상태 코드를 지정할 수 없다는 단점이 있지만, @ResponseStatus 어노테이션을 사용해 상태 코드를 설정할 수 있다.

이 방법은 동적인 상태 변경은 불가능하다는 점에 유의하여 사용해야 한다.

reference

이 글은 김영한님의 '스프링 MVC 1편'을 듣고 작성했습니다.

'Spring' 카테고리의 다른 글

[MVC1] 데이터 담아 Redirect하기  (2) 2023.08.04
[MVC1] HTTP 메시지 컨버터  (0) 2023.08.04
[MVC1] 스프링 MVC Request  (4) 2023.08.04
[MVC1] Slf4j를 사용한 logging  (0) 2023.08.03
[MVC1] 스프링 MVC 활용  (0) 2023.08.02