y79431861 2018-12-12 10:46 采纳率: 0%
浏览 5119
已结题

@RestControllerAdvice和@RestController返回不一样的格式

springboot版本 2.1.1.RELEASE
ControllerAspect.java代码
@RestControllerAdvice
public class ControllerAspect {

@ExceptionHandler(Exception.class)
public Object dispose(final HttpServletRequest request, final HttpServletResponse response,
        final Exception ex) {

    Map<String,String> map = new HashMap<String,String>();
    map.put("mgs", ex.getMessage());
    map.put("code", "9999");
    return map;

}

}

UserController代码:
@RestController
public class UserController {

@RequestMapping(value = "/test.json", method = { RequestMethod.POST,
        RequestMethod.GET },produces = "application/json")
public Object refreshCache(final HttpServletRequest request, final String token) {
    Map<String,String> map = new HashMap<String,String>();
    map.put("mgs", "success");
    map.put("code", "0000");
    return map;
}

}
正常情况下:访问http://127.0.0.1:8080/test.json返回数据为格式是json
{"code":"0000","mgs":"success"}

在UserController里面抛出异常后
@RestController
public class UserController {

@RequestMapping(value = "/test.json", method = { RequestMethod.POST,
        RequestMethod.GET },produces = "application/json")
public Object refreshCache(final HttpServletRequest request, final String token) {
    Map<String,String> map = new HashMap<String,String>();
    map.put("mgs", "success");
    map.put("code", "0000");
    System.out.println(1/0);
    return map;
}

}
返回xml格式

  • 写回答

2条回答 默认 最新

  • BUGJOB 2018-12-12 12:04
    关注

    返回的还是json啊

    评论

报告相同问题?

悬赏问题

  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试