Struts2之异常处理】的更多相关文章

Struts2的异常处理 1.异常处理机制(1)发送请求到控制器(Action); (2)Action出现异常后,依照所捕捉的不同异常转入不同的视图资源. 2.异常捕捉 (1)在Action的处理逻辑中,手动捕捉异常,在捕捉到特定的异常后,返回指定的逻辑视图名,这种方式太繁琐不利于代码的修改和维护: import com.opensymphony.xwork2.ActionSupport; public class Test3Action extends ActionSupport{ //逻辑视…
在Action中execute方法声明为:public String execute() throws Exception,这样,Action可以抛出任何Exception. 1)自己实现异常处理 我们还以helloWorldAction为例,在Action的execute方法中这样写: public String execute() throws Exception { int a=5/0; this.businessExecute(); return "toWelcome"; }…
成熟的MVC框架应该提供成熟的异常处理机制.当然可以在方法中手动捕捉异常,当捕捉到特定异常时,返回特定逻辑视图名. 这种方式非常繁琐,需要在方法中写大量try catch块,最大的缺点还是一旦需要改变异常处理方法时,需要修改代码. 最好的方式是通过声明式的方式管理异常处理.struts2提供了一种声明式的异常处理方式. 一.原理 我们看Action接口中的execute方法声明. public String execute() throws Exception 这就意味着我们重写该方法时,无需进…
Struts2框架提供了自己的异常处理机制,只需要在struts.xml文件中配置异常处理即可,而不需要在Action方法中来捕捉异常. 传统方法 public String execute() throws Exception { try{ //... return SUCCESS; }catch(SQLException ex) { // SQL异常,返回ERROR ex.printStackTrace(); return ERROR; }catch(InvalidInputExceptio…
一.学习案例:通过在input.jsp页面输入登录账号和password測试异常处理机制. 二.案例分析:struts2提供了局部异常处理机制和全局异常处理机制.局部优先于全局异常处理,当异常找不到局部异常处理时才会查询全局异常处理. a)异常类声明 <pre class="java" name="code">public class UsernameException extends Exception { private String message…
1.在应用项目中,异常的出现时很正常的.而且项目上线后发生异常也很正常的.那么需要对这些异常有相应的处理机制,以便客户能够看你到更加友好的界面.Struts2中提供了异常处理机制. 2.Struts中异常处理实现 a) 在 action 处理类中抛出的异常 public class UserAction { public String add() throws NullPointerException{ if(1==1) throw new NullPointerException("数据为nu…
最好的方式是通过声明管理异常处理 1Action里面的execute()方法抛出所有异常:public String execute() throws Exception{} 2声明异常捕捉     配置struts.xml中的异常映射    <exception-mapping../>元素                需指定两个属性:                                                |--exception    异常类型          …
Struts2的异常采用声明式异常捕捉,具体通过拦截器来实现. 在项目中,我们可以在Action中直接抛出异常,剩下的就交给Struts2的拦截器来处理了.当然,我们需要进行相关配置. Struts2配置了默认的拦截器,来处理异常.在struts-default.xml中,可以找到配置.有了这个配置以后,我们在项目中就方便多了. <interceptor name="exception" class="com.opensymphony.xwork2.intercepto…
1.在struts.xml中配置全局异常处理 在Action中抛出异常,此异常可以是action自己抛的,也可以是Service抛出来的,都会跳转到全局异常中,只有在当前Action中配置域全局异常返回的result中name相同的result,就能跳转到指定错误视图 并在struts.xml中对应Action中配置跳转的error视图: JSP中通过Struts标签并结合OGNL表达式从值栈中获取懂啊异常信息显示出来,如果不知道值栈中异常对象的名称可以先<s:debugger>看一下,如:…
1. UsersDAO.java里产生一个例外: System.out.println(1/0); 2. 调用DAO的UsersAction1.java 的execute方法, 加抛异常: public String execute() throws Exception 3. struts.xml配置, <global-results> <result name="login_success">/login_success.jsp</result>…