我使用DAO來訪問我的數據庫,並且這些dao方法拋出SQL異常,所以我讓它使得dao方法拋出這個異常。我的方法應該在哪一點停止拋出異常?
然後我存取權限DAO的通過服務,它看起來像:
public class UserService implements Service {
public int addNewUser(String username, String password) throws SQLException {
User user = new User(username, password);
UserDao dao = new UserDao(source.getConnection());
return dao.add(user);
}
}
這些方法拋出異常太多,但這種方式,我必須處理許多地方的SQL異常,有時它看起來相當糟糕。我應該在 服務或道路上處理例外情況嗎?還是可以在任何地方檢查異常情況?
取決於。你是唯一使用圖書館的人嗎?你是否想要爲使用它的所有應用程序提供相同的錯誤處理? ...如果有人使用它,想要在UI上的特定錯誤消息,並且你在後端處理所有事情......這一切都取決於你試圖實現的目標 – Stultuske
儘可能地拋出它,以便用戶將會顯示一條錯誤消息,以便他知道某些錯誤。你也應該嘗試分離GUI和業務邏輯 – XtremeBaumer