使用JSONArray.fromObject()方法和引入net.sf.json包所需要的jar包支持

Posted Fantasy_99

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用JSONArray.fromObject()方法和引入net.sf.json包所需要的jar包支持相关的知识,希望对你有一定的参考价值。

关于使用JSONArray.fromObject()方法和引入net.sf.json包所需要的jar包支持。 
net.sf.json的下载地址 
最新版本:http://sourceforge.net/projects/json-lib/files/json-lib/ 
本次选择 json-lib-2.3-jdk15.jar 版本 
最新的是2.4的版本,本次使用的是 json-lib-2.3-jdk15.jar; 
json-lib还需要以下依赖包: 
jakarta commons-lang 2.5 
jakarta commons-beanutils 1.8.0 
jakarta commons-collections 3.2.1 
jakarta commons-logging 1.1.1 
ezmorph 1.0.6

所有依赖包和 json-lib包已打包上传,欢迎下载。 
资源地址:http://download.csdn.net/detail/y562363753/9921883

使用样例:

String json = "[{‘day1‘:‘work‘,‘day2‘:26},{‘day1‘:123,‘day2‘:26}]";  
                JSONArray jsonArray = JSONArray.fromObject(json);

 

实际使用:

String allWaterArrayString = req.getParameter("allWaterArrayString");
            JSONArray allWaterArray = JSONArray.fromObject(allWaterArrayString);
            int count = 0;
            List<MonitorAutoEntity> gasList = JSONArray.toList(allWaterArray, new MonitorAutoEntity(), new JsonConfig());
            for (MonitorAutoEntity monitorAutoEntity : gasList) {
                monitorAutoEntity.setPublishstatus("2");
                count += this.monitoringInfoService.updateMonitorWaterInfo(monitorAutoEntity);
                    }

 

 

下面引自http://blog.csdn.net/chenaschen/article/details/41543421内容,方便记录。 
一、字符串与json 
字符串格式: 
static String json = “[{‘day1’:’work’,’day2’:26},{‘day1’:123,’day2’:26}]”;

转换为json数组 
JSONArray jsonArray = JSONArray.fromObject(json);

单个json对象转换 
static String jobj = {‘day1’: 1, ‘day2’: 2};

[java] view plain copy

JSONObject obj = JSONObject.fromObject(jobj);  

 

 

json转换为Java bean

JSONObject jsonObject = JSONObject.fromObject(new JsonBean());  

 

 

List 转换成json(Map也可以)

List list = new ArrayList();  
JsonBean2 jb1 = new JsonBean2();  
jb1.setCol(1);  
jb1.setRow(1);  
jb1.setValue("xx");  

JsonBean2 jb2 = new JsonBean2();  
jb2.setCol(2);  
jb2.setRow(2);  
jb2.setValue("");  

list.add(jb1);  
list.add(jb2);  
JSONArray ja = JSONArray.fromObject(list);  

 

 

二、遍历Json数组

输出每个成员
    for(int i=0; i<jsonArray.size(); i++){  
        System.out.println(jsonArray.get(i));  
    }  

获取每个成员的key及value
    JSONObject obj = (JSONObject) jsonArray.get(i);  
        Iterator it = obj.keys();  
        while (it.hasNext()) {  
          String key = it.next().toString();  
          System.out.println("key ----- "+key);  
          System.out.println("value ----- "+obj.get(key));  
    }  

 

 

三、修改、添加、删除成员

修改
涉及到修改json成员的很少,如果真的要修改的话,个人建议转为字符串然后用replaceAll这个函数进行修改,如果你有更好的建议欢迎给评论。
增加
    JSONObject obj2 = new JSONObject();  
    obj2.put("day1", "study");  
    obj2.put("day2", "2");  
    jsonArray.add(obj2);  


删除
    jsonArray.remove(index);  
    jsonArray.subList(fromIndex, toIndex)  
















以上是关于使用JSONArray.fromObject()方法和引入net.sf.json包所需要的jar包支持的主要内容,如果未能解决你的问题,请参考以下文章

使用JSONArray.fromObject()方法和引入net.sf.json包所需要的jar包支持

Ajax 调用在 Spring Boot 中返回值为 JSONArray.fromObject(data) 时给出错误 500

JSONArray.fromObject不执行且不报错问题的解决

JSON后台处理特殊字符方法,在JSONArray.fromObject转换时处理

maven工具使用json-lib时,JSONArray.fromObject()不能执行的解决方案

jsonArray如何遍历到map中