JSON简介

json定义:全称JavaScript Object Notation,这是一种基于js对象的简谱,是一种轻量级别的数据交换格式。

JSON的书写格式:

  1. 对象格式

{
name:“苹果”,
info:“好吃”,
}
可以理解为哈希map集合那种类型的键值对,左键右值。每一对键值对中间用逗号隔开。
这里需要注意的是:如果使用的是java来解析json,那么键需要加入引号,否则会报错,如果是JavaScript则没有此顾虑。而值可以是JavaScrpit中的任意类型的数据,这里不做详述。

  1. 数组格式
    它的主要格式是用中括号将多个值给括起来,如此可以用一个键找到这一组值。示例:
    {
    name:“苹果”,
    info:“好吃”,
    fruit:[“梨子”,“香蕉”,“地瓜”]
    fruit2:[{
    name:“火龙果”,
    info:“有斑点”,
    },{
    name:“猕猴桃”,
    info:“酸甜味”,
    }]
    }
    这里是数组格式的展示,它的特点就是,一个键关联的不是一个具体的值而是一个数组,fruit关联的是一个长度为3的数组,每个下标有自己的值,而fruit2属于稍微进阶的版本,我们可以在数组的每个下标中传入一整个的对象格式的json。这两种表现方式可以互相嵌套。

java中JSON字符串和java对象的互相转换

这里我们首先需要去下载对于的jar文件包并导入,导入有疑问的可以看一下我的另一篇导入jar包,比较常用的是阿里所提供的FastJson和谷歌所提供的Gson,下面我们分别对他们进行介绍。

FastJson

对象->字符串
直接调用JSON的tojson方法并传入需要转换的对象,会返回一个String类型的json字符串。
String json=JSON.toJSONString(要转换的对象);
字符串->对象
在需要转换Java对象的位置, 编写如下代码:
类型 对象名=JSON.parseObject(JSON字符串, 类型.class);

List<类型> list=JSON.parseArray(JSON字符串,类型.class);
这里需要注意的是,如果传入的class属性和json字符串属性不完全一致,会导致部分数据丢失,若有需求,建议直接转换成map集合,这样可以保留所有属性,再对每个键值对进行操作。

Gson

对象->字符串
基本操作方法和上面相同,这里需要先new一个Gson的对象再调用toJSON:
String json = new Gson().toJSON(要转换的对象);
字符串->对象
对象 = new Gson().fromJson(JSON字符串,对象类型.class);
这里是调用的fromJSON方法,不做详述。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值