웹 개발

ResponseEntity<T> 클래스

_KH_ 2025. 4. 30. 20:39

HTTP 응답을 더 정교하게 제어할 수 있게 해주는 Spring 클래스.

HTTP 응답 전체를 직접 설정해서 반환할 수 있게 해준다.

다음과 같은 코드가 있다면

@PostMapping("/login")
public ResponseEntity<String> login() {
    return ResponseEntity.ok("로그인 성공!");
}
HTTP/1.1 200 OK
Content-Type: text/plain
Content-Length: 15

로그인 성공!

HTTP 응답을 다음과 같이 준다.


ResponseEntity<String> 형식으로 사용하면 상태코드 지정/ 헤더 설정 / 본문 내용 설정이 가능하다.

※ 헤더는 서버와 클라이언트가 정보를 주고받을 때 데이터의 형식, 누구한테서 왔는지.. 등등의 정보를 알려주는 것을 말함

※ Entity는 데이터 덩어리 하나 자체를 의미함. 즉, ResponseEntity는 응답이라는 객체 덩어리 하나로, 본문과 상태코드, 헤더를 포함한다.

⇒ HTTP 응답 전체(body, status, headers)를 하나의 객체로 감싼 것!

ex)

  • Member → 회원이라는 개체 → DB 엔티티
  • ResponseEntity → HTTP 응답 하나를 통째로 표현하는 단위

[예시]

@PostMapping("/login")
public ResponseEntity<String> login(@RequestParam String id) {
    if (id.equals("admin")) {
        return ResponseEntity.status(403).body("접근 금지"); // 403 상태로 응답
    } else {
        return ResponseEntity.ok("로그인 성공"); // 200 상태로 응답
    }
}

'웹 개발' 카테고리의 다른 글

서버(Server)와 세션(Session)  (0) 2025.05.04
DAO 버전 UP하기  (0) 2025.05.02
관리자 회원 관리 페이지  (0) 2025.04.28
Repository와 Impl  (0) 2025.04.27
Eclipse와 VSCode  (0) 2025.04.26