Web层框架对网站中所有异常的统一处理

网友投稿 238 2022-10-26


Web层框架对网站中所有异常的统一处理

一个网站的异常信息作为专业的人士,是不会轻易暴露给用户的,因为那样狠不安全,显得你漏是一回事,只要还是考虑到网站的数据安全问题,下面给大家分享一下一些常见的web层框架是如何处理统一的异常。

之前都是在Struts2的配置文件中配置拦截器来统一处理系统中所有的异常,给大家带点伪代码吧,好歹曾经用过,呵呵。

配置文件配置信息如下:

Java类伪代码如下:

ExceptionInterceptor          serialVersionUID = -3570177760250354837L       String intercept(ActionInvocation actionInvocation)          HttpServletRequest request =         String result =                                    result =         }                                         ExceptionResultInfo exceptionResultInfo =                            (e                  exceptionResultInfo =             }   (e  UnknownAccountException || e                  ResultInfo resultInfo = ResultUtil.createFail("用户名或密码错误!"                 exceptionResultInfo =              }   (e                  ResultInfo resultInfo = ResultUtil.createFail("没有权限!"                 exceptionResultInfo =

首先说说springmvc处理统一异常的方式,目前就我了解的有三种:直接使用springmvc提供的异常处理器、自己手动配置自定义全局异常处理器和使用注解(该种方式没用过)。

先说一下第一种吧,它是直接在springmvc的核心配置文件中配置springmvc自身提供的简单异常处理器。

1    2     

第二种就是自己定义一个异常处理器,然后通过在springmvc的核心配置文件中配置即可。

自定义异常处理器类伪代码如下:

1 /** 2  * 自定义全局异常处理器: 3  */ 4 public class CustomExceptionResolver implements HandlerExceptionResolver { 5     @Override 6     public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler, 7             Exception ex) { 8          9         ex.printStackTrace();10         CustomException customException = null;11         //如果抛出的是自定义的异常则直接转换12         if(ex instanceof CustomException) {13             customException = (CustomException) ex;14         } else {15             //如果抛出的不是自定义的异常则重新构造一个未知错误异常16             new SysException("系统正在维护中,请稍后重试...");17         }18         //向前台返回错误信息19         ModelAndView modelAndView = new ModelAndView("exception");20         modelAndView.addObject("message", customException.getMessage());21         return modelAndView;22     }23 }

springmvc配置文件配置信息如下(各位在迫不得已的情况复制的时候记得修改一下包名):


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:TFS 测试用例步骤数据统计
下一篇:Vue 自定义图片懒加载指令v-lazyload
相关文章

 发表评论

评论列表