Json(一)

(一)什么是JSON?what?

①:JavaScript  Object Notation---》JS对象标记。是一种轻量级数据交换格式 。(JavaScript的原生格式,意味着JavaScript可以直接处理JSON数据)

②:目的【完全独立于编程语言的文本格式,来存储和表示数据】。

(二)为什么?why?

好处:①简洁和清晰的层次结构。

   ②易于阅读和编写。

   ③易于机器解析生成提升网络传输效率

(三)适用类型?

①:字符串、数字、对象、数组等。【对象数组是比较特殊且常用的两种类型】

   1.1对象表示为键值对

   1.2数据由" ," 分隔

   1.3花括号{ }保存对象

   1.4方括号[ ]保存

eg: 

JSON 键值对是用来保存 JS 对象的一种方式,和 JS 对象的写法也大同小异,键/值对组合中的键名写在前面并用双引号 "" 包裹,使用冒号 : 分隔,然后紧接着值:
{"firstName" : "Json"}
这很容易理解,等价于这条 JavaScript 语句:{firstName : "Json"}
②Json与JS对象的关系:
     2.1  JSONJS 对象字符串表示法,它使用文本表示一个 JS 对象的信息,本质是一个字符串。
eg:var obj ={a : 'Hello' ,b : 'World' };--->这是一个JSON对象。注意健名也是可以用引号包裹的。
        var  json= ' { "a" :"Hello" ,"b" :"World" } ' ;这是一个JSON字符串。【多个单引号 ' '
 

(四)怎么用?how?

①:简单解析json字符串【根据它的键值对来】

eg :  JSONObject  jsonObject = JSONObeject.fromObject(jsonStr);

再根据json中的键得到它的值:

String  name=jsonObject.getString("name");

②、JSON 字符串 与 java 对象的转换

   1. java 对象列表-->json对象数组--->并转为Json字符串

    JSONArray array = JSONArray.fromObject(list);
    String jsonstr = array.toString();

   2. java对象--->json对象,--->Json字符串

  JSONObject object = JSONObject.fromObject(user);
  Log4jInit.ysulogger.debug(object.toString());

    3.JSON字符串-->JAVA 对象数组
  JSONArray json = JSONArray.fromObject(userStr);//userStr是json字符串
  List<User> users= (List<User>)JSONArray.toCollection(json, User.class);

    4.JSON字符串--->JAVA 对象

  JSONObject jsonobject = JSONObject.fromObject(jsonStr);
  User user= (User)JSONObject.toBean(object,User.class);     

posted @ 2018-02-26 17:40  瀧思葉  阅读(146)  评论(0编辑  收藏  举报