シナリオ:
ユーザー ID に基づく登録が必要な Web サイトの場合、ユーザー ID は一意でなければなりません。ユーザーが、すでに存在する「foo」ユーザー ID で登録しようとしたとします (他の必須フィールドを使用)。ここで、チェック済み例外を使用せずに (データベース API が重複挿入に対してスローSQLException
します)、未チェック例外の支持者がこの状況をどのように処理し、ID が既に選択されていることをユーザーに知らせているのだろうか?
この Web サイトが Struts にあるとしましょう (いいえ、私はプロジェクトに取り組んでいるわけではありません。それをよりよく理解しているだけです)。ユーザーは、DAO を呼び出して新しいレコードを挿入する Struts アクションに入力した情報を送信します。したがって、最終的に DAO は失敗する INSERT ステートメントを発行します。したがって、アクション (DAO を呼び出す) がこの状況を明示的に処理しない場合 (DAO メソッドは、例外を拡張する DuplicateUserIDExceptoion のようなビジネス チェック済み例外をスローすることを宣言するSQLException
か、メソッドがキャッチしてスローする可能性があります)、未チェックの例外でこれをどのように処理できますか? SQLException
?
結論 - Java はチェック例外を必要としないという記事をたくさん読んだので、このシナリオが理解を深めるのに役立つことを願っています。私は非常に多くの記事を読んでいて、本当に非常に混乱しているので、記事を指摘しないでください. あなたが私を助けることができる最善の方法は、上記のシナリオに対する答えを提供することです.
注: 回復可能な例外的なシナリオは、チェック済みの例外 (プロジェクトで実装してきた) によって処理する必要があることは理解していますが、チェックされていない例外のみの支持者には本当に混乱しています。上記のシナリオをどのように処理しますか?
前もって感謝します。