記事のディレクトリ
データ交換フォーマットは何ですか?
同社のWebプロジェクト、クライアントとサーバの交換、共通のデータ形式でJSON
、XML
そのためFTLテンプレートエンジンに。現時点ではクライアントの要求に、同社のプロジェクトのサーバーの応答のほとんどは、JSONデータ形式を返されます。
:一般的に分割クライアントは、2つのカテゴリに分類され、携帯端末、PC端末。
ios
そして安卓
、通信手段を使用することがあるhttp
+契約json
安らかなスタイル、プロジェクトの方法を取るために、現在、ほとんどのインターネット企業です。
xml
重い重量、送信リソース消費(ブロードバンド)ので、少なく使用されています。したがって、通常の状況下では、銀行のプロジェクトは、使用http
プロトコル+ xml
大半を。
JSON
私たちがJSONであるかを知るために必要なすべての最初の?
JSON
(JavaScript Object Notation
、JSオブジェクト表記)は、軽量データ交換フォーマット。これは、(欧州コンピュータ社会規範は、JSによって確立された)のECMAScriptのサブセットに基づいて完全に使用されるストアにテキスト形式のプログラミング言語の独立したデータを表します。シンプルかつ明確な階層メイクJSON理想的なデータ交換言語。簡単に解析し、生成し、かつ効果的にネットワーク伝送の効率を改善するために、マシンにも簡単に読み取りおよび書き込み、これだけに。
簡単に言えば:JSON
に比べ使いやすい明確かつ軽量データ交換フォーマット、構造、さXML
ヘビーデータ交換フォーマットは、より使いやすいので、クライアントとサーバー側が使用してJSON
通信するためにデータ交換フォーマットの方法を。
JSONデータ構造を次のように
{
"fruit": [
{
"name": "苹果",
"address": "烟台",
"price": "12.9",
"unit": "kg"
},
{
"name": "香蕉",
"address": "海南",
"price": "6.5",
"unit": "kg"
}
]
}
json
データは、2つの形式で提示オブジェクト / 配列。先頭端としてラップ値が先のターゲット・オブジェクトフォーマット記憶されています。それは表すの数がロードされる配列、オブジェクトを。"{"
"}"
"{}"
json
key value
"[]"
json
json
一般的に使用されるJSONの構文解析フレームワーク
fastjson
(アリ)、 gson
(グーグル)、jackson
(SpringMVC自身)
APIの例fastJson用
XML
まず第一に、私たちはどのようなXMLである知っている必要がありますか?
拡張可能マークアップ言語サブセット、標準一般化マークアップ言語( Extensible Markup Language
略称XML
)。構造化マークアップ言語を持っている電子文書のためのマーカーです。主な役割は、いくつかのデータを保存したり、などの設定ファイルに使用する(記述)することでspring
の使用上のプロジェクトxml
ファイル。
使用するとxml
、ファイルのヘッダ構造に注意を払うバージョン番号を宣言する必要があり、エンコードする必要があります。xml
方法タグが提示し、ネストされた層は、それがツリー構造として見ることができます。
XMLデータ構造を次のように
<?xml version="1.0" encoding="UTF-8"?>
<students>
<student id="1">
<name>小明</name>
<address>深圳</address>
<sex>1</sex>
</student>
... ...
</students>
XML構文解析モード
Dom4j
、Sax
、Pull
、一般的に、これらのタイプ。
dom4j
それは、ファイルがメモリにロードされた後であるため、大容量のファイルを解析するには適していませんので、メモリのそこかもしれ、sax
それは彼が、XMLの大きなファイルを解析することができるように、XMLを解析するためにイベントに基づいており、それは正確に、このためでありますので、dom4j
我々は柔軟なXML CRUDとナビゲーションが、そう強くないサックスの柔軟性することができ、それほどsax
頻繁に大規模な解析に使用xml
するためにファイルを、しかしxml
、いくつかの柔軟な(ファイルcrud
使用)の操作をdom4j
。
パースの会社のプロジェクトxml
Iの使用をdom4j
使用して、dom4j
主に操作するDocument
オブジェクトを。作成SAXReader
対象のファイルで読み取るオブジェクトを取得しDocument
、そのオブジェクトは非常に便利です後、次にルートを取得しroot
、いくつかの反復のような操作属性/テキストとを得るために、後にノードを、操作があります。