Java中Json格式总结

JSON(JavaScript Object Notation) 是一种轻量级的基于文本的数据交换格式。它采用完全独立于语言的文本格式,易于读写同时也易于机器解析和生成(网络传输速率),因此使JSON成为理想的数据交换语言。

数据规则

1. 数据在键值对中

2. 数据由逗号分隔

3. 花括号保存对象

4. 方括号保存数组

5. 数据的书写格式是:名称/值对。

例如{"firstName":"Brett","lastName":"McLaughlin","email":"aaaa"}

数据格式

1. 对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。

2. 数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。

3. 值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、 null、对象(object)或者数组(array)。这些结构可以嵌套。

4. 字符串(string)是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。一个字符(character)即一个单独的字符串(character string)。

5. 数值(number)也与C或者Java的数值非常相似。除去未曾使用的八进制与十六进制格式。除去一些编码细节。

数据类型

类型

描述

Number

在JavaScript中的双精度浮点格式

String

双引号的反斜杠转义的Unicode

Boolean

true 或 false

Array

值的有序序列

Value

它可以是一个字符串,一个数字,真的还是假(true/false),空(null )等

Object

无序集合键值对

Whitespace

可以使用任何一对中的令牌

null

empty

Java实体之间的映射

JSON

Java

string

java.lang.String

number

java.lang.Number

true|false

ava.lang.Boolean

null

null

array

java.util.List

object

java.util.Map

类型转换

1. String 转换为JSON对象

public class StringToJSON {

public static void main(String[] args) throws JSONException{

//定义JSON字符串

String jsonStr = "{\"id\": 2," +

" \"title\": \"json title\", " +

"\"config\": {" +

"\"width\": 34," +

"\"height\": 35," +

"}, \"data\": [" +

"\"JAVA\", \"JavaScript\", \"PHP\"" +

"]}";

//转换成为JSONObject对象

JSONObject jsonObj = new JSONObject(jsonStr);

//从JSONObject对象中获取数据

JavaBean bean = new JavaBean();

//根据属性名称获取int型数据;

bean.setId(jsonObj.getInt("id"));

//根据属性名获取String数据;

bean.setTitle(jsonObj.getString("title"));

//根据属性名获取JSONObject类

JSONObject config = jsonObj.getJSONObject("config");

bean.setWidth(config.getInt("width"));

bean.setHeight(config.getInt("height"));

//根据属性名获取JSONArray数组

JSONArray data = jsonObj.getJSONArray("data");

for(int index = 0, length = data.length(); index < length; index++) {

}

}

}

2. JSON对象转换为String字符串

public static void main(String[] args) throws JSONException {

//创建JSONObject对象

JSONObject json = new JSONObject();

//向json中添加数据

json.put("username", "wanglihong");

json.put("height", 12.5);

json.put("age", 24);

//创建JSONArray数组,并将json添加到数组

JSONArray array = new JSONArray();

array.put(json);

//转换为字符串

String jsonStr = array.toString();

System.out.println(jsonStr);

}

最终输出结果为: [{"username":"wanglihong","height":12.5,"age":24}]

3. 集合转换为JSONArray对象

public static void main(String[] args) throws JSONException {

//初始化ArrayList集合并添加数据

List < String > list = new ArrayList < String > ();

list.add("username");

list.add("age");

list.add("sex");

//初始化HashMap集合并添加数组

Map map = new HashMap();

map.put("bookname", "CSS3实战");

map.put("price", 69.0);

//初始化JSONArray对象,并添加数据

JSONArray array = new JSONArray();

array.put(list);

array.put(map);

//生成的JSON字符串为:[["username","age","sex"],{"price":69,"bookname":"CSS3实战"}]

}

总结

1. 使用基于JavaScript的应用程序,其中包括浏览器扩展和网站

2. 使用JSON格式序列化和结构化的数据传输网络连接

3. 主要用于服务器和Web应用程序之间的数据传输

4. Web服务和API采用JSON格式提供公共数据

