一.完整案例

先定义一个java实体对象,如下:

  1. package com.pcitc.json.cnblog;
  2.  
  3. /**
  4. * SimInfo实体对象
  5. *
  6. * @Description
  7. * @author admin
  8. * @created 2015年6月30日 上午10:23:21
  9. * @version
  10. * @history
  11. * @see
  12. */
  13. public class SimInfo {
  14.  
  15. private String addTime;
  16. private String iccid;
  17. private int id;
  18. private String imei;
  19. private String imsi;
  20. private String phoneType;
  21. private String remark;
  22. private String tel;
  23.  
  24. public String getAddTime() {
  25. return addTime;
  26. }
  27.  
  28. public void setAddTime(String addTime) {
  29. this.addTime = addTime;
  30. }
  31.  
  32. public String getIccid() {
  33. return iccid;
  34. }
  35.  
  36. public void setIccid(String iccid) {
  37. this.iccid = iccid;
  38. }
  39.  
  40. public int getId() {
  41. return id;
  42. }
  43.  
  44. public void setId(int id) {
  45. this.id = id;
  46. }
  47.  
  48. public String getImei() {
  49. return imei;
  50. }
  51.  
  52. public void setImei(String imei) {
  53. this.imei = imei;
  54. }
  55.  
  56. public String getImsi() {
  57. return imsi;
  58. }
  59.  
  60. public void setImsi(String imsi) {
  61. this.imsi = imsi;
  62. }
  63.  
  64. public String getPhoneType() {
  65. return phoneType;
  66. }
  67.  
  68. public void setPhoneType(String phoneType) {
  69. this.phoneType = phoneType;
  70. }
  71.  
  72. public String getRemark() {
  73. return remark;
  74. }
  75.  
  76. public void setRemark(String remark) {
  77. this.remark = remark;
  78. }
  79.  
  80. public String getTel() {
  81. return tel;
  82. }
  83.  
  84. public void setTel(String tel) {
  85. this.tel = tel;
  86. }
  87.  
  88. }

1. json对象转换为java对象

  1. @Test
  2. public void jsonToJava() {
  3. String json = "[{\"addTime\":\"2011-09-19 14:23:02\",\"iccid\":\"1111\",\"id\":0,\"imei\":\"2222\",\"imsi\":\"3333\",\"phoneType\":\"4444\",\"remark\":\"aaaa\",\"tel\":\"5555\"}]";
  4. // 接收{}对象,此处接收数组对象会有异常
  5. if (json.indexOf("[") != -1) {
  6. json = json.replace("[", "");
  7. }
  8. if (json.indexOf("]") != -1) {
  9. json = json.replace("]", "");
  10. }
  11. // 把字符串形式的JSON串转换成JSON对象
  12. JSONObject obj = JSONObject.fromObject(json);
  13. // 把JSON对象转成java对象
  14. SimInfo simInfo = (SimInfo) JSONObject.toBean(obj, SimInfo.class);
  15. // 输出java对象的相关属性
  16. System.out.println(simInfo.getAddTime());
  17. System.out.println(simInfo.getIccid());
  18. System.out.println(simInfo.getImei());
  19. System.out.println(simInfo.getImsi());
  20. System.out.println(simInfo.getPhoneType());
  21. System.out.println(simInfo.getRemark());
  22. System.out.println(simInfo.getTel());
  23. System.out.println(simInfo.getId());
  24. }

输出结果:

aaarticlea/png;base64,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" alt="" />

