javabean:Address
- package com.baebae.model;
- public class Address
- {
- private String city;
- private String district;
- private String street;
- private int no;
- getter/setter()...
- }
JAVA--JSON互相转换:
【1】JAVA——>JSON
- /**
- * <1> JAVA-->JSON
- * 单个对象Object-->JSONObject
- * 集合List/Array/Set----->JSONArray
- */
- @Test
- public void testObj2JSON() throws InterruptedException {
- // 1.bean---->json
- Address addr = new Address();
- addr.setCity("北京");
- addr.setDistrict("清河");
- addr.setStreet("安宁庄东路");
- addr.setNo(200);
- JSONObject jsonObj = JSONObject.fromObject(addr);
- System.err.println("____________jsonObj_______________");
- System.out.println(jsonObj);
- // 1.集合-->JSONArray
- Set<Address> set = new HashSet<Address>();
- Address[] addrArray = new Address[100];
- List<Address> list = new ArrayList<Address>();
- for(int i=0;i<10;i++){
- Address address = new Address();
- address.setCity("北京");
- address.setDistrict("清河");
- address.setStreet("安宁庄东路"+i+"号");
- address.setNo(200+i);
- list.add(address);
- addrArray[i]=address;
- set.add(address);
- }
- // 这里不能用JSONObject.fromObject(collection)
- JSONArray jsonList = JSONArray.fromObject(list);
- JSONArray jsonArray = JSONArray.fromObject(addrArray);
- JSONArray jsonSet = JSONArray.fromObject(set);
- // 打印结果
- Thread.sleep(3000);
- System.err.println("____________jsonList_______________");
- System.out.println(jsonList);
- Thread.sleep(3000);
- System.err.println("_____________jsonArray______________");
- System.out.println(jsonArray);
- Thread.sleep(3000);
- System.err.println("______________jsonSet_____________");
- System.out.println(jsonSet);
- Thread.sleep(3000);
- }
打印结果:
- ____________jsonObj_______________
- {"city":"北京","district":"清河","no":200,"street":"安宁庄东路"}
- ____________jsonList_______________
- [{"city":"北京","district":"清河","no":200,"street":"安宁庄东路0号"},{"city":"北京","district":"清河","no":201,"street":"安宁庄东路1号"},{"city":"北京","district":"清河","no":202,"street":"安宁庄东路2号"},{"city":"北京","district":"清河","no":203,"street":"安宁庄东路3号"},{"city":"北京","district":"清河","no":204,"street":"安宁庄东路4号"},{"city":"北京","district":"清河","no":205,"street":"安宁庄东路5号"},{"city":"北京","district":"清河","no":206,"street":"安宁庄东路6号"},{"city":"北京","district":"清河","no":207,"street":"安宁庄东路7号"},{"city":"北京","district":"清河","no":208,"street":"安宁庄东路8号"},{"city":"北京","district":"清河","no":209,"street":"安宁庄东路9号"}]
- _____________jsonArray______________
- [{"city":"北京","district":"清河","no":200,"street":"安宁庄东路0号"},{"city":"北京","district":"清河","no":201,"street":"安宁庄东路1号"},{"city":"北京","district":"清河","no":202,"street":"安宁庄东路2号"},{"city":"北京","district":"清河","no":203,"street":"安宁庄东路3号"},{"city":"北京","district":"清河","no":204,"street":"安宁庄东路4号"},{"city":"北京","district":"清河","no":205,"street":"安宁庄东路5号"},{"city":"北京","district":"清河","no":206,"street":"安宁庄东路6号"},{"city":"北京","district":"清河","no":207,"street":"安宁庄东路7号"},{"city":"北京","district":"清河","no":208,"street":"安宁庄东路8号"},{"city":"北京","district":"清河","no":209,"street":"安宁庄东路9号"},null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null]
- ______________jsonSet_____________
- [{"city":"北京","district":"清河","no":207,"street":"安宁庄东路7号"},{"city":"北京","district":"清河","no":202,"street":"安宁庄东路2号"},{"city":"北京","district":"清河","no":200,"street":"安宁庄东路0号"},{"city":"北京","district":"清河","no":204,"street":"安宁庄东路4号"},{"city":"北京","district":"清河","no":205,"street":"安宁庄东路5号"},{"city":"北京","district":"清河","no":208,"street":"安宁庄东路8号"},{"city":"北京","district":"清河","no":209,"street":"安宁庄东路9号"},{"city":"北京","district":"清河","no":203,"street":"安宁庄东路3号"},{"city":"北京","district":"清河","no":206,"street":"安宁庄东路6号"},{"city":"北京","district":"清河","no":201,"street":"安宁庄东路1号"}]
--------------------------------------------------------------------------------
【2】JSON---->JAVA
- /**
- * <2> JSON-->JAVA
- * 1.如果字段名有错无法匹配,会发出警告;属性得到是null.
- * 2.转换:
- * ->Object
- * <1> 字符串封装成JSON 对象:【JSONObject.fromObject(jsonStr)】
- * <2> JSON对象转换成Object:【(Address) JSONObject.toBean(jsonObject, Address.class)】
- * ->Collection
- * <1> 字符串封装成JSONArray 对象:【JSONArray.fromObject(jsonArrayStr)】
- * <2> JSONArray对象转换成Java集合:【(List<Address>)JSONArray.toCollection(jsonArray, Address.class)】
- */
- @Test
- public void testJson2Java() throws InterruptedException {
- // 1.JSON object
- String jsonStr = "{\"city\":\"北京\",\"district\":\"清河\",\"street\":\"安宁庄东路南口\",\"no\":500}";
- // 3.JSONArray
- String jsonArrayStr = "[{\"city\":\"北京\",\"district\":\"清河\",\"street\":\"安宁庄东路南口\",\"no\":500},{\"city\":\"北京\",\"district\":\"上地\",\"street\":\"安宁庄东路\",\"no\":300}]";
- JSONObject jsonObject = JSONObject.fromObject(jsonStr);
- JSONArray jsonArray = JSONArray.fromObject(jsonArrayStr);
- // JSONObject.toBean(jasonObject,Class): Bean;
- Address address = (Address) JSONObject.toBean(jsonObject, Address.class);
- List<Address> list = (List<Address>)JSONArray.toCollection(jsonArray, Address.class);
- // 1.输出Object
- Thread.sleep(1000);
- System.out.println("District:"+address.getDistrict());
- // 2.输出Array
- Thread.sleep(1000);
- for(Address addr:list){
- System.out.println(addr.getCity()+"\t"+addr.getDistrict()+"\t"+addr.getStreet()+"\t"+addr.getNo());
- }
- }
打印结果:
- District:清河
- 北京 清河 安宁庄东路南口 500
- 北京 上地 安宁庄东路 300
【总结】:
JSON————>JAVA:
->Object
<1> 字符串封装成JSON 对象:【JSONObject.fromObject(jsonStr)】
<2> JSON对象转换成Object:【(Address) JSONObject.toBean(jsonObject, Address.class)】
->Collection
<1> 字符串封装成JSONArray 对象:【JSONArray.fromObject(jsonArrayStr)】
<2> JSONArray对象转换成Java集合:【(List<Address>)JSONArray.toCollection(jsonArray, Address.class)】
JAVA————>JSON:
Object:【JSONObject.fromObject(addr)】
Collection:【JSONArray.fromObject(list)】
参考资料:
1.官方网站:http://sourceforge.net/projects/json-lib
2.所需jar包:
- commons-beanutils-1.8.3.jar
- commons-collections-3.2.1.jar
- commons-lang-2.5.jar
- commons-logging-1.1.1.jar
- ezmorph-1.0.6.jar
- json-lib-2.4-jdk15.jar
相关推荐
json paser 属于idea插件 用于解析json json paser 属于idea插件 用于解析json json paser 属于idea插件 用于解析json json paser 属于idea插件 用于解析json json paser 属于idea插件 用于解析json json paser 属于...
在Linux环境中,处理JSON数据是常见的任务,尤其是在服务器管理和自动化脚本中。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。本文将深入探讨如何...
最好用的c++json库 nlohmann json源代码最好用的c++json库 nlohmann json源代码最好用的c++json库 nlohmann json源代码最好用的c++json库 nlohmann json源代码最好用的c++json库 nlohmann json源代码最好用的c++json...
标题“JSON_Trans.rar_LABVIEW转换JSON_json Labview_labivew json_labview j”表明这是一个关于如何在LabVIEW中实现JSON转换的实践教程或示例。 描述中提到,“LabVIEW建立JSON通讯示例,通过建立簇,将数据转换成...
json11::Json jsonObject = json11::Json::parse(jsonString); if (jsonObject.is_object()) { // 处理解析成功的对象 } else { // 处理解析错误 } ``` 一旦你有了JSON对象,可以访问其成员或进行修改。例如,...
json3.js 【JS / JavaScript 中解析JSON的js包,JSON官方的JSON解析包】。JavaScript中解析JSON的js包,页面中引入json3.js,即可使用。 使用方法:JSON.parse(str), JSON.stringify(obj) 更多详情请参考博文: ...
Java JSON API是Java平台上的库,提供了处理JSON的能力,包括解析JSON字符串、生成JSON对象以及进行JSON与Java对象之间的转换。 在Java中,有多种实现JSON API的库,如Jackson、Gson、org.json和json-lib等。本篇...
而JSON Schema则是一个JSON格式的规范,用于定义JSON数据的结构和限制,类似于XML Schema,它为JSON数据提供了验证规则,确保数据的准确性和一致性。 在JavaScript开发中,有时我们需要将JSON对象转换为JSON Schema...
在这个例子中,我们首先使用`json_tokener_parse`解析JSON字符串,然后通过`json_object_get_string`和`json_object_get_int`获取JSON对象中的数据,最后使用`json_object_put`释放内存。这就是`json-c`库基本的使用...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web服务和应用程序之间的数据传输。它易于人阅读和编写,同时也易于机器解析和生成。`net.sf.json`是开源项目Apache软件基金会下的一个...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web应用程序之间传输数据。它以文本形式存储和传递数据,易于人阅读和编写,同时也易于机器解析和生成。`net.sf.json`是开源Java库,它...
jsonview是chrome浏览器的一个插件,用来在浏览器中查看json数据。比如你在浏览器中可以查看从服务器端传回来的json数据,这些数据可能没有经过格式化的,也或者是经过了unicode编码,没有缩进,没有换行等等,造成...
C# json格式转换,Json格式字符串与C#对象相互转换,类库和测试demo 写了一个json与C#对象相互装换的类库,直接调用就行,有测试案例,代码注释非常详细 部分方法: /// 将Json字符串解析为C#中的对象 /// Json格式...
可能包含的方法有`toJson()`(将Java对象转换为JSON字符串)、`fromJson()`(将JSON字符串解析为Java对象)、`convertToMap()`(将JSON字符串转换为Map)以及`convertToList()`(将JSON字符串转换为List)等。...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在PHP中,JSON常用于与前端交互,传输数据。PHP 4.0版本虽然相对较旧,但仍然可以处理JSON数据,只是...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛应用于Web服务与客户端之间的数据传输。它易于人阅读和编写,同时也易于机器解析和生成。JSON文件通常以.js或.json为扩展名,其数据结构主要...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它采用完全独立于语言的文本格式,但也使用了类似于C家族语言(包括C、C++、C#、Java、JavaScript、Perl、Python等)的习惯,这使得JSON对于程序员...
这篇关于“经典ASP读取JSON字符串/生成JSON对象,数组对象等”的知识将详细介绍如何在ASP环境中处理JSON数据。 1. **JSON对象与数组的结构**: JSON对象以大括号{}表示,键值对之间用逗号分隔。键必须是字符串,用...
**JsonSQL: SQL语句解析JSON文件** 在大数据处理和Web应用中,JSON(JavaScript Object Notation)格式已经成为数据交换的常见格式。然而,对于习惯使用SQL查询关系型数据库的人来说,处理JSON数据可能会觉得不太...
标题中的“PB解析json,解析JSON案例,解析jsondemo”表明了本文主要关注的是PowerBuilder(简称PB)如何处理JSON数据。在现代软件开发中,JSON(JavaScript Object Notation)是一种广泛使用的轻量级数据交换格式,...