版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
**系统遇到异常时,在程序中手动抛出,dao抛给service,service再抛给Controller,最后Controller抛给前端控制器,前端控制器调用全局异常处理器**
import org.apache.shiro.authz.UnauthorizedException;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerExceptionResolver;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@Component
public class CustomExceptionResolver implements HandlerExceptionResolver {
public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) {
if(ex instanceof UnauthorizedException){
ModelAndView mv = new ModelAndView();
mv.setViewName("forward:/unauthorized.jsp");
return mv;
}else {
ModelAndView mv = new ModelAndView();
mv.setViewName("error");
mv.addObject("errorMsg","牛逼");
mv.addObject("ex",ex);
System.out.println(ex);
return mv;
}
}
}