随笔 - 326,  文章 - 0,  评论 - 0,  阅读 - 16万
import java.io.IOException;
import javax.servlet.ServletOutputStream;
import org.codehaus.jackson.JsonEncoding;
import org.codehaus.jackson.JsonFactory;
import org.codehaus.jackson.JsonGenerator;
import org.codehaus.jackson.map.ObjectMapper;
import Smart.RongCard.Result.BaseProtocol;

/**
* JSON接口
* @author wenyuan
*/

public class WriteJson {

private static ObjectMapper mapper = new ObjectMapper();
private static JsonFactory factory = mapper.getJsonFactory();
public static void writeJSON(ServletOutputStream output, BaseProtocol obj,int code) throws IOException {
JsonGenerator JGenerator = null;
if(code == BaseProtocol.CHARSET_CODE_UTF8){
JGenerator = factory.createJsonGenerator(output, JsonEncoding.UTF8);
}
if(JGenerator != null){
JGenerator.writeObject(obj);
}
}
}

//Head接口

public class Head {
String result;//true or false
String errcode;//1003:请求不存在
String errmsg;//汉字描述
public String getResult() {
return result;
}
public void setResult(String result) {
this.result = result;
}
public String getErrcode() {
return errcode;
}
public void setErrcode(String errcode) {
this.errcode = errcode;
}
public String getErrmsg() {
return errmsg;
}
public void setErrmsg(String errmsg) {
this.errmsg = errmsg;
}
}

//Body接口

public class Body {
}

//BaseProtocol接口

public class BaseProtocol {
public static final String RETURN_FORMAT_JSON = "json";

public static final int CHARSET_CODE_UTF8 = 0;

private Head head;
private Body body;
public Head getHead() {
return head;
}
public void setHead(Head head) {
this.head = head;
}
public Body getBody() {
return body;
}
public void setBody(Body body) {
this.body = body;
}
}

//代码接口调用方法

protocol.setHead(head);

protocol.setBody(body);

WriteJson.writeJSON(response.getOutputStream(), protocol, BaseProtocol.CHARSET_CODE_UTF8);

 

 

第二种解析方法

//这里面放的就是jsonobj

JSONArray jsonarray = new JSONArray();
//这里面放的类似于Map一样的东西
JSONObject jsonobj = new JSONObject();
List<DeviceInfo> deviceinfo = appService.getalldevice();
List<String> list = new ArrayList<String>();
for(DeviceInfo devinfo:deviceinfo){
list.add(devinfo.getdId());
}
jsonobj.put("dId", list);
jsonarray.add(jsonobj);
WriteJson.writeJSON(response.getOutputStream(), jsonarray, 0);

 
posted on   文种玉  阅读(1162)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示