我已經開始主要在Struts和Servlet上開發Java EE Web應用程序。大多數代碼在Servlet或Struts Action類中都有一個try catch塊。Java EE/Struts異常處理
是否必須爲每個servlet或動作都嘗試catch塊?我用這種代碼模板看到的唯一優點是stacktrace會記錄到應用程序指定的日誌框架(如log4j)。
如果運行時異常浮動,它將被打印在服務器(Tomcat/GlassFish/Weblogic)日誌上。
public class HelloWorldAction extends Action{
public ActionForward execute(ActionMapping mapping,ActionForm form,
HttpServletRequest request,HttpServletResponse response)
throws Exception {
try {
// do all the processing here
} catch (Exception e) {
// log all exceptions
}
}
}
public class HelloWorldExample extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
try {
// do all the processing here
} catch (Exception e) {
// log all exceptions
}
}
}
如果你現在開始,請使用Struts2的,不是Struts的!除非你使用Java 1.4,否則你正在開發一個Java EE web應用程序,而不是J2EE應用程序:http://en.wikipedia.org/wiki/Java_Platform,_Enterprise_Edition#Version_History – 2013-04-22 14:13:12