Struts2中的异常处理框架
因为在Action中默认的就把异常给抛了,所以Struts中都会有异常处理机制的
在Maven中的Exception中新建一个Exception处理类继承Exception
123456789public class SysException extends Exception {private String message;public String getMessage() {return message;}public SysException(String message){this.message = message;}}把需要的图片扔到web中
在Struts中配置配置文件,配置全局结果视图的时候,会跳到自己写的错误页面上,可以配置多个跳转的页面,创建多个异常,每个异常跳的都不一样实现不同的结果。
123456789101112<!-- 全局结果视图 --><global-results>//图片的地址<result name="error">/WEB-INF/pages/error.jsp</result></global-results><!-- 异常处理框架 --><global-exception-mappings>//抛出在页面上的异常<exception-mapping result="error" exception="com.zc.bp.exception.SysException"></exception-mapping>//如果一个一个配比较繁琐,可以用Exception类<exception-mapping result="error" exception="java.lang.Exception"></exception-mapping></global-exception-mappings>注意要想用struts中的东西struts-sysadmin中的包要相同所以,他里面的包继承struts的包。
- 这样在页面就会显示异常提示跟图片了
- 也可以自定义中文提示,就是在抛异常的时候在try一下,然后自定义抛出一个异常,
new 自定义的异常类
12345678910111213public String toview() throws Exception {try {//1.调用业务方法,加载部门对象Role obj = roleService.get(Role.class, model.getId());//2.将对象放入值栈中super.push(obj);} catch (Exception e) {e.printStackTrace();throw new SysException("你有病 ,要先选中,再查看!");}//3.跳页面return "toview";}