springmvc錯誤統一處理

java代碼裏錯誤直接拋出java

用統一的類去處理錯誤,並返回ajax

public class MyExceptionHandler implements HandlerExceptionResolver {
    private static Logger logger = LoggerFactory.getLogger(MyExceptionHandler.class);
    public ModelAndView resolveException(HttpServletRequest request,
        HttpServletResponse response, Object handler, Exception ex) {

        Map<String, Object> model = new HashMap<String, Object>();
        model.put("ex", ex);
        logger.error("發生錯誤",ex);
        // 判斷是不是ajax請求
        String requestType = request.getHeader("X-Requested-With");
        if (requestType == null) {
            // 普通請求
            return new ModelAndView("error", model);
        } else {
            return new ModelAndView(new MappingJackson2JsonView(), "error",ex.toString());
        }
    }
}

在application.xml配置
app

<bean id="exceptionHandler" class="cn.ce.ebiz.ndesign.interceptor.MyExceptionHandler"/>
相關文章
相關標籤/搜索