Java创建和解析Json数据方法(三)——json-lib包的使用
(三)json-lib包的使用
1.简介
- jakarta commons-lang 2.5 下载地址:http://commons.apache.org/proper/commons-lang/
- jakarta commons-beanutils 1.8.0 下载地址:http://commons.apache.org/proper/commons-beanutils/
- jakarta commons-collections 3.2.1 下载地址:http://commons.apache.org/proper/commons-collections/
- jakarta commons-logging 1.1.1 下载地址:http://commons.apache.org/proper/commons-logging/
- ezmorph 1.0.6 下载地址:http://sourceforge.net/projects/ezmorph/files/
2.构造JSONObject和JSONArray
package jsonlib;
public class Student {
private String name;
private String sex;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
package jsonlib;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import net.sf.json.*;
public class JsonlibTest {
public static void main(String[] args) {
//String构造JSONObject
String name = "{'name':'JTZen9'}";
JSONObject jsonObject3 = JSONObject.fromObject(name);
System.out.println(jsonObject3);
//Java Array构造JSONArray
String[] strings = {"1","2","3"};
JSONArray jsonArray1 = JSONArray.fromObject(strings);
System.out.println(jsonArray1);
//Beans构造JSONObject
Student student = new Student();
student.setAge(21);
student.setName("JTZen9");
student.setSex("male");
JSONObject jsonObject1 = JSONObject.fromObject(student);
System.out.println(jsonObject1);
//Map构造JSONObject
Map<string object=""> map = new HashMap<string object="">();
map.put("name", "JTZen9");
map.put("num", strings);
JSONObject jsonObject2 = JSONObject.fromObject(map);
System.out.println(jsonObject2);
//List构造JSONObject
List<object> list = new ArrayList</object><object>();
list.add("JTZen9");
list.add(strings);
list.add(map);
list.add(student);
JSONArray jsonArray2 = JSONArray.fromObject(list);
System.out.println(jsonArray2);
}
}
输出的结果:
2.2 其他方法
JSONObject类:
package jsonlib;
import java.util.HashMap;
import java.util.Map;
import net.sf.json.*;
public class JsonlibTest {
public static void main(String[] args) {
Map<string object=""> map = new HashMap<string object="">();
map.put("name", "JTZen9");
map.put("age", 21);
Student student = new Student();
student.setAge(21);
student.setName("JTZen9");
student.setSex("male");
JSONObject jsonObject = new JSONObject();
jsonObject.put("name", "JTZen9");
System.out.println(jsonObject);
jsonObject.put("student", student);
System.out.println(jsonObject);
JSONArray jsonArray = new JSONArray();
jsonArray.add("JTZen9");
jsonArray.add(map);
jsonArray.add(0,student); //在指定位置加入
System.out.println(jsonArray);
}
}
3.JSON数据解析
package jsonlib;
import net.sf.json.*;
public class JsonlibTest {
public static void main(String[] args) {
String jsonData = "{'name':'JTZen9','age':21}";
JSONObject jsonObject = JSONObject.fromObject(jsonData);
System.out.println(jsonObject);
String nameStr = jsonObject.getString("name");
System.out.println(nameStr);
int ageInt = jsonObject.optInt("age");
System.out.println(ageInt);
String sexStr1 = jsonObject.optString("sex");
System.out.println("optString('sex')输出的:" + sexStr1); //默认值为空
String sexStr2 = jsonObject.getString("sex");
System.out.println(sexStr2); //报错
}
}
Java创建和解析Json数据方法(三)——json-lib包的使用的更多相关文章
- Java创建和解析Json数据方法——org.json包的使用(转)
org.json包的使用 1.简介 工具包org.json.jar,是一个轻量级的,JAVA下的json构造和解析工具包,它还包含JSON与XML, HTTP headers, Cookies, ...
- Java学习-029-JSON 之三 -- 模仿 cssSelector 封装读取 JSON 数据方法
前文简单介绍了如何通过 json-20141113.jar 提供的功能获取 JSON 的数据,敬请参阅:Java学习-028-JSON 之二 -- 数据读取. 了解学习过 JQuery 的朋友都知道, ...
- JS解析json数据并将json字符串转化为数组的实现方法
json数据在ajax实现异步交互时起到了很重要的作用,他可以返回请求的数据,然后利用客户端的js进行解析,这一点体现出js的强大,本文介绍JS解析json数据并将json字符串转化为数组的实现方法, ...
- Jquery Ajax和getJSON获取后台普通Json数据和层级Json数据解析
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- JS:字符串转成json数据,和json转成字符串方法 iframe获取父级传过来的数据
字符串转成json数据,和json转成字符串方法 //转为JSON adinfo=JSON.parse(adinfo) //转为字符串 adinfo=JSON.stringify(adinfo) 大概 ...
- 如何构建JSON数据,JSON数据的格式,JSON数据的获取
假设你是用$.getJSON();方法获取JSON数据$.getJSON(url,{"Action":"getStudent"},function(data){ ...
- HttpServletResponse 返回的json数据不是json字符串,而是json对象
今天在改一个bug 情况: 在spring boot中写了一个类Result ,用来统一封装 各个API响应结果 , 其中重写了toString()方法来返回 json字符串 . 在正常情况下,从其它 ...
- Java创建和解析Json数据方法(四)——json-lib包的使用
(四)json-lib包的使用 既然json-lib包比org.json包重量级,那么json-lib包肯定有很多org.json包没有的类和方法,这篇笔记简单记录json-lib包中 ...
- Java创建和解析Json数据方法(二)——org.json包的使用
(二)org.json包的使用 1.简介 工具包org.json.jar,是一个轻量级的,JAVA下的json构造和解析工具包,它还包含JSON与XML, HTTP headers, Cookie ...
随机推荐
- Docker初认识(一)
1)简介 1.1)什么是Docker Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,它是基于 dotCloud 公司多年云服务技术的 ...
- linux学习-CentOS 7 环境下大量建置账号的方法
一些账号相关的检查工具 pwck pwck 这个指令在检查 /etc/passwd 这个账号配置文件内的信息,与实际的家目录是否存在等信息, 还可以比对 /etc/passwd /etc/shadow ...
- java append方法
JAVA 中 Stringbuffer 有append()方法 Stringbuffer其实是动态字符串数组 append()是往动态字符串数组添加,跟“xxxx”+“yyyy”相当那个‘+’号 ...
- Scala学习-01-变量与类型
Scala运行在jvm之上,可以调用Java类库和与Java框架交互,并将面向对象与面向函数结合在一起. 特点: 1 保留了静态类型检查.安全保障高. 2 函数式编程,更加灵活. 3 运行于jvm之上 ...
- Python 调用multiprocessing模块下面的Process类方法(实现服务器、客户端并发)-UDP协议
#基于UDP协议的multiprocessing自定义通信 服务端: from multiprocessing import Process import socket def task(server ...
- sqlserver的left join优化
MS sqlserver 对4张表进行left join join字段是varchar类型长度20,也都建了索引,但是光查一个count(Id) 耗时就超过了8秒,数据量只有100多万条,该怎么优化呢 ...
- DS博客作业05—树
1.本周学习总结 1.1思维导图 1.2学习体会 本周学习了树的相关知识,了解了树结构体的应用和基本操作 学习了二叉树的遍历,创建以及哈夫曼树的相关操作 通过树的构建等操作熟练了递归的使用 2.PTA ...
- 【Luogu】P3047附近的牛(树形DP)
题目链接 树形DP,设f[i][j]是当前在i点,j步之内有多少牛.从相邻点to的f[to][j-1]转移而来,减去重复计算即可. #include<cstdio> #include< ...
- Github管理 第一步:在Eclipse中导入既存Github Java Project
1.前提 从官网下载的最新版本的Eclipse已经集成了Github插件,所以忽略了配置说明. 如果在下面的步骤中你找不到Git的设定目录,可能你的Eclipse中还没有Github,请自行解决. 2 ...
- 线程与threading模块
线程 进程内一个相对独立的.可调度的执行单元,是系统独立调度和分派CPU的基本单位.在单个进程中同时运行多个线程完成不同的工作,称为多线程. 同一进程内的多个线程是共享该进程的资源. 创建新的线程开销 ...