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