如何实现Springmvc异常映射

这篇文章主要讲解了如何实现Springmvc异常映射,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。

请求出现 想要跳转到错误页面

就需要对springmvc进行配置

方法1:基于xml的配置

springmvc.xml配置类

<!--配置基于xml的异常映射-->
<bean id="simpleMappingExceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
  <!--配置异常和对应页面的映射-->
  <property name="exceptionMappings" >
    <props>
      <prop key="java.lang.Exception">erroe</prop>
    </props>
  </property>
</bean>

2.方法2:基于@ControllerAdvice

@ControllerAdvice
public class ExceptionResolver {
  @ExceptionHandler(value = NullPointerException.class)
public ModelAndView nullPointerExceptionResovler(NullPointerException e, HttpServletRequest request, HttpServletResponse response) throws IOException {
   String viewName="erroe";
    return commonReslover(viewName,response,request,e);
  }
  private ModelAndView commonReslover(String viewName,HttpServletResponse response,HttpServletRequest request,Exception e) throws IOException {
    boolean judgeResult = CrowdUtil.judgeRequestType(request);
    if(judgeResult){
      ResultEntity<Object> resultEntity=ResultEntity.failed(e.getMessage());
      //转成gson对象
      Gson gson=new Gson();
      response.getWriter().write(gson.toJson(resultEntity));
      return null;
    }
    ModelAndView modelAndView=new ModelAndView();
    modelAndView.addObject("exception",e);
    modelAndView.setViewName(viewName);
    return modelAndView;
  }
}

看完上述内容,是不是对如何实现Springmvc异常映射有进一步的了解,如果还想学习更多内容,欢迎关注行业资讯频道。