3 つのモジュールに分割された Java プロジェクトがあります。これら 3 つのモジュールは個別の Maven プロジェクトですが、それらの間には依存関係があります。関係は単純です。
モジュール A はモジュール B に依存します
モジュール B はモジュール C に依存します
- モジュール C は、セッションの作成などの低レベルのデータベース タスクを処理するライブラリです。
- モジュール B は、DAO、DTO、エンティティなどを定義するデータベース ライブラリです。
- モジュール A は、ビジネス ロジックを含む RESTful Web サービスであり、ライブラリ B を使用して DB にアクセスします。
パブリック メソッドによってスローされるモジュール C で定義されたチェック済み例外があります。モジュール B は、この例外を取得できます。
私の質問は、B が
- このチェック済み例外をキャッチし、モジュール B でローカルに定義された別のチェック済み例外をモジュール A にスローします。
- チェックされた例外をキャッチするのではなく、パブリック メソッドでこの例外を宣言して、モジュール A に渡されるようにします。
私の個人的な意見では、Java の事前定義された例外でない限り、モジュールはクライアント モジュールに対して定義したチェック済み例外のみをスローする必要があります。しかし、これには確かに欠点があります。つまり、同じエラー状態を表すために、複数のモジュールで 2 つの異なる例外を作成する必要があります。
誰でもあなたの意見を共有できますか?