Я создаю REST-сервис с Spring Boot.
Я хотел бы знать, как лучше обрабатывать исключения в контроллере. Я видел другие вопросы и не нашел ответа.
Мой контроллер:
@GetMapping
public ResponseEntity<?> saveMyUser(){
MyUser myUser = new MyUser(“Anna”);
//throws SQLException
MyUserDetails userDetails = userService.saveMyUser(myUser);
//if successful
return ResponseBody.ok(userDetails);
}
метод saveMyUser () UserService:
public MyUserDetails saveUser(MyUser) throws SQLException {...}
Итак, на данный момент у меня есть как минимум 2 простых варианта:
Добавить исключение к сигнатуре метода.
Здесь я могу положиться на Spring Boot для передачи всей информации об исключении и коде состояния клиенту. Однако не знаю, если это надежный подход.
Окружите с помощью try / catch и передайте всю информацию об исключениях вручную.
Что может быть проще?