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 ...
随机推荐
- 使用IAR在开发nordic问题记录
使用IAR在开发nordic的sdk的时候,官方有一段话*****Note for IAR 8 users:(Libraries for IAR 8 require wchar_t to be of ...
- POJ:2586-Y2K Accounting Bug
Y2K Accounting Bug Time Limit: 1000MS Memory Limit: 65536K Description Accounting for Computer Machi ...
- debian安装之后使用android手机上网
安装debian的过程中,没有连接网线.因为路由器在客厅,电脑在卧室,拖条长长的线很不方便. 断网安装完成之后,通过usb连上i9250. 在i9250上,执行以下操作: “设置”--->“更多 ...
- 【转】MySQL innodb_autoinc_lock_mode 详解 ,并发插入时主键冲突的解决方案
本文转载于 http://www.cnblogs.com/JiangLe/p/6362770.html innodb_autoinc_lock_mode这个参数控制着在向有auto_increment ...
- fzu1759 Super A^B mod C 扩展欧拉定理降幂
扩展欧拉定理: \[ a^x \equiv a^{x\mathrm{\ mod\ }\varphi(p) + x \geq \varphi(p) ? \varphi(p) : 0}(\mathrm{\ ...
- Selenium WebDriver- actionchians模拟鼠标悬停操作
#encoding=utf-8 import unittest import time from selenium import webdriver from selenium.webdriver i ...
- Python面试题(练习二)
1.用Python实现一个二分查找的函数. data = [1, 3, 6, 7, 9, 12, 14, 16, 17, 18, 20, 21, 22, 23, 30, 32, 33, 35] def ...
- Django多变关联、增加数据、删除数据
建立表之间的关联关系: models.py里面对表的字段及外键关系的设置如下: from django.db import models # Create your models here. #出版社 ...
- ubuntu检测到系统错误解决方法
解决方案: 1.打开终端,输入 sudo gedit /etc/default/apport 2.把里面的enabled=1改成enabled=0,保存
- golang语法要点笔记
golang学习笔记 读<go学习笔记第四版> <学习go语言> <gopl-zh><Go语言实战>记录 多变量赋值时,先计算所有相关值,然后再从左到右 ...