天天看點

java xml Serialize DeSerialize

在反序列化的時候同樣用到了樹。工作原理見下。

1.最首先的結點對應着樹的根節點;

2.往後每遇到一個标簽,就申請一個結點作為目前節點的孩子節點;

3.若遇到的是正文,就把内容儲存在目前節點的資料域中;

4.若遇到閉合标簽,操縱樹的指針指向回退到目前結點的父節點。

5.若xml資料合法,最終指針退回到根節點,資料就儲存在樹中。

至此一棵樹就構造完了,有名字有内容,再把用這些資訊構造一個對象就不難了。

網絡通信中傳輸對象的需求太普遍了,于是人們就想到了用字元串來描述一個對象。主流的格式有兩種,xml與json。前者是有層次的一些标簽對;後者隻是鍵值對,用大括号作為邊界。因為json中少了閉合标簽,是以傳輸同樣的對象比起xml會占用更少的位元組長度。但xml的優點在于更适合人來閱讀,因為它層次感很強。

跟c#自帶的 serialization類一樣友善!

javax.xml.parsers.* 太難用啦