json-lib --->入门



JSONObject 这个对象可以看作是一个Map

两个构造方法:

JSONObject jo = new JSONObject();

JSONObject jo = JSONObject.fromObject(这里需要一个map对象或javabean对象);

转化成json串: String json = jo.toString();



JSONArray 这个对象可以看做是一个List

两个构造方法:

JSONArray ja = JSONArray.fromObject();

JSONArray ja = JSONArray.fromObject(这里需要一个collection集合对象);

转化成json串: String json = ja.toString();



案例分析:

--->实体类 Person.java

要求:①必须public修饰②有getter和setter方法

 1 package json;
 2
 3 public class Person {
 4     private String name;
 5     private int age;
 6     private String sex;
 7
 8     public String getName() {
 9         return name;
10     }
11     public void setName(String name) {
12         this.name = name;
13     }
14     public int getAge() {
15         return age;
16     }
17     public void setAge(int age) {
18         this.age = age;
19     }
20     public String getSex() {
21         return sex;
22     }
23     public void setSex(String sex) {
24         this.sex = sex;
25     }
26     public Person() {}
27     public Person(String name, int age, String sex) {
28         super();
29         this.name = name;
30         this.age = age;
31         this.sex = sex;
32     }
33
34 }


--->测试类 TestJson.java

 1 package json;
 2
 3 import java.util.ArrayList;
 4 import java.util.HashMap;
 5 import java.util.List;
 6 import java.util.Map;
 7
 8 import net.sf.json.JSONArray;
 9 import net.sf.json.JSONObject;
10
11 import org.junit.Test;
12
13 public class TestJson {
14
15     @Test
16     public void fun(){
17         JSONObject jo = new JSONObject();//创建map对象
18         jo.put("name", "张三");
19         jo.put("age", 23);
20         jo.put("sex", "male");
21         String json = jo.toString();
22         //{"name":"张三","age":23,"sex":"male"}
23         System.out.println(json);
24     }
25     @Test
26     public void fun1(){
27         Person p1 = new Person("李四",24,"male");
28         Person p2 = new Person("王五",25,"female");
29         Map<String,Person> map = new HashMap<String,Person>();
30         map.put("1", p1);
31         map.put("2", p2);
32
33         JSONObject mapJson = JSONObject.fromObject(map);//创建mapJson
34
35 //{"2":{"age":25,"name":"王五","sex":"female"},"1":{"age":24,"name":"李四","sex":"male"}}
36         System.out.println(mapJson.toString());
37
38
39         Person person = new Person("LiSi", 18, "female");
40         JSONObject beanJson = JSONObject.fromObject(person);//创建beanJson
41
42         //{"age":18,"name":"LiSi","sex":"female"}
43         System.out.println(beanJson.toString());
44
45     }
46
47     @Test
48     public void fun2(){
49         Person p1 = new Person("李四",24,"male");
50         Person p2 = new Person("王五",25,"female");
51         List<Person> list  = new ArrayList<Person>();
52         list.add(p1);
53         list.add(p2);
54         JSONArray ja = JSONArray.fromObject(list);//从list中创建对象
55         String json = ja.toString();
56 //[{"age":24,"name":"李四","sex":"male"},{"age":25,"name":"王五","sex":"female"}]
57         System.out.println(json);
58
59         JSONArray jsonList = new JSONArray();
60         jsonList.add(p1);
61         jsonList.add(p2);
62 //[{"age":24,"name":"李四","sex":"male"},{"age":25,"name":"王五","sex":"female"}]
63         System.out.println(jsonList.toString());
64     }
65
66 }
时间: 2024-10-24 00:58:10

json-lib --->入门的相关文章

npm 与 package.json 快速入门教程

npm 与 package.json 快速入门教程 2017年08月02日 19:16:20 阅读数:33887 npm 是前端开发广泛使用的包管理工具,之前使用 Weex 时看了阮一峰前辈的文章了解了一些,这次结合官方文章总结一下,加深下理解吧! 读完本文你将了解: 什么是 npm? 安装 npm 更新 npm package.json 文件 package.json 如何创建 package.json 的内容 指定依赖的包 Semantic versioning(语义化版本规则) 安装 pa

JSON初入门

