Java 转JSON串
一、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包实现
- package com.zpark;
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONArray;
- import com.alibaba.fastjson.JSONObject;
- import org.junit.Test;
- /**
- * @author cosmo
- * @Title: JsonJunit
- * @ProjectName
- * @Description:
- * @date
- */
- public class JsonJunit {
- @Test
- public void testJson(){
- //1 JAVA将对象转成JSON串
- Student s = new Student();
- s.setId("0001");
- s.setName("lisi");
- s.setAge(18);
- s.setMark(90.0);
- String json1 = JSON.toJSON(s).toString();
- System.out.println(json1);
- //2 JSONObject生成JSON串
- JSONObject jObject=new JSONObject();
- jObject.put("username", "zhangsan");
- jObject.put("sex", "男");
- jObject.put("age", 28);
- jObject.put("email", "123456789@qq.com");
- JSONArray jArray=new JSONArray();
- jObject.put("studentList", jArray);
- String json2=jObject.toJSONString();
- System.out.println(json2);
- //3 JSON字符串生成JSON串
- JSONObject jObject2=new JSONObject();
- //构造JSON字符串
- String cardjsonStr1="{\"username\":\"xiaoming\",\"sex\":\"男\",\"age\":8}";
- String cardjsonStr2="{\"username\":\"lihua\",\"sex\":\"女\",\"age\":18}";
- JSON.parseObject(cardjsonStr1);
- JSONArray jArray2=new JSONArray();
- //将JSON字符串转成JSON对象,加入到JSONArray
- //注意一定要用JSON.parseObject()方法转换成JSON对象,否则还是字符串,转成JSON串的时候会带双引号
- jArray2.add(JSON.parseObject(cardjsonStr1));
- jArray2.add(JSON.parseObject(cardjsonStr2));
- jObject2.put("studentList", jArray2);
- String json3=jObject2.toJSONString();
- System.out.println(json3);
- }
- }
Java 转JSON串的更多相关文章
- java解析json串获取key和value
网上例子巨多,纯属个人笔记: JSONObject maleArray = maleObject.getJSONObject("extension"); Iterator<S ...
- java格式化json串
package com.loan.modules.extbiz.in.rabbitmq.util; import com.loan.modules.extbiz.in.rabbitmq.excepti ...
- gson在java和json串之间的应用
public class JsonToJavaUtil { /** * 将json转成成javaBean对象 * * @param <T> * 返回类型 * @param json * 字 ...
- java解析json串常识
注意:JSONObject 和JSONArray的使用区别 报错:A JSONObject text must begin with '{' at character 1 of 分析: JSONOb ...
- java拼接JSON串
String str = "{\"route\":\"onGift\",\"time\":\"\",\&quo ...
- java中JSON串转换并获取数据
String strAllImp= " [{"id":2,"name":"还不错","count":3}]&q ...
- jsp传给java属性,java生成json串,方便以后取出来
前台代码 $.ajax({ url : '<%=basePath%>userorderother/canUpdateCust.do', type : 'POST', data: {'kdc ...
- java对象与json串互转
1:java对象与json串转换: java对象—json串: JSONObject JSONStr = JSONObject.fromObject(object); String str = JSO ...
- 比较任意两个JSON串是否相等(比较对象是否相等)JAVA版
废话少说,直接入题. 在面向对象语言中,经常会比较两个对象是否相等,而比较的大多是实体类实例,也就是封装数据的那些类实例,或者是Map.List互相嵌套成的复杂数据结构. 比较对象是否相等,常见的思路 ...
随机推荐
- oracle 常见查询题
查询比本部门平均薪水高的员工信息 解法一: select d.deptno,e.empno,e.ename,e.sal,d.avgsal from emp e, (select deptno,avg( ...
- 学习笔记TF064:TensorFlow Kubernetes
AlphaGo,每个实验1000个节点,每个节点4个GPU,4000 GPU.Siri,每个实验2个节点,8个GPU.AI研究,依赖海量数据计算,离性能计算资源.更大集群运行模型,把周级训练时间缩短到 ...
- PythonStudy——闭包
# closure:被包裹的函数,称之为闭包 # 完整的闭包结构:1.将函数进行闭包处理:2.提升函数名的作用域 # 案例:延迟加载 def get_site(url): #url='https:// ...
- golang 修改数组中结构体对象的值的坑
对对象数组逐个修改元素属性时候没有成功,代码如下: for _, configure := range configures { configure.Price = specPriceMap[conf ...
- edgedb 内部pg 数据存储的探索 (五) 运行进程列表信息
做为一个简单的记录,方便后期分析学习 当前包含了一个timescale 的extension 可以不用关注 信息 ps -ef |grep edgedb edgedb 10559 24858 0 4月 ...
- python如何输出文件的年月日
import time print('{}BiasedMF312and4414_rt.txt'.format(time.strftime("%Y-%m-%d"))) 输出: 201 ...
- Java基础随记-不定时更新
一.hashMap与hashTable与ConcurrentHashMap: 1.HashMap是继承自AbstractMap类,而HashTable是继承自Dictionary类.不过它们都同时实现 ...
- 解决解决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 ...
- Windows 10的最新版1803版本ISO下载
Windows 10推出已经有几年时间了,笔者一直在用这个新版本.据说Windows 10以后只会推出新的更新,而不会有新的操作系统推出,所以Windows 10的更新就显得重要了.这次给大家推荐一个 ...
- css 实现 左右div 等高, 同时父级div就是最高的子div的高度
原文地址:https://www.cnblogs.com/cbza/p/7145384.html 方法一: 通过父级overflow:hidden, 自己设置padding-bottom 和 mar ...