一、创建一个类实现HandlerExceptionResolver
public class ExceptionResolver implements HandlerExceptionResolver {
@Override
public ModelAndView resolveException(HttpServletRequest httpServletRequest,
HttpServletResponse httpServletResponse,
Object o, Exception e) {
log.error("{} Exception",httpServletRequest.getRequestURI(),e);//在服务端打印出error的详细信息
ModelAndView modelAndView=new ModelAndView();
modelAndView.addObject("error","怎么出错了呢");
modelAndView.setViewName("/error/error");
return modelAndView;
}
}
二、将这个类注入到spring容器中
我的做法是:在此类前面加上@component注解,但是并没有效果
所以选用直接在springMVC.xml中直接用<bean>注入
<!--全局异常处理-->
<bean id="exceptionResolver" class="com.how2java.common.ExceptionResolver"></bean>
com.how2java.common.ExceptionResolver 是包名加类名,大家应该都知道
附加:ModelandView 指定jsp 输出
modelAndView.setViewName("/error/error");
