使用@ResponseBody后返回500错误

简介: 使用@ResponseBody后返回500错误

springmvc+mybatis的项目中,利用mybatis分页插件mybatis-paginator进行分页查询,结果出现了500异常,后端又没有明显的报错。


原来的写法,返回Map对象,由springmvc里面的机制转为json对象,这样就会导致,在转json过程中的报错,都隐藏了,无法抛出,前端获取不到正确的数据,


最后就出现了500的异常。


@RequestMapping(value = "/query")
  @ResponseBody
  public Map<String, Object> data(HttpServletRequest request, HttpServletResponse response, CreditloanInfoParams params) {
  Map<String, Object> data = new HashMap<String, Object>();
  if(params==null){
    params=new CreditloanInfoParams();
  }
  PageList<CreditloanInfo> list = (PageList<CreditloanInfo>) creditloanInfoService.getCreditloanInfoListData(params);
  data.put("total", list.getPaginator().getTotalCount());
  data.put("rows", list);
  return data;
  }


 改成使用fastJson主动转化为json格式的字符串,这样的好处是,转json过程中如果出现错误,会有很明确的提示。  


@SuppressWarnings("unchecked")
  @RequestMapping(value = "/query")
  @ResponseBody
  public String data(HttpServletRequest request, HttpServletResponse response, BlackParams params) {
  //Map<String, Object> data = new HashMap<String, Object>();
  /*PageList<Blacklist> blackDatas = (PageList<Blacklist>) blackService.getPageData(params);
  data.put("total", blackDatas.getPaginator().getTotalCount());
  data.put("rows", blackDatas);*/
  //blackService.getPageData(params);
/*  Map data = new HashMap();
  PageList<Blacklist> blackDatas = blackService.getBlackListData(params);
  data.put("total", blackDatas.getPaginator().getTotalCount());
  data.put("rows", blackDatas);*/
  return JSON.toJSONString(blackService.getPageData(params));
  }


最后发现是转json中出现了空指针异常。修复后,问题解决。

目录
相关文章
传参接受res.data数值,如何将获取request的请求进行传参
传参接受res.data数值,如何将获取request的请求进行传参
|
8月前
|
JSON 前端开发 Java
为什么参数上必须加@RequestBody?
为什么参数上必须加@RequestBody?
241 0
|
8月前
|
网络安全
GetSmartHandleJob服务返回了"RecordNotExist"错误
【1月更文挑战第13天】【1月更文挑战第62篇】GetSmartHandleJob服务返回了"RecordNotExist"错误
39 2
|
8月前
RestTemplate调用接口返回中文乱码
RestTemplate调用接口返回中文乱码
215 0
|
8月前
RestTemplate 根据传参 返回 对象
RestTemplate 根据传参 返回 对象
110 0
|
JSON 前端开发 Java
SpringMVC之JSON返回及异常处理
SpringMVC之JSON返回及异常处理
124 0
|
JSON 前端开发 Java
SpringMVC之JSON数据返回与异常处理机制---全方面讲解
SpringMVC之JSON数据返回与异常处理机制---全方面讲解
271 0
|
JSON 前端开发 JavaScript
springmvc中使用ResponseBody 响应 json 数据
springmvc中使用ResponseBody 响应 json 数据
|
JSON 前端开发 Java
SpringMVC 使用@ResponseBody返回json 中文乱码
SpringMVC 使用@ResponseBody返回json 中文乱码
261 0
SpringMVC 使用@ResponseBody返回json 中文乱码
|
JSON 前端开发 数据格式
SpringMVC——控制器方法的返回值类型(ModelAndView、String、void、Object)
SpringMVC——控制器方法的返回值类型(ModelAndView、String、void、Object)
SpringMVC——控制器方法的返回值类型(ModelAndView、String、void、Object)