一、需要的jar包:
commons-beanutils-1.7.0.jar、commons-collections-3.2.jar、commons-lang-2.3.jar、commons-logging-1.0.4.jar、ezmorph-1.0.4.jar、json-lib-2.4-jdk15.jar
二、javabean
Person.java
package com.leo.bean;
public class Person { private String name; private int age; private PhoneNumber homePhone; private PhoneNumber officePhone; public Person(String name, int age, PhoneNumber homePhone, PhoneNumber officePhone) { super(); this.name = name; this.age = age; this.homePhone = homePhone; this.officePhone = officePhone; } 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 PhoneNumber getHomePhone() { return homePhone; } public void setHomePhone(PhoneNumber homePhone) { this.homePhone = homePhone; } public PhoneNumber getOfficePhone() { return officePhone; } public void setOfficePhone(PhoneNumber officePhone) { this.officePhone = officePhone; } }
PhoneNumber.java
package com.leo.bean; public class PhoneNumber { private String type; private String number; public PhoneNumber(String type, String number) { super(); this.type = type; this.number = number; } public String getType() { return type; } public void setType(String type) { this.type = type; } public String getNumber() { return number; } public void setNumber(String number) { this.number = number; } }
三、工具类
TotalJson.java
package com.leo.bean; import java.util.List; public class TotalJson { private long results; private List items; public long getResults() { return results; } public void setResults(long results) { this.results = results; } public List getItems() { return items; } public void setItems(List items) { this.items = items; } }
ExtHelper.java
package com.leo.bean; import java.util.List; import net.sf.json.JSONObject; public class ExtHelper { public static String getJsonFromList(long recordTotal, List beanList) { TotalJson total = new TotalJson(); total.setResults(recordTotal); total.setItems(beanList); JSONObject jsonArray = JSONObject.fromObject(total); return jsonArray.toString(); } }
四、测试类
JsonListTest.java
package com.leo.test;
import java.util.ArrayList; import java.util.List; import com.leo.bean.ExtHelper; import com.leo.bean.PhoneNumber; public class JsonListTest { public static void main(String[] args) { // 创建PhoneNumber对象homePhone PhoneNumber homePhone = new PhoneNumber("宅电", "123456"); // 创建PhoneNumber对象officePhone PhoneNumber officePhone = new PhoneNumber("办公电话", "654321"); List phoneList = new ArrayList(); phoneList.add(homePhone); phoneList.add(officePhone); String json = ExtHelper.getJsonFromList(phoneList.size(), phoneList); System.out.println(json); } }
JsonLibTest.java
package com.leo.test; import net.sf.json.JSONObject; import com.leo.bean.Person; import com.leo.bean.PhoneNumber; public class JsonLibTest { public static void main(String[] args) { PhoneNumber homePhone = new PhoneNumber("宅电", "123456"); PhoneNumber officePhone = new PhoneNumber("办公电话", "654321"); Person person = new Person("tom", 20, homePhone, officePhone); JSONObject json = JSONObject.fromObject(person); String jsonStr = json.toString(); System.out.println(json); } }