例如:我們有基於MVC
的Web應用程序。此外,我們使用這個應用程序:Spring
,Struts 2
和Hibernate
框架。Java:MVC項目中的錯誤處理。如何正確實施?
讓我們看看小場景:用戶嘗試保存一些instanse,例如:BO Book。
因此,用戶填寫表單域和發送請求到服務器:
發生了什麼事在服務器上?
- 執行動作方法
Action.Save();
- 內部
Action.Save()
呼叫Service.save()
; - Inside
Service.save()
致電DaoHibernate.save()
; - Inside
DaoHibernate.save()
致電getHibernateTemplate().save()
;
方法getHibernateTemplate.save()
- 它是框架實現,所以我們不能訪問這個方法。我們只知道,如果在此方法內部出現故障,則會引發DataAccessException
。
那麼,在這一刻我想,如何正確實現我的日誌記錄和錯誤處理?
在哪個級別?
On Dao level?服務水平?
還是關於Struts的行爲?
您對此有何看法?
還是需要每個級別?
您可以推薦哪些最佳實踐?
很棒的圖!謝謝! – user471011 2012-01-30 15:52:00