json基础

一、JSON格式

满足以下三点:

  花括号容纳对象

  键 :值

  逗号分隔数据

{ 
  "name":"Bill Gates", 
  "age":62,
  "city":"Seattle" 
}

二、数据类型

JSON 的值必须是以下数据类型之一:

  • 字符串

  • 数字

  • 对象(JSON 对象)

  • 数组

  • 布尔

  • Null

JSON 的值不可以是以下数据类型之一:

  • 函数

  • 日期

  • undefined

字符串(String)

用双引号包围。

{ "name":"John" }

数字(Number)

整数或浮点数。

{ "age":30 } 

对象(Object)

json中的值也可以是json对象。

{
"employee":{ "name":"Bill Gates", 
             "age":62,
             "city":"Seattle" 
           }
}

数组(Array)

数组中元素可以是String、数字或Object等json中允许的类型。

//例1
{
"employees":[ "Bill", 
              "Steve", 
              "David" 
            ]
}
​
​
//例2
{
    "books": [
        { "language":"Java" , "edition":"second" },
        { "language":"C++" , "lastName":"fifth" },
        { "language":"C" , "lastName":"third" }
    ]
}

布尔(boolen)

JSON 中的值可以是 true/false。

{ "sale":true }

Null

JSON 中的值可以是 null。

{ "middlename":null }

三、Json对象和Json字符串

JSON对象:是直接可以直接操作的json格式

  • var str1 = {"name": 'zhangsan',"sex": "man"};

JSON字符串:仅仅只是一个字符串,内部存的数据由json对象得到。不截取的话没办法读取其中存储的数据,不能直接使用。

  • var str2 = '{"name": "zhangsan", "sex": "man"}'; // 花括号{}两边有 ' '

四、常用注解

jackson中的序列化和反序列化注解,使用时需要引入jackson的maven包

@JsonProperty: 序列化反序列化都生效

@JsonAlias :仅反序列化生效

 
posted @ 2022-04-25 01:13  zhegeMaw  阅读(141)  评论(0编辑  收藏  举报