您的位置:首页 > Web前端 > JavaScript

解析fastJson

2016-01-25 16:25 441 查看
可参考:
http://jingyan.baidu.com/article/e8cdb32b619f8437042bad53.html
http://jingyan.baidu.com/article/c74d6000672e450f6b595d53.html
</pre><pre name="code" class="java">import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

import org.express.model.User;
import org.junit.Test;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;

public class TestFastJson {
@Test
public void json() {
User user = new User();
user.setAge("20");
user.setName("wxy");

//java对象转换成json字符串
String jsonString = JSON.toJSONString(user);
System.out.println(jsonString);					//{"age":"20","name":"wxy"}

//json字符串转换成json对象
JSONObject json = JSON.parseObject(jsonString);
//从json对象取值的两种方法
System.out.println(json.getString("age"));		//20
System.out.println(json.get("name"));			//wxy

//json字符串转换成java对象
User user1 = JSON.parseObject(jsonString,User.class);
System.out.println(user1);						//User [name=wxy, age=20]

//json对象转换成java对象

/* json数组转java对象数组 */
String jsonString2 = "[{'name':'wxy','age':'20'},{'name':'xyw','age':'22'}]";
User[] user3 = JSON.parseObject(jsonString2, new TypeReference<User[]>(){});
//		User[] user3 = JSON.parseObject(jsonString2, User[].class);
for(User u : user3){
System.out.println(u);						//User [name=wxy, age=20]
}												//User [name=xyw, age=22]
List<User> list = Arrays.asList(user3); 		//转换成list

// 转换成ArrayList
ArrayList<User> list2 = JSON.parseObject(jsonString2, new TypeReference<ArrayList<User>>(){});

// 转换成ArrayList(默认)    list3  与 list4  效果相同
ArrayList<JSONObject> list3 = JSON.parseObject(jsonString2, new ArrayList<User>().getClass());
ArrayList<JSONObject> list4 = JSON.parseObject(jsonString2, ArrayList.class);
for (int i = 0; i < list4.size(); i++) { //  推荐用这个
JSONObject io = list4.get(i);
System.out.println(io.get("name") + ","+io.get("age"));
}

JSONObject jsonObj = JSONObject.parseObject(jsonString);
System.out.println("<================== 其它1 ==================>");
System.out.println(jsonObj.get("name"));

User user2 = JSONObject.parseObject(jsonString,User.class);
System.out.println("<================== 其它2 ==================>");
System.out.println(user2);

String json1 = "{\"name\":\"wxy\",\"age\":\"20\"}";
String json2 = "{'name':'wxy','age':'20'}";
JSONObject jsonObj1 = JSONObject.parseObject(json1);
JSONObject jsonObj2 = JSONObject.parseObject(json2);
System.out.println("<================== 其它3 ==================>");
System.out.println(jsonObj1.get("name"));
System.out.println(jsonObj2.get("age"));
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java fastjson 解析