2.  将json数组转换为java集合对象

  1. /**
  2. * 将json数组转换为java集合对象
  3. *
  4. * @Description
  5. * @author admin
  6. * @created 2015年6月30日 上午10:10:15
  7. */
  8. @Test
  9. public void jsonToJavaCollections() {
  10. String jsons = "[{\"addTime\":\"2011-09-19 14:23:02\",\"iccid\":\"1111\",\"id\":0,\"imei\":\"2222\",\"imsi\":\"3333\",\"phoneType\":\"4444\",\"remark\":\"aaaa\",\"tel\":\"5555\"},"
  11. + "{\"addTime\":\"2011-11-11 14:23:02\",\"iccid\":\"2222\",\"id\":0,\"imei\":\"2222\",\"imsi\":\"3333\",\"phoneType\":\"4444\",\"remark\":\"aaaa\",\"tel\":\"5555\"}]";
  12. // 把字符串形式的JSON串转换成JSON数组对象
  13. JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON(jsons);
  14. if (jsonArray != null) {
  15. // 把JSON数组对象转换成java集合对象
  16. List<Object> list = (List<Object>) JSONSerializer.toJava(jsonArray);
  17. for (Object o : list) {
  18. // 把java对象转换成JSON对象
  19. JSONObject jsonObject = JSONObject.fromObject(o);
  20. // 把JSON对象转换成特定的java对象
  21. SimInfo simInfo = (SimInfo) JSONObject.toBean(jsonObject,
  22. new SimInfo().getClass());
  23. // 输出java对象属性
  24. System.out.println("addTime: " + simInfo.getAddTime());
  25. }
  26. }
  27. }

输出结果:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUAAAAA7CAIAAACFYMRLAAAEvUlEQVR4nO2cTY7bMAxGfS4fyOfxaYwuZl8UmP0svClQ9AK9gLtwYuuHlClHSczBe8iirRySFvXZlBqp+/P768fPv7++/n2/z/TxuUDA9PH59qTwafvpVgFPH5/f8vNuyVyLt6eDT/PPTcDvHloAcAYEDOAYBAzgGAQM4BgEDOAYBAzgmJYCnoauG6baJuXqrh/nJlEBfGNeLuB57LucWK0XEPA0KLEdtN3vT+qHQtOJOMKOrDKphdHcoKU1R7vjZOBURKj3YTGTPnjfG3ge+6v22jz2W7Tz2EfZnYb9r3LbOAjjq9Cko/sKW9Ymm1U1jOYGl91U35vNlXpeDdcQoNSHVl/XBgEfEY3mNOiwcRrWP02iPLSmsmPZVyawcCwWUMNobjC+hboJlB5V7NlispQvs69LYxNwUGoUqpC0sik0LYqAg69El89j3w3jWkTdRkR8SehLKQ5PpidMbRLzvAWU3YPsrEbABV95151YY0j12tTgHvIwKcaOk6KLShw7gkFTvg58XRyDgOex3+8sSlVy12GeCk27WfUNnF2+dn0/ztsf0mn1drmQikcEHBVXQT12m6dPubdGAi75Eu74Mb01N7iESTwn4LysDabBwsgRDJryJfvyQnUJHSQjzYut6U61gLeXz162baM5MnSyYtMCCYyvA2IKRorwuKgVcFyoJNNc1Ve0/hIPS8WgPQx1nBe7Ke+FMNbahJQXMo2CM+XrEoump7EIOFs4VvpCeycuzxVwUqkrZfQJVsPZXLFLq7LnldCHvoKW2mXZ4vWPGowTWC3gvOfFCA81Z+lDg68rcyhgaaX1Wm/ghi/cxKO2mBwviqQ30UjAJl/7lTU9cBjGowbFZ6r1LWeb8NhCPOrDh1ZHLoFNwEl1FpZGt+64v6UNTYHhJgI+XoCoTpP+heh5JjtuJWCLr3NDsBhGc4NVc2Cjd+m/kcSvlvrQv3oX6yJWMjtK1rTuD9fZ2rSZFV9eWrmuCjiJMX9YVGYqmzLEFsNmob6W3jiFJnsoiq+KuZstwjYGQ8wCLvV8PDYqHmVKHx5k2Qv8FhrAMQgYwDEIGMAxCBjAMQgYwDEIGMAxCBjAMQgYwDEcqQPgGI7UkYn25rzxSB3nBk/Y1Ho3GTi1Wy3EfBUz6QNO5BAIf/gpbeZ41ZE6vg0uy3LLMkfqPA8EfET0C3hxN8v+Y919e2O2OVZrKuDa4LIsW3ed3C9W2qRiNFnKl9nXpeFInSPC1CYx59tNt1Ba7EbybnDruYrdSOL3xRaO1FmWhSN1DomKq6Aeu83Tn3ekjnuDe4LOCTgva8tbpgSDpnzJvrzAkTpFkuW0dUC85kidCxk8RK7Jt385k5DyQqZRcKZ8XWLR9DQcqaMTn16w3deLjtRxbTBOYLWA857PMC2hWPJl8HVlOFJHQa7w0tVP9VQCX3prbVB8plrfchypUwNH6tR94ZVH6nwLg/dm4xyYI3Uq4Uid8g0LFl92pI5rgyFmAXOkTjX8FhrAMQgYwDEIGMAxCBjAMQcC7rruldEAQBUIGMAxCBjAMQgYwDEIGMAxCBjAMQgYwDEIGMAxCBjAMQgYwDEIGMAxCBjAMQgYwDEIGMAxCBjAMQgYwDEIGMAx/wGSUp/KOd+aRAAAAABJRU5ErkJggg==" alt="" />

