JSON的几种拼接方式
去年这个时间开始参加的培训班,至此已经走过了一年的时间,发篇博客来纪念一下逝去的一年,代码是你最好的朋友,给你感动,给你悲伤,让你愤怒,让你兴奋,让你进步,五味陈杂,胜似生活。犹记得培训班老师每次踩了坑之后都会说,生活嘛—–透露着沉稳和自信
这两天一直在敲关于JSON的代码,JSON有三种拼接方式,xml,json串,JSONObject和JSONArray,我对xml了解的不多,只存在浅层次的了解,但是通过这次学习,也算是对xml有了一些了解。来自于w3school.com.cn
···xml是一种可扩展标记语言 ···xml是一种标记语言,类似于HTML ···xml的设计宗旨是传输数据,而不是显示数据 ···xml应用于web的许多方面,常用于简化数据存储和共享
废话不多说,直接上代码
第二种方式是直接用json串进行拼接
{
"name":"中国",
"province":[{
"name":"河北",
"cities":{
"city":["保定","石家庄","衡水"]
}
},{
"name":"湖北",
"cities":{
"city":["武汉","荆门"]
}
},{
"name":"黑龙江",
"cities":{
"city":["哈尔滨","攀枝花"]
}
},{
"name":"广东",
"cities":{
"city ":["汕头","东莞","珠海"]
}
}]
}
第三种方式是直接用java代码
首先eclipse里面是没有json的jar包的,需要从网上下载
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import Util.JsonUtil;
public class JsonTest {
public static void main(String[] args) {
JsonUtil ju = new JsonUtil();
String s = ju.createJson();
if(s != null){
JSONObject json = JSONObject.fromObject(s);
System.out.println("班级" + json.getString("班级"));
System.out.println("班级人数" + json.getString("班级人数"));
JSONArray array = json.getJSONArray("学生");
for(int i = 0;i < array.size();i++){
JSONObject jo = array.getJSONObject(i);
System.out.println("学生姓名" + jo.getString("姓名"));
System.out.println("学生年龄" + jo.getString("年龄"));
}
}
}
}
---------------------------------------------------------------------
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
public class JsonUtil {
public String createJson(){
JSONObject obj1 = new JSONObject();
obj1.put("姓名", "张三");
obj1.put("年龄", "18");
JSONObject obj2 = new JSONObject();
obj2.put("姓名", "李四");
obj2.put("年龄", "19");
JSONObject obj3 = new JSONObject();
obj3.put("姓名", "王五");
obj3.put("年龄", "20");
JSONArray array = new JSONArray();
array.add(obj1);
array.add(obj2);
array.add(obj3);
JSONObject obj = new JSONObject();
obj.put("班级", "4134170801");
obj.put("班级人数", "27");
obj.put("学生", array);
System.out.println(obj.toString());
return obj.toString();
}
}
{"班级":"4134170801","班级人数":"27","学生":[{"姓名":"张三","年龄":"18"},{"姓名":"李四","年龄":"19"},{"姓名":"王五","年龄":"20"}]}
班级4134170801
班级人数27
学生姓名张三
学生年龄18
学生姓名李四
学生年龄19
学生姓名王五
学生年龄20
第二种方式
import net.sf.json.JSONObject;
import Util.Student;
public class JsonTest1 {
public static void main(String[] args) {
Student zhangsan = new Student("张三","18");
Student lisi = new Student("李四","19");
Student lixuuan = new Student("王五","20");
JSONArray array = new JSONArray();
array.add(zhangsan);
array.add(lisi);
array.add(lixuuan);
JSONObject obj = new JSONObject();
obj.put("学生",array);
System.out.println(obj.toString());
}
}
---------------------------------------------------------------------
public class Student {
private String name;
private String age;
public Student(String name,String age){
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
}
输出内容:
{"学生":[{"age":"18","name":"张三"},{"age":"19","name":"李四"},{"age":"20","name":"王五"}]}
本文是依据 http://blog.csdn.net/aiynmimi/article/details/47046631