Java对JSON的简单操作

JSONArray和JSONObject

基本用法

package com.cloud.test;

import net.sf.json.JSONArray;

import net.sf.json.JSONObject;

public class Demo1 {

   //创建JSONObject对象

   public static JSONObject createJSONObject(){

      JSONObject jsonObject = new JSONObject();

      jsonObject.put("username", "Spring");

      jsonObject.put("sex", "");

      jsonObject.put("QQ", "123456");

      return jsonObject;

   }

   @SuppressWarnings("static-access")

   public static void main(String[] args) throws Exception {

      //创建一个JSONObject对象

      JSONObject jsonObject = Demo1.createJSONObject();

      //输出jsonObject{"sex":"","username":"Spring","QQ":"123456"}

      System.out.println(jsonObject);

      //判断jsonObject的对象类

      System.out.println("数组?"+jsonObject.isArray()+";为空?"+

                    jsonObject.isEmpty()+";isNullObject?"+

                    jsonObject.isNullObject()+";");

      //追加元素属性

      jsonObject.put("address", "安徽合肥");

      System.out.println(jsonObject);

     

      // 返回一个JSONArray对象

        JSONArray jsonArray = new JSONArray();

        jsonArray.add(0, "Value0");

        jsonArray.add(1, "Value1");

        jsonObject.element("jsonArray", jsonArray);

       

        //jsonObject后面住家一个jsonArray

        JSONArray array = jsonObject.getJSONArray("jsonArray");

        System.out.println(jsonObject);

        System.out.println("返回一个JSONArray对象:" + array);

       

        //根据key返回字符串

        String username = jsonObject.getString("username");

        System.out.println("username:"+username);

       

        //字符串转换为jsonObject

        String temp = jsonObject.toString();

        System.out.println(temp);

        JSONObject object = jsonObject.fromObject(temp);

        System.out.println("QQ:"+object.get("QQ"));

   }

}

案例

package com.cloud.test;

import net.sf.json.JSONArray;

import net.sf.json.JSONObject;

public class Demo2 {

   public static void main(String[] args) {

      JSONObject jsonObject0 = new JSONObject();

      JSONObject jsonObject1 = new JSONObject();

      JSONObject jsonObject2 = new JSONObject();

      JSONObject jsonObject3 = new JSONObject();

      JSONArray jsonArray = new JSONArray();

     

      //jsonObject0

      jsonObject0.put("name0", "Spring");

      jsonObject0.put("sex0", "man");

      System.out.println("jsonObject0:"+jsonObject0);

     

      //jsonObject1

      jsonObject1.put("name1", "summer");

      jsonObject1.put("sex1", "woman");

      System.out.println("jsonObject1"+jsonObject1);

     

      //jsonObject2

      jsonObject2.put("item0", jsonObject0);

      jsonObject2.put("item1", jsonObject1);

      System.out.println("jsonObject2"+jsonObject2);

     

      //jsonObject3

      jsonObject3.put("jo31", jsonObject2);

      jsonObject3.put("jo32", jsonObject3);

      System.out.println("jsonObject3"+jsonObject3);

     

      //JSONArray中添加JSONObject对象。发现JSONArrayJSONObject的区别就是JSONArrayJSONObject多中括号[]

      jsonArray.add(jsonObject1);

      System.out.println(jsonArray);

     

      JSONObject jsonObject4 = new JSONObject();

      jsonObject4.element("weater", jsonArray);

      System.out.println("jsonObject4:"+jsonObject4);

   }

}

FromObject和toBean

fromObject

package com.cloud.test;

import java.util.HashMap;

import java.util.Map;

import net.sf.json.JSONObject;

public class fo {

   @SuppressWarnings("rawtypes")

   public static void main(String[] args) {

      Map map = new HashMap();

      map.put("spring", "spring1");

      map.put("summer", "summer1");

      map.put("autumn", "autumn1");

      JSONObject json = JSONObject.fromObject(map);

      //{"autumn":"autumn1","summer":"summer1","spring":"spring1"}

      System.out.println(json);

   }

}

toBean

student.java实体类

package com.cloud.test;

public class Student{

   private int id;

   private String name;

   private int age;

   public int getId() {

      return id;

   }

   public void setId(int id) {

      this.id = id;

   }

   public String getName() {

      return name;

   }

   public void setName(String name) {

      this.name = name;

   }

   public int getAge() {

      return age;

   }

   public void setAge(int age) {

      this.age = age;

   }

   public String toString(){

      return this.id+";"+this.name+";"+this.age;

   }

}

tb.java

package com.cloud.test;

import net.sf.json.JSONObject;

public class tb {

   public static void main(String[] args) {

      String json = "{id:'101',name:'你好',age:'22'}";

      Student stu = new Student();

      JSONObject jsonObject = JSONObject.fromObject(json);

      stu = (Student) JSONObject.toBean(jsonObject, Student.class);

      //101;你好;22

      System.out.println(stu);

     

      String json1 = "{id:'101',name:'张三'}";

        Student stu1 = new Student();

        JSONObject obj = JSONObject.fromObject(json1);

        System.out.println("obj:"+obj);

        stu1 = (Student)JSONObject.toBean(obj, Student.class);

        //101;张三;0

        System.out.println(stu1);

       

        String json2 = "{id:'101',age:'22'}";

        Student stu2 = new Student();

        JSONObject obj1 = JSONObject.fromObject(json2);

        stu2 = (Student)JSONObject.toBean(obj1, Student.class);

        //101;null;22

        System.out.println(stu2);

       

        String json3 = "{id:'101',name:'张三',age:'nn'}";

        Student stu3 = new Student();

        JSONObject obj2 = JSONObject.fromObject(json3);

        stu3 = (Student)JSONObject.toBean(obj2, Student.class);

        //101;张三;0

        System.out.println(stu3);

       

        String json4 = "{id:'101',name:'张三',age:'22',sex:''}";

        Student stu4 = new Student();

        JSONObject obj3 = JSONObject.fromObject(json4);

        stu4 = (Student)JSONObject.toBean(obj3, Student.class);

        //101;张三;22

        System.out.println(stu4);

   }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值