3. java对象转换成为JSON对象

  1. /**
  2. * java对象转换成为JSON对象
  3. *
  4. * @Description
  5. * @author admin
  6. * @created 2015年6月30日 上午10:31:08
  7. */
  8. @Test
  9. public void javaToJson() {
  10. SimInfo simInfo = new SimInfo();
  11. simInfo.setAddTime("2015-06-30");
  12. simInfo.setIccid("1111");
  13. simInfo.setImei("2222");
  14. simInfo.setImsi("3333");
  15. simInfo.setPhoneType("4");
  16. simInfo.setRemark("aaaa");
  17. simInfo.setTel("5555");
  18. // java对象转换为json数组对象
  19. JSONArray jsonArray = new JSONArray().fromObject(simInfo);
  20. // json:
  21. // [{"addTime":"2011-09-19 14:23:02","iccid":"1111","id":0,"imei":"2222","imsi":"3333","phoneType":"4444","remark":"aaaa","tel":"5555"}]
  22. System.out.println("json: " + jsonArray.toString());
  23. }

输出结果:

aaarticlea/png;base64,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" alt="" />

二. 基于json-lib.jar包Json实例程序的一些总结

1. 把一个JSON字符串转换成JSON对象的两种方式:

  1. String json = "[{\"addTime\":\"2011-09-19 14:23:02\",\"iccid\":\"1111\",\"id\":0,\"imei\":\"2222\",\"imsi\":\"3333\",\"phoneType\":\"4444\",\"remark\":\"aaaa\",\"tel\":\"5555\"}]";
  2. if (json.indexOf("[") != -1) {
  3. json = json.replace("[", "");
  4. }
  5. if (json.indexOf("]") != -1) {
  6. json = json.replace("]", "");
  7. }

方式一:

  1. JSONObject obj = JSONObject.fromObject(json);

方式二:

  1. JSONObject obj = (JSONObject) JSONSerializer.toJSON(json);

2. JSONObject to DynaBean

  1. String json = "{name=\"json\",bool:true,int:1,double:2.2}";
  2. JSONObject jsonObject = JSONObject.fromObject(json);
  3. //抽象的写法:DynaBean bean = (DynaBean) JSONSerializer.toJava( jsonObject );
  4. Object bean = JSONObject.toBean(jsonObject);
  5. //Object bean1 = JSONSerializer.toJava(jsonObject);

3. JSONObject to JavaBean

  1. String json = "{name:\"zhangsan\",age:25,hight:1.72,sex:true}";
  2. JSONObject jsonObject = JSONObject.fromObject(json);
  3. UserBean bean = (UserBean) JSONObject.toBean(jsonObject, UserBean.class);

4. JSONArray to List

  1. String json = "[\"first\",\"second\"]";
  2. JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON(json);
  3. List output = (List) JSONSerializer.toJava(jsonArray);

5. JSONArray to array

  1. String json = "[\"first\",\"second\"]";
  2. JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON(json);
  3. JsonConfig jsonConfig = new JsonConfig();
  4. jsonConfig.setArrayMode(JsonConfig.MODE_OBJECT_ARRAY);
  5. Object[] output = (Object[]) JSONSerializer.toJava(jsonArray, jsonConfig);