5. 可以用来与现代编程语言

版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。

java中的json_Java中Json格式总结相关推荐

  1. 将Excel中的数据转换成JSON格式

    将Excel中的数据转换成JSON格式 第一步:下载jxl.jar包 <dependency> <groupId>net.sourceforge.jexcelapi</g ...

  2. java 校验字符串是否是 json 格式

    java 校验字符串是否是 json 格式 package net.qh.boss.sms.utils;import com.alibaba.fastjson.JSONObject; import c ...

  3. java中的json_java中的json使用

    josn: 一种数据传输格式,与开发语言无关,轻量级 一开始是javaScript的,但是后面比较流传,几乎所有语言都有相应的使用API 数据结构: Object---对象 使用花括号{}包含的键值对 ...

  4. java中的json_JAVA中的四种JSON解析方式详解

    JAVA中的四种JSON解析方式详解 我们在日常开发中少不了和JSON数据打交道,那么我们来看看JAVA中常用的JSON解析方式. 1.JSON官方 脱离框架使用 2.GSON 3.FastJSON ...

  5. java如何解析json_java 中解析json步骤

    一.   JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧. Json建构于两种结构: 1."名称/值"对的集合(A colle ...

  6. JSON对象中的函数调用,JSON格式的字符串对应的函数调用方法

    json对象中的函数调用:直接使用 json变量名+函数名+()进行调用,特别注意这对括号:如果是获取到的json格式的字符串,想要调用它的方法前,需要先将该字符串转换成json对象,在调用对应的方法 ...

  7. 将数据库中的数据转换成json格式

    //需要两个jar包,一个连接接数据库(mysql-connection-java-5.1.7-bin.jar),一个关于json(json.jar),网上一搜就找到了, import java.sq ...

  8. C语言中文件读写和json格式的使用

    在c语言中可以用fopen函数打开一个文件,并对文件进行读写 头文件是头文件:#include<stdio.h> fopen FILE*fopen(const char *path,con ...

  9. html中如何美化展示json格式数据

    本篇文章给大家介绍 html中美化展示json格式数据的方式.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. 直接上代码: html中主要加一个pre 的标签 <h2>G ...

最新文章

  1. 无法跳转 vscode_爱了爱了,这个VSCode插件将极大提高你的工mo作yu效率
  2. 线程与进程的区别_Java线程和PC进程的区别
  3. 后端:Layui实现文件上传功能
  4. 取消hibernate的外键生成
  5. python 八数码_python 处理八数码 双向BFS 拼图游戏 | 学步园
  6. Spark的Shuffle过程介绍
  7. FM信号测试软件,音频测试方案:音频FM指标测试方法
  8. 大数据推荐系统(4)推荐算法
  9. Utils 前端随机生成id,中文姓名
  10. vSphere Esxi 7.0打包网卡驱动
  11. Ordinal Numbers
  12. matlab2017百度百科,沸石粉里的吸蓝量是什么意思
  13. 正面管教读书笔记 04 重新看待不良行为
  14. 小米MIUI12.5手机降级教程,线刷
  15. sap增加税码注意事项
  16. 苹果终端date命令_mac终端常用命令
  17. 纯国产环境JAVA程序(Springboot + Mybatis + 达梦数据库)搭建
  18. 计算机怎么采集模拟量信号,如何采集模拟量和数字量
  19. mybatis-plus使用this.saveBatch报java.lang.NullPointer空指针异常
  20. github.com连接超时 ping不通

热门文章

  1. IDEA下搭建maven实例项目
  2. 搜索引擎资料收藏(转)
  3. 如何使用Python 进行数据可视化
  4. python “ cannot import name OrderedDict”
  5. Locust简介与使用教程
  6. 【修真院Java小课堂】Annotation注解
  7. 学生党开学收藏榜单,通话质量好的蓝牙耳机
  8. python制作微信朋友圈九分图
  9. 如何配置tomcat
  10. 小谈《我叫MT Online》为什么会火