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

Java利用json-lib操作json

2016-09-13 11:12 323 查看
一、所需jar包

commons-beanutils-1.9.1.jar
commons-collections-3.2.2.jar
commons-lang-2.6.jar
commons-logging-1.1.1.jar
ezmorph-1.0.6.jar
json-lib-2.4-jdk15.jar

另外如果commons-collections-3.2.jar没有或版本不对的话会出现 org/apache/commons/collections/map/ListOrderedMap 这个异常。

二、示例

package com.json;

import java.util.ArrayList;
import java.util.List;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

public class JsonTest {

public static void main(String[] args) {
JsonTest jt = new JsonTest();
jt.ListToJsonArray();
jt.ObjectToJsonObject();
jt.StringToJsonObject();
jt.JsonStringToJavaObject();
jt.JsonStringToJsonArray();
}

public void ListToJsonArray()
{
List<User> userList = new ArrayList<>();
userList.add(new User("1",1));
userList.add(new User("2",2));
userList.add(new User("3",3));

System.out.println("List转JSONArray");
System.out.println("-------------------------------------------");
JSONArray array = JSONArray.fromObject(userList);
System.out.println(array.toString());
System.out.println("*******************************************");

}

public void JsonStringToJsonArray()
{
System.out.println("Json String Array转JSONArray");
System.out.println("-------------------------------------------");
String str = "[{'name':'1','age':1},{'name':'2','age':2},{'name':'3','age':3}]";
JSONArray array = JSONArray.fromObject(str);
List<User> userList = (List<User>) JSONArray.toCollection(array,User.class);
for(User user:userList)
{
System.out.println(user.toString());
}
}

public void ObjectToJsonObject()
{
System.out.println("Java对象转JSONObject");
System.out.println("-------------------------------------------");
User user = new User("4",4);
JSONObject object = JSONObject.fromObject(user);
System.out.println(object.toString());
System.out.println("*******************************************");
}

public void StringToJsonObject()
{
System.out.println("String转JSONObject");
System.out.println("-------------------------------------------");
String str = "{\"name\":\"4\",\"age\":4}";
JSONObject object = JSONObject.fromObject(str);
System.out.println(object.toString());
String str1 = "{'name':'5','age':5}";
JSONObject object1 = JSONObject.fromObject(str1);
System.out.println(object1.toString());
System.out.println("*******************************************");
}

public void JsonStringToJavaObject()
{
System.out.println("String转Java对象");
System.out.println("-------------------------------------------");
String str = "{'name':'5','age':5}";
JSONObject object = JSONObject.fromObject(str);
User user = (User) JSONObject.toBean(object,User.class);
System.out.println(user.toString());
System.out.println("*******************************************");
}

}

User对象

package com.json;

public class User {

private String name;

private int age;

public User()
{
}

public User(String name,int age)
{
this.name = name;
this.age = age;
}

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;
}

@Override
public String toString() {
return "User [name=" + name + ", age=" + age + "]";
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  json