@ResponseBody : 메소드의 반환값을 응답 객체 body 에 담아 전달

@GetMapping("/users")
@ResponseBody
public User responseBodyForUser() {
    return new User("name", "email");
}

ResponseEntity : Spring 에서 제공하는 응답 객체

@GetMapping("/users/{id}")
public ResponseEntity responseEntity(@PathVariable Long id) {
    return ResponseEntity.ok(new User("name", "email"));
}

→ ResponseEntity 에 상태코드 200 이며 body 에 User 객체를 담았다.

@GetMapping("/members")
public ResponseEntity responseEntityFor400() {
    return ResponseEntity.badRequest().build();
}

→ ResponseEntity 에 상태코드 400 인 정보를 담았다.

⇒ 입력받은 url 마다 상황에 맞는 결과를 보여줄 수 있음