json 字符串解析

本文介绍使用Struts2框架时如何处理JSON数据,并通过示例演示如何将JSON字符串解析为Java对象。针对非一一对应的key值情况,提供了解决方案。

 

Struts2 lib下六个包要用到的

 

json-lib-2.2.2-jdk15.jar 
ezmorph-1.0.2.jar 
commons-beanutils-1.7.0.jar 
commons-collections-3.2.jar 
commons-lang-2.0.jar 
commons-logging-1.0.4.jar 

 

我做测试用过的包


 

 

 

------------------------------------------------------------

 

当我们的前台的数据传递到后台的时候,如果前台的key值都存在于某个对象,那么,我们可以用

Gson.jar插件轻而易举的进行转换成对象,可是,往往我们的json字符串的key值不是一一对应的

下面就是json字符串的解析。

 

用java解析json字符串问题

 

{"weatherinfo":{"city":"北京","cityid":"101010100","temp1":"-8℃","temp2":"4℃","weather":"晴","img1":"n0.gif","img2":"d0.gif","ptime":"18:00"}}


请问这个怎么解析呢?
------解决方案--------------------------------------------------------
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;


 public void getJSONObject(){
        JSONObject node = JSONObject.fromObject("{'weatherinfo':{'city':'北京','cityid':'101010100',
temp1':'-8℃','temp2':'4℃','weather':'晴','img1':'n0'}}");
        List<Object>  nodes = new ArrayList<Object>();
   
        JSONArray jsons = JSONArray.fromObject(node.get("weatherinfo"));
        
        for (Object o : jsons)
        {
            JSONObject jsonNode = JSONObject.fromObject(o);
            List<Object> treeNodes = new ArrayList<Object>();
            treeNodes.add(jsonNode.getString("city"));
            treeNodes.add(jsonNode.getString("cityid"));
            treeNodes.add(jsonNode.getString("temp1"));
            treeNodes.add(jsonNode.getString("temp2"));
            //...
            nodes.add(treeNodes);
        }
    
    System.out.println(nodes);
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值