springmvc如何进行异常处理

Posted yufengwang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springmvc如何进行异常处理相关的知识,希望对你有一定的参考价值。

1.异常处理

1.1局部处理(直接写在处理器中)

    @ExceptionHandler
    public ModelAndView error(Exception exception) 
        ModelAndView mv = new ModelAndView();
        mv.addObject("error", exception.getMessage());
        mv.setViewName("forward:../error.jsp");
        return mv;
    

1.2全局处理(新建一个类,用来接收获得的所有的异常,以此避免在每一个类中进行异常处理)

技术图片

代码如下:

package com.zhiyou100.wyf.controller;

import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.servlet.ModelAndView;

@ControllerAdvice
public class ExceptionController 

    @ExceptionHandler
    public ModelAndView error(Exception exception) 
        ModelAndView mv = new ModelAndView();
        mv.addObject("error", exception.getMessage());
        mv.setViewName("forward:../error.jsp");
        return mv;
    
    

jsp页面:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" isErrorPage="true" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript"></script>
</head>
<body>
$error 
</body>
</html>

 

以上是关于springmvc如何进行异常处理的主要内容,如果未能解决你的问题,请参考以下文章

springmvc如何进行异常处理

SpringMVC统一异常处理(返回异常数据而不是跳转到某个页面的方法)

SpringMVC学习--异常处理器

springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑。为了区别不同的异常通常根据异常类型自定义异常类,这里我们创建一个自定义系统异常,如

springmvc学习笔记(16)-异常处理器

springMVC关于异常优先级的处理