JSONのデータ構造と使い方

1686 ワード

JSONはXMLに取って代わるデータ構造であり、xmlに比べてコンパクトであり、コンパクトであるため、ネットワーク伝送データがより多くのトラフィックを減少させ、速度を速める.
JSONは文字列ですが、要素は特定の記号で表記されます.
{}二重かっこはオブジェクトを表します
[]中かっこは配列を表す
「」は二重引用符で属性または値です.
:コロンは後者が前者の値であることを示します(この値は文字列、数値、または別の配列またはオブジェクトです).
だから{"name":"beck"}はnameをbeckとするオブジェクトを含むと理解できる
「{"name":"beck"},{"name":"rooney"}」は2つのオブジェクトを含む配列を表す.
もちろん、{"name":["beck","rooney"]}を使用して、上の部分を簡略化することもできます.これはname配列を持つオブジェクトです.
なぜ{name:'json'}検査で合格できなかったのか.
JSON公式サイトの最新仕様では、「キー」または「値」を二重引用符で表す必要があります.
組み合わせの例を示します.
{
    "root": [
        {
            "workDay": "1",
            "productType": "ZT4",
            "customBatch": "",
            "destination": "020"
        },
        {
             "workDay": "7",
             "productType": "ZT4",
             "customBatch": "",
             "destination": "020"
         }]
}

バックグラウンドでjsonオブジェクトを取得する方法はjacksonを推奨します.

private static ObjectMapper mapper = new ObjectMapper();

public static Map<String, List<Map<String, String>>> getJsonData() {
        return (Map<String, List<Map<String, String>>>) mapper.readValue(new File("./x.json"), Object.class);
    }

jodaのコンストラクション関数は、年、月、日、時間、分、秒、ミリ秒の順に表します.
DateTime dateTime = new DateTime(2000, 1, 1, 0, 0, 0, 0);