public class SysException extends Exception {
// 存储错误消息
private String message;
public SysException() {
}
public SysException(String message) {
super(message);
}
@Override
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
编写异常处理器
// 要继承HandlerExceptionResolver接口
public class SysExceptionResolver implements HandlerExceptionResolver {
@Override
public ModelAndView resolveException(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) {
SysException ex = null;
//判断异常时不是属于SysException实例
if (e instanceof SysException){
ex = (SysException)e;
}else {
ex = new SysException("系统正在维护");
}
ModelAndView mv = new ModelAndView();
// 设置request参数
mv.addObject("errorMsg",ex.getMessage());
// 设置ModelAndView的视图名称
mv.setViewName("error");
return mv;
}
}