1. 程式人生 > >JSON資料格式:以及XML檔案格式,YML檔案格式,properties檔案格式

JSON資料格式:以及XML檔案格式,YML檔案格式,properties檔案格式

JSON資料格式:以及XML檔案格式,YML檔案格式,properties檔案格式

 

資料格式:

json資料格式:屬於輕量級資料格式,是javascript的一種描述資料的格式。具有易於解析,語法簡單的特點,廣泛應用與網路間的資料傳輸。

{"name":"Li","age":"18"}
 

XML資料格式:屬於重量級資料格式,在以前主要是用XML進行資料的傳輸,但他的格式比較複雜,傳輸時存在大量冗餘資料。目前主要作為配置檔案使用

  1.   <books>
  2.   <book>
  3.   <author>唐家三少</author>
  4.   <price>20</price>
  5.   <name>斗羅大陸</name>
  6.   </book>
  7.   <book>
  8.   <author>我吃西紅柿</author>
  9.   <price> 20</price>
  10.   <name>星辰變</name>
  11.   </book>
  12.   < /books>

YML檔案格式:一般作為配置檔案使用

  1.   spring:
  2.   dataSourse:
  3.   url:jdbc:mysql: //127.0.0.1:3306/javase
  4.   name:root
  5.   className:com.mysql
  6.   password:******

properties檔案格式:一般作為配置檔案使用,可以使用Properties工具類進行解析。格式為:key=value

classname=com._51doit.demo01
 

JSON基本語法:

JSON中 { } 表示物件,內部的元素是以字典 / 鍵值對的形式存在的。對於任意一種物件 / 變數的資料型別都是用 var 型別來表示的,物件內的欄位作為屬性,比如:name

  1.   #1.物件的簡單格式
  2.   var user = {"name":"Li","age":"18"}
  3.   呼叫方式:user.name --- Li
  1.   #2.陣列/集合格式,使用陣列[]可以儲存多個物件
  2.   var arr =
  3.   [
  4.   {"name":"Li","age":"18"},
  5.   {"name":"ZJ","age":"20"}
  6.   ]
  7.   呼叫方式:arr[ 0].name --- Li
  1.   # 3.物件的巢狀格式:不允許交叉巢狀
  2.   var map =
  3.   {
  4.   "name":"Li",
  5.   "user":{"name":"zhang","age":18},
  6.   "users":[
  7.   { "name":"Li","age":"18"},
  8.   { "name":"ZJ","age":"20"}
  9.   ]
  10.   }
  11.   呼叫方式:
  12.   map.name --- Li
  13.   map.user.name --- zhang
  14.   map.users[0].age --- 18

 可以在maven倉庫中下載JSON的資料轉換格式包,比如阿里巴巴開發的fastjson的jar包。基本步驟如下:

1.在maven repository官網下載JSON格式轉換的jar包;

2.在IDE的專案的以及目錄下新建檔案lib,然後點中jar包右鍵 | build path。

JSON和java的格式轉換:

注:將json格式的字串轉換成java物件的時候,要求java中的屬性名和json中的key值一致。

在不熟悉的類中尋找合適的方法時,主要關注傳入引數和返回值型別。

  1.   public static void main(String[] args){
  2.   //User為自定義類,新建java物件
  3.   User user = new User();
  4.   user.setName( "七月流火");
  5.   user.setAge( 25);
  6.   //將物件轉為JSON格式的字串
  7.   String str = JSON.toJsonString(user);
  8.   System.out.println(str);
  9.    
  10.   //將json格式的字串轉換成java物件
  11.   User user2 = JSON.parseObject(str,User.class);
  12.   System.out.println(user2)
  13.   }
  14.   ========================================
  15.   { "age":25,"name":"七月流火"}
  16.   User [name=七月流火, age= 25]