Spring Boot

例外処理

@ControllerAdvice、@ExceptionHandler、@ResponseStatus を使った例外処理、エラーの標準化

25 面接問題·
Mid-Level
1

Spring MVC における @ControllerAdvice とは何ですか?

回答

@ControllerAdvice はアプリケーションのすべてのコントローラーに対する例外処理を一元化できます。このアノテーションは、任意の @Controller や @RestController がスローした例外をインターセプトするグローバルコンポーネントを作成します。これにより各コントローラーでエラー処理ロジックを重複させることを避け、エラーレスポンスの一貫性を促進します。

2

コントローラー内で特定の例外を処理するにはどうすればよいですか?

回答

@ExceptionHandler を使うと、コントローラーや @ControllerAdvice 内で 1 つ以上の特定の例外を処理するメソッドを定義できます。アノテーションが付与されたメソッドは、指定した例外がスローされたときに自動的に呼び出されます。ResponseEntity を返すことで、HTTP ステータスとレスポンスボディを制御できます。

3

例外クラスに付ける @ResponseStatus の目的は何ですか?

回答

カスタム例外に付けた @ResponseStatus は、その例外を特定の HTTP ステータスコードに自動的にマッピングできます。例外がスローされると、Spring は @ExceptionHandler を必要とせずに指定された HTTP ステータスを自動的に返します。このアプローチは、HTTP ステータスに直接対応するシンプルな例外のコードを簡素化します。

4

@Valid によるバリデーションが失敗したとき、どの例外がスローされますか?

5

Spring 6 以降における ProblemDetail とは何ですか?

+22 面接問題

次の面接に向けてSpring Bootをマスター

すべての問題、flashcards、技術テスト、コードレビュー演習、面接シミュレーターにアクセス。

無料で始める