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

java解析和拼接json对象

2016-12-15 21:58 393 查看
[java] view
plain copy

 print?

/** 

 * @author: helloworlda 

 * @time:2012-1-18  

 * @descript:java拼接和解析json对象    

 * @result:get没测试出来,不知道效率怎么样。 

 */  

package json;  

import java.util.ArrayList;  

import java.util.Iterator;  

import java.util.List;  

import net.sf.json.JSONArray;  

import net.sf.json.JSONObject;  

/** 

 * 

 */  

public class TestJson {  

 public static void main(String[] args) {  

  System.out.println("---------------------java拼接json对象----------------------");  

  TestJson ss=new TestJson();  

  ss.viewMagazine();  

  System.out.println("---------------------java解析json对象----------------------");    

  strJsonObj();  

 }  

 /** 

  * 拼json对象 

  */  

 public String viewMagazine(){  

    

  Person person=new Person();    

  person.setBirth("1989-22-11");  

  person.setGrade("07java");  

  person.setName("happ");  

  person.setSex("boy");  

    

  //推荐的杂志的结果集  

  Person person1=new Person();    

  person1.setBirth("1989-22-11");  

  person1.setGrade("07java");  

  person1.setName("helloworlda");  

  person1.setSex("girl");  

   

  List<Person> list=new ArrayList<Person>();  

  list.add(person);  

  list.add(person1);  

   

  JSONObject s=new JSONObject();  

  JSONArray ss=JSONArray.fromObject(list);//构建json数组  

  //往json对象中加值  

  s.put("person", person);//添加对象  

   

  s.put("personlist", list);//添加数组,list和ss都可以  

  //s.put("personss", ss);//添加数组,list和ss都可以  

  s.put("comCount", 3);  

  System.out.println(s);    

  return null;   

 }  

   

 /** 

  * java解析json对象,解析出对象和字符串及数组并遍历出相应的值 

  */  

   

 private static void strJsonObj(){  

  String json = "{'name': 'helloworlda','array':[{'a':'111','b':'222','c':'333'},{'a':'999'}],'address':'111','people':{'name':'happ','sex':'girl'}}";  

  JSONObject jsonobj=JSONObject.fromObject(json);//将字符串转化成json对象   

  String name=jsonobj.getString("name");//获取字符串。  

  JSONArray array=jsonobj.getJSONArray("array");//获取数组  

  JSONObject obj=jsonobj.getJSONObject("people");//获取对象  

    

  System.out.println("===============strJsonObj==================");  

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

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

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

    

  //遍历json对象  

   Iterator<?> objkey=obj.keys();    

  while (objkey.hasNext()) {// 遍历JSONObject     

        String aa2 = (String) objkey.next().toString();     

       String bb2 = obj.getString(aa2);           

       System.out.println(aa2+":"+bb2);  

  }     

  //遍历数组  

  for (int i = 0; i < array.size(); i++) {     

   System.out.println("item "+ i + " :" + array.getString(i));     

  }  

 }  

}  

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: