讲解JAVA中JSON的反序列化

我这里介绍的是使用 JSONTools(面向JAVA) 的反序列化程序。JSON在反序列化时,如果对象的属性中存在复杂对象时,需要对该属性指定类的定义,也就是在初始化JSONTools的时候,必须给泛型确切Class类型。

Sample Code: public Class Data{ private String name; } public Class Block{ private Data abc; }

从以上可以看出 Class Block 就是复杂对象,在初始化JSONTools的时候,一定要给出类型。目前支持对象有复杂对象嵌套,例如 Block 的属性abc( Data 类型)

Sample Code: tring json =" {abc:{"name":"alonely"))"; JSONTools jsontools = JSONToolsFactory.getJsonTools(); ArrayList obj = jsontools.fromJSON(json); //序列化一个对象到JSON String JSONTools jsontools = JSONToolsFactory.getJsonTools(); ArrayList need2json = new ArrayList(); String json = jsontools.toJSON(need2json);

Ok,现在大家是不是对JAVA中JSON的反序列化有一定了解了。

今天我续昨天的《讲解JAVA中JSON的反序列化》一文之后,讲解的是JAVA版JSON的 JsonHttpResponse 的使用方法。其实 JSONTools 对 JAVA 中的 HttpServletResponse 封装主要支持两种类型功能: 1、接收客户端POST 到服务器后,对客户端 Response,对于 POST 数据到服务器的请求,对POST 的返回值 格式如下:

//按优先级别顺序执行 succ: false //无优先级,无直接页面动作与之对应 script: "…." //优先级0,最高,默认值为null nextURL: "…." //优先级1,默认值为null actionID: null //优先级2,数字,null代表不执行(默认) actionArgs: {arg1:arg1Value, arg2: arg2Value} //优先级2,默认值为null info: abc… //优先级3,长度大于0时弹出提示框,默认值为null Sample Code: JsonHttpResponse jsonResp = new JsonHttpResponse(res); //jsonResp.setJsonRespCode(code); jsonResp.getJsonRespCode().setActionID(1); jsonResp.getJsonRespCode().pushActionArgs(name, "alonely blog"); jsonResp.getJsonRespCode().pushActionArgs("type", true); jsonResp.getJsonRespCode().setInfo(“hello"); jsonResp.getJsonRespCode().setNextURL("http:www.3y11.com"); jsonResp.returnJson();

2、客户端向服务器请求数据,对客户端通过 Response 返回 Json 格式数据。 服务器在使用JSONTools序列化服务器对象实例后,直接调用 JsonHttpResponse.pushJsonVar(变量名,JSON字符串) 最后使用 returnJson 方法将多组 Json 数据发回给客户端。

Sample Code: JsonHttpResponse jsonResp = new JsonHttpResponse(res); String out = " {abc:{"name":"alonely"))"; jsonResp.pushJsonVar("tree", out); jsonResp.pushJsonVar("testData", out); jsonResp.returnJson();

OK,到现在为止 JSONTools 的基本使用已经讲解完毕了。这几年大多是昆明空运来的,

讲解JAVA中JSON的反序列化

相关文章:

你感兴趣的文章:

标签云: