package birunet.spring.util;
public class SYSException extends Exception {
private static final long serialVersionUID = 1L;
// 异常信息
private String message;
public SYSException(String message){
super(message);
this.message=message;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
package birunet.spring.util;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.HandlerExceptionResolver;
import org.springframework.web.servlet.ModelAndView;
public class BIgHandlerExceptionResolver implements HandlerExceptionResolver {
/**
*@param ex
*/
public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler,
Exception ex) {
//handler就是处理器适配器要执行的Handler对象(只有method)
//解析出异常类型。
//如果该 异常类型是系统 自定义的异常,直接取出异常信息,在错误页面展示。
SYSException customException=null;
if(ex instanceof SYSException){
customException=(SYSException)ex;
}else{
//如果该 异常类型不是系统 自定义的异常,构造一个自定义的异常类型(信息为“未知错误”)。
customException=new SYSException("未知错误");
}
//错误信息
String message=customException.getMessage();
ModelAndView modelAndView=new ModelAndView();
//将错误信息传到页面
modelAndView.addObject("message",message);
//指向到错误 --界面
modelAndView.setViewName("error");
return modelAndView;
}
}
时间问题 刚学习做点笔记 之后完善