欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

关于Java后台解析json时报的错java.lang.ClassNotFoundException: org.apache.commons.lang.exception.NestableRuntim

程序员文章站 2024-01-12 19:37:22
...

大家自己在做项目的时候都接触过JSON的技术, 今天自己写了一个JSON的例子,可是一调用就出了问题,报下面这个异常:
关于Java后台解析json时报的错java.lang.ClassNotFoundException: org.apache.commons.lang.exception.NestableRuntim
上网上搜了一下才知道原来在使用JSON的使用的时候,不光要导入json-lib-2.2.3-jdk15.jar这个包,同时还要导入以下的依赖包:
1.commons-beanutils-1.9.1.jar
2.commons-collections-3.2.1.jar
3.commons-lang-2.6.jar
4.commons-logging-1.2.jar
5.ezmorph-1.0.6.jar

一、字符串与json

字符串格式:String json = "[{'day1':'work','day2':'26'},{'day1':'123','day2':'26'}]";
转换为json数组:
    JSONArray jsonArray = JSONArray.fromObject(json);
单个json对象转换
    JSONObject obj = JSONObject.fromObject(jobj); 
json转换为java bean
    JSONObject jsonObject = JSONObject.fromObject(new JsonBean()); 
list(Map)转换为Json
    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));  
    }  

三、添加、删除成员

增加
    JSONObject obj2 = new JSONObject();  
    obj2.put("day1", "study");  
    obj2.put("day2", "2");  
    jsonArray.add(obj2);  


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