JSON:Javascript Object Notation 轻量级的数据交换格式 语法规则:(js对象表示语法的子集) 1.数据在名称/值对中 2.数据由逗号分隔 3.花括号{}保存对象 4.中括号[]保存对象 JSON名称/值 数据书写格式:名称/值 包括字段名称(双引号""),中间:隔开 "firstName":"John"     易理解,相当于js中  firstName="John" JSON值 数字(整数/浮点

JSON快速入门

http://www.json.org/ documnt:http://stleary.github.io/JSON-java/index.html JSON快速入门(Java版)http://www.imooc.com/learn/523 转自:阮一峰大神的 <数据类型和Json格式>http://www.ruanyifeng.com/blog/2009/05/data_types_and_json.html 作者: 阮一峰 日期: 2009年5月30日 1. 前几天,我才知道有一种简化的数

JSON lib 里JsonConfig详解

一,setCycleDetectionStrategy 防止自包含 /** * 这里测试如果含有自包含的时候需要CycleDetectionStrategy */ public static void testCycleObject() { CycleObject object = new CycleObject(); object.setMemberId("yajuntest"); object.setSex("male"); JsonConfig jsonCon

json lib 2.4及其依赖包下载

下载文件地址:https://files.cnblogs.com/files/xiandedanteng/json-lib-2.4%26dependencies_jars.rar 它包括 commons-beanutils-1.9.3.jar commons-collections-3.2.jar commons-lang-2.3.jar commons-logging-1.2.jar ezmorph-1.0.6.jar json-lib-2.4-jdk15.jar 这些库可以满足转化Java对

kbmmw 中JSON 操作入门

现在各种系统中JSON 用的越来越多.delphi 也自身支持JSON 处理. 今天简要说一下kbmmw 内部如何使用和操作JSON. kbmmw 中json的操作是以TkbmMWJSONStreamer 为基础,要导入.导出JSON字符串, 首先要创建TkbmMWJSONStreamer. 然后是 TkbmMWJSONObject和 TkbmMWJSONArray. 先举一个最简单的例子. procedure TForm1.Button3Click(Sender: TObject); var

Json.NET 入门

Json.NET是 Json的.net框架实现,有了它我们可以在.NET程序中方便的使用 Json,例如:解析 Json 字符串的键值.生成 Json 字符串.与对象之间进行转换等等.而且是开源的,非常方便我们学习和使用. Json.NET的网址:https://www.newtonsoft.com/json 下面介绍一些基本的使用方法 使用下面代码前,需先添加引用 using Newtonsoft.Json; using Newtonsoft.Json.Linq; 1. 读取 Json 字符串

还在用Json完成Ajax,改用Beetl吧(上)

浏览器通过AJAX,服务器返回json数据,无刷新的更新视图的这种模式在WEB开发中我已经用了很长时间了,记得最早是08年的时候用的,当时传递JSON数据让我眼前一亮.这种方式是只需要采用工具包将模型序列化成json格式就行,js UI库总能识别这种格式,轻易的生成新的视图片段. 然而时过境迁.这种传递AJAX JSON方式渐渐有了新的问题. JSON序列化库无法完美的序列化模型对象.序列化库总期望输入一个Object,但实际上前端有可能需要多个Object,这样,你不得不再创建一个序列化专用的

json库的编译方法和vs2010中导入第三方库的方法

一.去相应官网下载json.cpp文件 Jsoncpp下载:https://sourceforge.net/projects/jsoncpp/    版本为v0.5.0 最新版本在:https://github.com/open-source-parsers/jsoncpp 二.编译链接成库文件 1)解压下载的json包,得到jsoncpp-src-0.5.0文件,打开jsoncpp-src-0.5.0\makefiles\vs71\jsoncpp.sln 2)转换项目为vs2010格式,并将模

Struts2 ajax json小例子

1:首先要解决jar包的问题,我最近一直用maven搭建项目,所以把pom.xml复制到这. 要有struts2的核心包,struts2和Json整合的包,以及json lib.刚才转载了一篇解决json lib老是报错的博客,问题完美解决. <dependencies> <dependency> <groupId>org.apache.struts</groupId> <artifactId>struts2-json-plugin</ar