zoukankan      html  css  js  c++  java
  • 使用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)  
  • 相关阅读:
    Mybatis集成dbcp-java.lang.AbstractMethodError: Method org/apache/commons/dbcp/DelegatingResultSet.isClosed()Z is abstract
    Word 错误提示“此功能看似已中断,并需要修复” 解决
    解决 org.springframework.context.annotation.ConflictingBeanDefinitionException
    IDEA中的JAVA WEB项目启动报错的定位方法
    Oracle数据库中包含CLOB字段表的导出和导入
    idea terminal修改为gitbash多彩
    企业微信如何发红包 企业微信向个人发红包 企业微信群无法发红包 企业微信无法发红包 企业微信无法发红包如何解决
    vue项目中使用ts(typescript)入门教程
    svg / d3-force 中如何给link的label文字加底色
    svg 如何使用滤镜给文字加底色
  • 原文地址:https://www.cnblogs.com/tanzq/p/8407802.html
Copyright © 2011-2022 走看看