Отправка кода состояния с помощью сущности в Spring Boot: методы и примеры

В Spring Boot вы можете отправить ответ как с кодом состояния, так и с сущностью, используя различные методы. Вот некоторые из распространенных подходов:

  1. ResponseEntity: вы можете использовать класс ResponseEntityдля создания объекта ответа, который включает в себя как код состояния, так и сущность. Этот класс позволяет вам установить код состояния HTTP и тело ответа. Например:
@GetMapping("/example")
public ResponseEntity<String> getExample() {
    String entity = "Hello, World!";
    return ResponseEntity.status(HttpStatus.OK).body(entity);
}
  1. @ResponseStatus: вы можете аннотировать свой метод контроллера с помощью @ResponseStatusи указать желаемый код состояния HTTP. Тип возвращаемого значения метода представляет объект, который будет отправлен в ответе. Например:
@GetMapping("/example")
@ResponseStatus(HttpStatus.OK)
public String getExample() {
    return "Hello, World!";
}
  1. HttpServletResponse: вы также можете использовать объект HttpServletResponse, чтобы установить код состояния и записать сущность в ответ. Вот пример:
@GetMapping("/example")
public void getExample(HttpServletResponse response) throws IOException {
    response.setStatus(HttpStatus.OK.value());
    response.getWriter().write("Hello, World!");
}

Объединив эти подходы, вы можете отправить код состояния и объект в ответе.