上接:Jackson 处理json-准备(ObjectMapper)
代码
将 java 对象转成 json 字符串:
JsonResult jr=new JsonResult(100,"请登录");
ObjectMapper om=new ObjectMapper();
String json=om.writeValueAsString(jr);
通过 response 输出 json 字符串:
// 一定要在获取流之前调用,否则无效
resp.setContentType("application/json; charset=utf-8");
resp.setCharacterEncoding("UTF-8"); // 有时不写也可以
PrintWriter out = resp.getWriter();
out.println(json);
out.flush();
out.close();
JsonResult类:
@JsonInclude(JsonInclude.Include.NON_NULL)
public class JsonResult<T> {
protected int code;
protected String msg;
protected T data;
public JsonResult() {
}
public JsonResult(int code,String msg){
this.code=code;
this.msg=msg;
}
public JsonResult(int code,T data){
this.code=code;
this.data=data;
}
public JsonResult(int code,String msg,T data){
this.code=code;
this.msg=msg;
this.data=data;
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public T getData() {
return data;
}
public void setData(T data) {
this.data = data;
}
}