Springboot两种返回方式一种是@ResponseBody 一种是json返回

第一种,使用@ResponseBody注解,并返回map类型,则自动转成json格式

第二种方法是void,看一下service逻辑处理返回格式

HttpServletResponse帮助类
package com.haidaipuhui.util;
import java.io.IOException;
import javax.servlet.http.HttpServletResponse;
/**
* HttpServletResponse帮助类
*/
public class ResponseUtils {
public static void renderJson(HttpServletResponse response, String text) {
// System.out.print(text);
render(response, "text/plain;charset=UTF-8", text);
}
/**
* 发送内容。使用UTF-8编码。
*
* @param response
* @param contentType
* @param text
*/
public static void render(HttpServletResponse response, String contentType, String text) {
response.setContentType(contentType);
response.setCharacterEncoding("utf-8");
response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
try {
response.getWriter().write(text);
} catch (IOException e) {
e.printStackTrace();
}
}
}
Result返回方法
/**
* 在无注解支持的环境下返回到页面信息(调用即返回添加的信息)
*
* @param code 状态
* @param t 结果集
* @param massage 说明信息
* @param response
*/
@SuppressWarnings({ "unchecked", "deprecation" })
public static <T> void render(String code,T t ,String massage,HttpServletResponse response){
Map<String, Object> result = new HashMap<String, Object>();
if(t == null)
t = (T) "";
result.put(Commend.CODE, code);
result.put(Commend.DATA,t);
result.put(Commend.MESSAGE, massage);
ResponseUtils.renderJson(response, JsonUtil.obj2String(result));
}
private class Commend {
public static final String CODE = "code";
public static final String MESSAGE = "message";
public static final String DATA = "data";
}