ビジネス層に次のメソッドがあるとします。何か問題が発生したことを UI レイヤーに伝え、エラー メッセージも表示するベスト プラクティスは何ですか? メソッドは OK のときに空の文字列を返す必要がありますか、それ以外の場合はエラー メッセージを返す必要がありますか?それとも、キャッチされた例外をラップする catch コードで別の例外をスローする必要がありますか? 2 番目のバリアントを選択すると、UI に別の try,catch が表示されるはずです。最初の亜種の疑似コードを次に示します。
public String updateSomething()
{
try
{
//Begin transaction here
dataLayer.do1();
dataLayer.do2();
dataLayer.doN();
//Commit transaction code here
}
catch(Exception exc)
{
//Rollback transaction code here
return exc.message;
}
return "";
}
これは良い習慣ですか、それともキャッチで別の例外をスローする必要がありますか (メソッドは無効になります)?