json学习系列(8)JSON与JAVA数据的相互转换实例的更多相关文章

  1. Json学习总结(2)——Java 下的 JSON库性能比较:JSON.simple vs. GSON vs. Jackson vs. JSONP

    JSON已经成为当前服务器与WEB应用之间数据传输的公认标准,不过正如许多我们所习以为常的事情一样,你会觉得这是理所当然的便不再深入思考了.我们很少会去想用到的这些JSON库到底有什么不同,但事实上它 ...

  2. Json学习总结(1)——Java和JavaScript中使用Json方法大全

    摘要:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语 ...

  3. json学习系列(3)-JSONObject的过滤设置

    我们通常对一个json串和java对象进行互转时,经常会有选择性的过滤掉一些属性值.例如下面的实体类: package com.pcitc.json; /** * Person实体类 * * @Des ...

  4. json学习系列(5)-json错误解析net.sf.ezmorph.bean.MorphDynaBean cannot be cast to

    最近在使用json的时候,报了下面的错误: net.sf.ezmorph.bean.MorphDynaBean cannot be cast to java.lang.String 这种错误非常常见, ...

  5. json学习系列(2)-生成JSONObject的方法

    生成JSONObject一般有两种方式,通过javabean或者map类型来生成.如下面的例子: 先定义一个User实体类: package com.pcitc.json; /** * 用户实体类 * ...

  6. json学习系列(1)-使用json所要用到的jar包下载

    内容来源于互联网. json是个非常重要的数据结构,在web开发中应用十分广泛.每个开发者都应该好好的去研究一下json的底层实现.在使用json之前首先要明白需要哪些jar文件,初次使用的时候很容易 ...

  7. JSON与JAVA数据的相互转换

    http://www.cnblogs.com/linjiqin/archive/2011/09/19/2181408.html import net.sf.json.JSONArray; import ...

  8. json学习系列(7)JSONBuilder的用法

    JSONBuilder可以向文件中写入写入json字符串.如下面的例子: public class Test { public static void main(String args[]) thro ...

  9. json学习系列(6)JSONObject和JSONArray是JDK的集合部分延伸

    我一直觉得JSONObject和JSONArray是JDK集合部分的延伸,它们与JDK的List和Map一脉相承.通过研究JSONObject和JSONArray的结构,我们顺便也复习一下JDK的内容 ...

随机推荐

  1. subverison的安装与注意事项

    1.安装 :官网下载 http://blog.csdn.net/sinboy/article/details/4000524 http://sourceforge.net/projects/win32 ...

  2. 三种dedecms调用相关文章的方法

    在文章的末尾或侧边栏添加相关文章可以提高用户的黏度,提高pv,增加se的好印象(哈哈),那么dedecms如何调用相关文章呢?有三种方法可以实现. 第一种dedecms调用相关文章的方法,用默认的li ...

  3. 查看远程git log

    $ git reset --hard bit/add $ git log --oneline --graph

  4. (0,eval)('this')与eval的区别

    看doT源码的时候,看到了这么一句代码: global = (function(){ return this || (0,eval)('this'); }()); global.doT = doT; ...

  5. RAID阵列的初始化与管理

    如果我们创建RAID阵列的目的是新部署一台服务器,我们建议所有新创建的RAID阵列都应该做初始化操作,这样,硬盘上原有的用户数据将被清除,以便进行后续的系统,软件安装. 转自: http://zh.c ...

  6. 《ASP.NET MVC4 WEB编程》学习笔记------Model模型绑定

    本文转载自haiziguo Asp.net mvc中的模型绑定,或许大家经常用,但是具体说他是怎么一回事,可能还是会有些陌生,那么,本文就带你理解模型绑定.为了理解模型绑定,本文会先给出其定义,然后对 ...

  7. 《ASP.NET1200例》<asp:DataList>分页显示图片

    aspx页面代码 <asp:DataList ID="dlPhoto" runat="server" Height="137px" W ...

  8. Kth Largest Element in an Array

    Find K-th largest element in an array. Notice You can swap elements in the array Example In array [9 ...

  9. 【JAVA、C++】LeetCode 007 Reverse Integer

    Reverse digits of an integer. Example1: x = 123, return 321 Example2: x = -123, return -321 解题思路:将数字 ...

  10. DP:Making the Grade(POJ 3666)

     聪明的修路方案 题目大意:就是农夫要修一条路,现在要求这条路要么就是上升的,要么就是下降的,总代价为∑|a[i]-b[i]|,求代价最低的修路方案, (0 ≤ β≤ 1,000,000,000) , ...