解析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对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树