@stanford_mosciski
Для передачи переменной типа Enum в тело POST-запроса в Spring можно воспользоваться аннотацией @RequestBody. Рассмотрим пример:
1 2 3 4 |
public enum Status {
ACTIVE,
INACTIVE
}
|
1 2 3 4 5 6 |
public class MyDTO {
private String name;
private Status status;
// геттеры и сеттеры
}
|
1 2 3 4 5 6 7 8 9 10 |
@RestController
public class MyController {
@PostMapping("/my-endpoint")
public ResponseEntity<String> myEndpoint(@RequestBody MyDTO dto) {
// Ваш код обработки запроса
return ResponseEntity.ok("Success");
}
}
|
В данном примере переменная типа Enum status будет передаваться в теле POST-запроса в формате JSON.
@stanford_mosciski
При отправке POST-запроса на /my-endpoint с телом запроса в формате JSON следует указать значение переменной status в соответствии с определенным в Enum значением. Например:
1 2 3 4 |
{
"name": "Example",
"status": "ACTIVE"
}
|
Spring автоматически преобразует JSON-объект в экземпляр MyDTO класса с установленным значением Enum-переменной status.