一、JSON (JavaScript Object Notation)

  1、轻量级数据交换格式能够替代XML的工作
  2、数据格式比较简单, 易于读写, 格式都是压缩的, 占用带宽小(简洁、简单、体积小)
  3、易于解析这种语言, 客户端JavaScript可以简单的通过eval()进行JSON数据的读取
  4、服务器端的解析,跨语言(包括ActionScript, C, C#, ColdFusion,Java,JavaScript,Perl,PHP,Python,Ruby等语言服务器端语言)
  5、各语言对JSON支持的特别好,自从Ajax的流行,JSON格式传输就更流行了
  6、它是前端和后台交互用的。
  7、它是键值对的

二、Java的转JSON串的方式:
  1、JAVA将对象转成JSON串
  2、通过的JSONObject生成JSON串
  3、通过JSON字符串生成JSON串
  4、代码通过阿里的FASTJSON包实现

  1. package com.zpark;
  2.  
  3. import com.alibaba.fastjson.JSON;
  4. import com.alibaba.fastjson.JSONArray;
  5. import com.alibaba.fastjson.JSONObject;
  6. import org.junit.Test;
  7.  
  8. /**
  9. * @author cosmo
  10. * @Title: JsonJunit
  11. * @ProjectName
  12. * @Description:
  13. * @date
  14. */
  15. public class JsonJunit {
  16.  
  17. @Test
  18. public void testJson(){
  19. //1 JAVA将对象转成JSON串
  20. Student s = new Student();
  21. s.setId("0001");
  22. s.setName("lisi");
  23. s.setAge(18);
  24. s.setMark(90.0);
  25. String json1 = JSON.toJSON(s).toString();
  26. System.out.println(json1);
  27.  
  28. //2 JSONObject生成JSON串
  29. JSONObject jObject=new JSONObject();
  30. jObject.put("username", "zhangsan");
  31. jObject.put("sex", "男");
  32. jObject.put("age", 28);
  33. jObject.put("email", "123456789@qq.com");
  34. JSONArray jArray=new JSONArray();
  35. jObject.put("studentList", jArray);
  36. String json2=jObject.toJSONString();
  37. System.out.println(json2);
  38.  
  39. //3 JSON字符串生成JSON串
  40. JSONObject jObject2=new JSONObject();
  41. //构造JSON字符串
  42. String cardjsonStr1="{\"username\":\"xiaoming\",\"sex\":\"男\",\"age\":8}";
  43. String cardjsonStr2="{\"username\":\"lihua\",\"sex\":\"女\",\"age\":18}";
  44. JSON.parseObject(cardjsonStr1);
  45. JSONArray jArray2=new JSONArray();
  46. //将JSON字符串转成JSON对象,加入到JSONArray
  47. //注意一定要用JSON.parseObject()方法转换成JSON对象,否则还是字符串,转成JSON串的时候会带双引号
  48. jArray2.add(JSON.parseObject(cardjsonStr1));
  49. jArray2.add(JSON.parseObject(cardjsonStr2));
  50. jObject2.put("studentList", jArray2);
  51. String json3=jObject2.toJSONString();
  52. System.out.println(json3);
  53. }
  54. }

Java 转JSON串的更多相关文章

  1. java解析json串获取key和value

    网上例子巨多,纯属个人笔记: JSONObject maleArray = maleObject.getJSONObject("extension"); Iterator<S ...

  2. java格式化json串

    package com.loan.modules.extbiz.in.rabbitmq.util; import com.loan.modules.extbiz.in.rabbitmq.excepti ...

  3. gson在java和json串之间的应用

    public class JsonToJavaUtil { /** * 将json转成成javaBean对象 * * @param <T> * 返回类型 * @param json * 字 ...

  4. java解析json串常识

    注意:JSONObject 和JSONArray的使用区别 报错:A JSONObject text must begin with '{' at character 1 of 分析:  JSONOb ...

  5. java拼接JSON串

    String str = "{\"route\":\"onGift\",\"time\":\"\",\&quo ...

  6. java中JSON串转换并获取数据

    String strAllImp= " [{"id":2,"name":"还不错","count":3}]&q ...

  7. jsp传给java属性,java生成json串,方便以后取出来

    前台代码 $.ajax({ url : '<%=basePath%>userorderother/canUpdateCust.do', type : 'POST', data: {'kdc ...

  8. java对象与json串互转

    1:java对象与json串转换: java对象—json串: JSONObject JSONStr = JSONObject.fromObject(object); String str = JSO ...

  9. 比较任意两个JSON串是否相等(比较对象是否相等)JAVA版

    废话少说,直接入题. 在面向对象语言中,经常会比较两个对象是否相等,而比较的大多是实体类实例,也就是封装数据的那些类实例,或者是Map.List互相嵌套成的复杂数据结构. 比较对象是否相等,常见的思路 ...

随机推荐

  1. oracle 常见查询题

    查询比本部门平均薪水高的员工信息 解法一: select d.deptno,e.empno,e.ename,e.sal,d.avgsal from emp e, (select deptno,avg( ...

  2. 学习笔记TF064:TensorFlow Kubernetes

    AlphaGo,每个实验1000个节点,每个节点4个GPU,4000 GPU.Siri,每个实验2个节点,8个GPU.AI研究,依赖海量数据计算,离性能计算资源.更大集群运行模型,把周级训练时间缩短到 ...

  3. PythonStudy——闭包

    # closure:被包裹的函数,称之为闭包 # 完整的闭包结构:1.将函数进行闭包处理:2.提升函数名的作用域 # 案例:延迟加载 def get_site(url): #url='https:// ...

  4. golang 修改数组中结构体对象的值的坑

    对对象数组逐个修改元素属性时候没有成功,代码如下: for _, configure := range configures { configure.Price = specPriceMap[conf ...

  5. edgedb 内部pg 数据存储的探索 (五) 运行进程列表信息

    做为一个简单的记录,方便后期分析学习 当前包含了一个timescale 的extension 可以不用关注 信息 ps -ef |grep edgedb edgedb 10559 24858 0 4月 ...

  6. python如何输出文件的年月日

    import time print('{}BiasedMF312and4414_rt.txt'.format(time.strftime("%Y-%m-%d"))) 输出: 201 ...

  7. Java基础随记-不定时更新

    一.hashMap与hashTable与ConcurrentHashMap: 1.HashMap是继承自AbstractMap类,而HashTable是继承自Dictionary类.不过它们都同时实现 ...

  8. 解决解决httpd: Could not reliably determine the server's fully qualified domain name

    vi /etc/httpd/conf/httpd.conf   加入一句  ServerName  localhost:80 参考:https://www.cnblogs.com/52linux/ar ...

  9. Windows 10的最新版1803版本ISO下载

    Windows 10推出已经有几年时间了,笔者一直在用这个新版本.据说Windows 10以后只会推出新的更新,而不会有新的操作系统推出,所以Windows 10的更新就显得重要了.这次给大家推荐一个 ...

  10. css 实现 左右div 等高, 同时父级div就是最高的子div的高度

    原文地址:https://www.cnblogs.com/cbza/p/7145384.html 方法一: 通过父级overflow:hidden,  自己设置padding-bottom 和 mar ...