springmvc返回错误状态码_SpringMVC 异常统一处理,返回json

两步即可:

1、    配置自己的 统一处理类,到xml中。

2、实现 统一处理 接口。

package com.util.aop;

import java.io.IOException;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import org.springframework.http.HttpStatus;

import org.springframework.http.MediaType;

import org.springframework.web.servlet.HandlerExceptionResolver;

import org.springframework.web.servlet.ModelAndView;

import com.alibaba.fastjson.JSONArray;

import com.alibaba.fastjson.JSONObject;

public class MyExceptionHandler implements HandlerExceptionResolver {

public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler,

Exception ex) {

ModelAndView mv = new ModelAndView();

/*使用response返回*/

response.setStatus(HttpStatus.INTERNAL_SERVER_ERROR.value()); //设置状态码500

response.setContentType(MediaType.APPLICATION_JSON_VALUE); //设置ContentType

response.setCharacterEncoding("UTF-8"); //避免乱码

response.setHeader("Cache-Control", "no-cache, must-revalidate");

JSONObject obj = new JSONObject();

obj.put("DATA", new JSONArray());

obj.put("CODE", "10001");

obj.put("MSG", ex.getMessage());

obj.put("EX", ex.toString());

try {

response.getWriter().write(obj.toJSONString());

} catch (IOException e) {

e.printStackTrace();

}

return mv;

}

}

这里附带讲一下, 对应 前台ajax统一异常处理。  请看下一篇文章。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值