如果dao层、service层、controller层都不处理异常,都往上抛,这时,可以用全局异常处理:
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.HandlerExceptionResolver;
import org.springframework.web.servlet.ModelAndView;
public class CustomerExceptionResolver implements HandlerExceptionResolver {
@Override
public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler,
Exception ex) {
ModelAndView mav = new ModelAndView();
//这里error是一个具体的jsp页面(error.jsp),由于springmvc配置了前后缀,所以简写为error
mav.setViewName("error");
//errorcontent为error.jsp中:${errorcontent}
mav.addObject("errorcontent", "抱歉,发生未知异常......");
return mav;
}
}