[英]How can I handle exception in a MVC web application (Servlet and Jsp)?
我有一個MVC Web應用程序:一個集中式servlet,幾個jsp和一個DAO。 在我的Servlet中,我有一個switch語句作為后續語句:
try {
DAO d = new DAO();
List<Entry> var = d.listentries();
switch (enumPage.fromString(operation)) {
case list:
request.setAttribute("list", var);
link = "listentries.jsp";
break;
case home:
request.setAttribute("home", var);
link = "index.jsp";
break;
case searchEntry:
request.setAttribute("searchEntry", var);
link = "searchentry.jsp";
break;
// [...]
}
} catch (NamingException ex) {
Logger.getLogger(
NewServlet.class.getName()).log(Level.SEVERE, null, ex);
link = "Error.jsp";
}
如何在程序中處理異常? 我是否必須在每種情況下都使用try-catch。
case list:
try{..
}catch(Exception ex);{
String error=ex;
request.setAttribute("error",error);
link="Error.jsp";
}
..還是我必須使用單個try-catch作為第一個示例? (或兩者?)
我必須創建一個error.jsp還是一個以上?
在servlet的“ doGet”方法中處理異常是否正確?
您的控制器應處理請求和響應,不要將請求/響應對象傳遞給Dao層。 將您的企業登錄信息放入服務層和Dao層以進行數據庫交互。 將異常從Dao拋出給服務,將服務拋出給控制器。 控制器將捕獲您的異常,並決定應返回什么作為響應。 通過在WEB-INF / web.xml中進行定義來使用自定義錯誤頁面。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.