一 Json 

  xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <Button android:id="@+id/person" android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:text="解析Person数据" />
    <Button android:id="@+id/persons" android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:text="解析List嵌套Person数据" />
    <Button android:id="@+id/liststring" android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:text="解析List嵌套String数据" />
    <Button android:id="@+id/listmap" android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:text="解析ListMap数据" />
</LinearLayout>

 java 

  Main.java

 

package com.android.myjson;

import java.util.List;
import java.util.Map;

import com.android.myjson.domain.Person;
import com.android.myjson.http.HttpUtils;
import com.android.myjson.json.JsonTools;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class Main extends Activity implements OnClickListener {
    /** Called when the activity is first created. */
    private Button person, persons, liststring, listmap;
    private static final String TAG = "Main";

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        person = (Button) this.findViewById(R.id.person);
        persons = (Button) this.findViewById(R.id.persons);
        liststring = (Button) this.findViewById(R.id.liststring);
        listmap = (Button) this.findViewById(R.id.listmap);
        person.setOnClickListener(this);
        persons.setOnClickListener(this);
        liststring.setOnClickListener(this);
        listmap.setOnClickListener(this);

    }

    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        switch (v.getId()) {
        case R.id.person:
            String path = "http://192.168.11.249:8080/jsonProject/servlet/JsonAction?action_flag=person";
            String jsonString = HttpUtils.getJsonContent(path);
            Person person = JsonTools.getPerson("person", jsonString);
            Log.i(TAG, person.toString());
            break;
        case R.id.persons:
            String path2 = "http://192.168.11.249:8080/jsonProject/servlet/JsonAction?action_flag=persons";
            String jsonString2 = HttpUtils.getJsonContent(path2);
            List<Person> list2 = JsonTools.getPersons("persons", jsonString2);
            Log.i(TAG, list2.toString());
            break;
        case R.id.liststring:
            String path3 = "http://192.168.11.249:8080/jsonProject/servlet/JsonAction?action_flag=liststring";
            String jsonString3 = HttpUtils.getJsonContent(path3);
            List<String> list3 = JsonTools.getList("liststring", jsonString3);
            Log.i(TAG, list3.toString());
            break;
        case R.id.listmap:
            String path4 = "http://192.168.11.249:8080/jsonProject/servlet/JsonAction?action_flag=listmap";
            String jsonString4 = HttpUtils.getJsonContent(path4);
            List<Map<String, Object>> list4 = JsonTools.listKeyMaps("listmap",
                    jsonString4);
            Log.i(TAG, list4.toString());
            break;
        }
    }
}

  Person.java

 1 package com.android.myjson.domain;
 2 
 3 public class Person {
 4 
 5     private int id;
 6     private String name;
 7 
 8     public Person(int id, String name, String address) {
 9         super();
10         this.id = id;
11         this.name = name;
12         this.address = address;
13     }
14 
15     private String address;
16 
17     public int getId() {
18         return id;
19     }
20 
21     @Override
22     public String toString() {
23         return "Person [address=" + address + ", > name
24                 + "]";
25     }
26 
27     public void setId(int id) {
28         this.id = id;
29     }
30 
31     public String getName() {
32         return name;
33     }
34 
35     public void setName(String name) {
36         this.name = name;
37     }
38 
39     public String getAddress() {
40         return address;
41     }
42 
43     public void setAddress(String address) {
44         this.address = address;
45     }
46 
47     public Person() {
48         // TODO Auto-generated constructor stub
49     }
50 
51 }
View Code

相关文章: