您的位置:首页 > 编程语言 > Java开发

[JAVA][JSON]初步学习JSON<一>

2017-09-05 17:03 429 查看
最近开始学习json,下面我们先简单的了解一下json

1.JSON是什么

在网上查资料可以得之,json的全称是avaScript Object Notation,是一种轻量级数据交换格式。

2.为什么使用JSON

JSON结构简单,易于读写,方便生成和解析

3.JSON的结构

1.键值对的集合:

例1 {“key1”:”value1”,”key2”:0,”key3”:true}

例2 {“key1”:”value1”,”key2”:0,”key3”:[“key4”:{“key5”:”value5”}]}

2.有序的List:

例1 [“value1”,”value2”,”true”,”0”,{“key1”:”value1”,”key2”:0,”key3”:true}]

4.如何使用JSON

首先项目需要导入这些jar包:

commons-lang.jar

commons-beanutils.jar

commons-collections.jar

commons-logging.jar

ezmorph.jar

json-lib-2.2.2-jdk15.jar

然后学会使用JSONObject和JSONArray

下面是随便练习的简单例子

package jsontest;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

public class Jsontest {

public static void main(String[] args) {
/*
* 解析jsonArray并输出第一个元素
*/
String [] str ={"v1","v2","true","0"};
JSONArray jsonArray=JSONArray.fromObject(str);
String a = jsonArray.getString(0);
System.err.println(jsonArray);
System.out.println(a);
/**
* 对象数组
*/
Object [] object ={"d1","d2",true,0};
JSONArray jsonArray2=JSONArray.fromObject(object);
String b=jsonArray2.getString(3);
System.err.println(jsonArray2);
System.out.println(b);
/*
* 集合类
*/
List<String> stringList= new ArrayList<String>();
stringList.add("j1");
stringList.add("j2");
stringList.add("2");
stringList.add("true");
JSONArray jsonArray3=JSONArray.fromObject(stringList);
String c =jsonArray3.getString(3);
System.err.println(jsonArray3);
System.out.println(c);
/*
* set集
*/
Set<Object> set=new HashSet<Object>();//可以看出 Hashset是无序的
set.add("s1");
set.add("s2");
set.add(false);
set.add(0);
set.add("2");
JSONArray jsonArray4=JSONArray.fromObject(set);
String d =jsonArray4.getString(1);
System.err.println(jsonArray4);
System.out.println(d);
/*
* 综上Array解析成json串,并且用jsonArray可以解析array类型的json串
*/
/*
* 将javabean、map解析成json,用jsonObject解析
*/
Map<String, Object> map=new HashMap<String, Object>();
map.put("key1", "val1");
map.put("key2", "val2");
map.put("key3", true);
map.put("key4", "val4");
JSONObject jsonObject=JSONObject.fromObject(map);
String e=jsonObject.getString("key2");
System.err.println(jsonObject);
System.out.println(e);
/*
* javabean
*/
Book book=new Book("斗破苍穹", "1", "天蚕土豆");
Book book2=new Book("星辰变", "2", "我吃西红柿");
Book book3=new Book("斗罗大陆", "3", "唐家三少");
Book book4=new Book("天传", "4", "风的笔记");
List<Book> bookList=new ArrayList<>();
bookList.add(book);
bookList.add(book2);
bookList.add(book3);
bookList.add(book4);
JSONObject jsonObject2=JSONObject.fromObject(book);
String f = jsonObject2.getString("name");
System.out.println(f);
JSONArray jsonObject3=JSONArray.fromObject(bookList);
String nameb=jsonObject3.getString(3);
System.out.println(nameb);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: