jsonarray用需要啥jar包?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jsonarray用需要啥jar包?相关的知识,希望对你有一定的参考价值。
jsonarray所必需的6个jar包:
1、commons-beanutils-1.7.0.jar
2、commons-collections-3.1.jar
3、commons-lang-2.5.jar
4、commons-logging.jar
5、ezmorph-1.0.3.jar
6、json-lib-2.1-jdk15.jar
Jar文件属于一个存档文件,它是用ZIP格式构建的。Jar作为文件扩展名。用户可以使用JDK提供的jar命令创建或提取jar文件。您也可以使用其他zip压缩工具,但压缩时,zip文件头中条目的顺序很重要,因为清单文件通常需要放在第一位。
扩展资料:
可执行jar文件是存储在特殊配置的jar文件中的自包含Java应用程序,JVM可以直接执行该文件,而无需事先提取文件或设置类路径。运行存储在不可执行jar中的应用程序。
必须将其添加到类路径中,并按名称调用应用程序的主类。但是对于一个可执行的jar文件,我们可以运行一个应用程序,而无需提取它或知道主入口点。可执行jar有助于Java应用程序的发布和执行。
参考资源来源:
百度百科-jar
参考技术Ajsonarray所必需的6个jar包:
1、commons-beanutils-1.7.0.jar
2、commons-collections-3.1.jar
3、commons-lang-2.5.jar
4、commons-logging.jar
5、ezmorph-1.0.3.jar
6、json-lib-2.1-jdk15.jar
JAR文件属于一种归档文件,以ZIP格式构建,以.jar为文件扩展名。用户可以使用JDK自带的jar命令创建或提取JAR文件。也可以使用其他zip压缩工具,不过压缩时zip文件头里的条目顺序很重要,因为Manifest文件常需放在首位。
扩展资料:
一个可执行的jar 文件是一个自包含的 Java 应用程序,它存储在特别配置的JAR 文件中,可以由 JVM 直接执行它而无需事先提取文件或者设置类路径。要运行存储在非可执行的 JAR 中的应用程序。
必须将它加入到您的类路径中,并用名字调用应用程序的主类。但是使用可执行的 JAR 文件,我们可以不用提取它或者知道主要入口点就可以运行一个应用程序。可执行 JAR 有助于方便发布和执行 Java 应用程序。
参考资料:百度百科-jar
参考技术BList泛型转为JSON:JSONArray jsonArray = JSONArray.fromObject(list);
已经导入了json的jar包,可是一直报错:java.lang.ClassNotFoundException: org.apache.commons.lang.exception.NestableRuntimeException,对与一个小白来说,纠结了好久,各种找错,最后才知道使用JSON不仅需要json的jar包,还需要一些关联的jar包:
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
1.JAR包简介
要使程序可以运行必须引入JSON-lib包,JSON-lib包同时依赖于以下的JAR包:
commons-lang.jar
commons-beanutils.jar
commons-collections.jar
commons-logging.jar
ezmorph.jar
json-lib-2.2.2-jdk15.jar
2.JSONObject对象使用
JSON-lib包是一个beans,collections,maps,java arrays 和XML和JSON互相转换的包。在本例中,我们将使用JSONObject类创建JSONObject对象,然后我们打印这些对象的值。为了使用JSONObject对象,我们要引入"net.sf.json"包。为了给对象添加元素,我们要使用put()方法。
JSONObject和JSONArray的简单使用
一. jar包
- commons-lang.jar
- commons-beanutils.jar
- commons-collections.jar
- commons-logging.jar
- ezmorph.jar
- json-lib-2.2.2-jdk15.jar
二. 代码
package com.test; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class Test { public static void main(String[] args) { new Test().test1(); new Test().test2(); new Test().test3(); new Test().test4(); new Test().test5(); new Test().test6(); new Test().test7(); } /** * JSON字符串转JSONObject对象 */ public void test1() { String jsonStr = "{\"name\":\"ZhangSan\",\"sex\":\"boy\",\"age\":18}"; JSONObject jsonObj = JSONObject.fromObject(jsonStr); System.out.println(jsonObj.toString()); } /** * 简单JSONObject对象转java对象 */ public void test2() { JSONObject jsonObj = new JSONObject(); jsonObj.put("name", "LiSi"); jsonObj.put("sex", "girl"); jsonObj.put("age", 17); Student student = (Student) JSONObject.toBean(jsonObj, Student.class); System.out.println(student.getName() + " | " + student.getSex() + " | " + student.getAge()); } /** * 复杂JSONObject对象转java对象 */ @SuppressWarnings("rawtypes") public void test3() { List<Student> students = new ArrayList<Student>(); students.add(new Student("ZhangSan", "boy", 18)); students.add(new Student("LiSi", "girl", 17)); BanJi banji = new BanJi(); banji.setBanJiName("日语二班"); banji.setStudents(students); JSONObject jsonObj = JSONObject.fromObject(banji); Map<String, Class> classMap = new HashMap<String, Class>(); classMap.put("students", Student.class); BanJi banji2 = (BanJi) JSONObject.toBean(jsonObj, BanJi.class, classMap); System.out.println(banji2.getStudents().get(0).getName()); // 验证转换是否成功 } /** * 简单java集合对象转JSONArray */ public void test4() { List<Student> students = new ArrayList<Student>(); students.add(new Student("ZhangSan", "boy", 18)); students.add(new Student("LiSi", "girl", 17)); JSONArray jsonArray = JSONArray.fromObject(students); System.out.println(jsonArray.toString()); } /** * JSONArray转java集合对象 */ @SuppressWarnings({ "unchecked", "deprecation" }) public void test5() { JSONObject jsonObj1 = new JSONObject(); jsonObj1.put("name", "ZhangSan"); jsonObj1.put("sex", "boy"); jsonObj1.put("age", 18); JSONObject jsonObj2 = new JSONObject(); jsonObj2.put("name", "lisi"); jsonObj2.put("sex", "girl"); jsonObj2.put("age", 17); JSONArray jsonArray = new JSONArray(); jsonArray.add(0, jsonObj1); jsonArray.add(1, jsonObj2); List<Student> students3 = JSONArray.toList(jsonArray, Student.class); System.out.println(students3.get(0).getName()); System.out.println(students3.get(1).getName()); } /** * 复杂java集合对象转JSONArray */ @SuppressWarnings({ "rawtypes", "unchecked", "deprecation" }) public void test6() { BanJi banji1 = new BanJi(); banji1.setBanJiName("日语一班"); List<Student> students1 = new ArrayList<Student>(); students1.add(new Student("ZhangSan", "boy", 18)); banji1.setStudents(students1); BanJi banji2 = new BanJi(); banji2.setBanJiName("日语二班"); List<Student> students2 = new ArrayList<Student>(); students1.add(new Student("LiSi", "girl", 17)); banji2.setStudents(students2); List<BanJi> banjiList = new ArrayList<BanJi>(); banjiList.add(banji1); banjiList.add(banji2); JSONArray jsonArray = JSONArray.fromObject(banjiList); Map<String, Class> classMap = new HashMap<String, Class>(); classMap.put("students", Student.class); List<BanJi> banjiList2 = JSONArray.toList(jsonArray, BanJi.class, classMap); System.out.println(banjiList2.get(0).getStudents().get(0).getName()); } /** * 拆分JSONArray为JSONObject */ public void test7() { JSONObject jsonObj1 = new JSONObject(); jsonObj1.put("name", "ZhangSan"); jsonObj1.put("sex", "boy"); jsonObj1.put("age", 18); JSONObject jsonObj2 = new JSONObject(); jsonObj2.put("name", "lisi"); jsonObj2.put("sex", "girl"); jsonObj2.put("age", 17); JSONArray jsonArray = new JSONArray(); jsonArray.add(0, jsonObj1); jsonArray.add(1, jsonObj2); JSONObject object = (JSONObject) jsonArray.get(0); System.out.println(object.toString()); } }
package com.test; import java.util.List; /** * 班级类 */ public class BanJi { private String banJiName; // 班级名 private List<Student> students; // 学生 /** * 构造函数 */ public BanJi() { super(); } // getters/setters(略) }
package com.test; /** * 学生类 */ public class Student { private String name; // 姓名 private String sex; // 性别 private int age; // 年龄 /** * 构造函数 */ public Student() { super(); } /** * 构造函数 */ public Student(String name, String sex, int age) { super(); this.name = name; this.sex = sex; this.age = age; } // getters/setters(略) }
以上是关于jsonarray用需要啥jar包?的主要内容,如果未能解决你的问题,请参考以下文章
使用JSONArray.fromObject()方法和引入net.sf.json包所需要的jar包支持
json-lib中的JSONObject和JSONArray