json-总结

 

JSON:

        com.abchina.dams.core.struts2.json.JSONUtil

        序列化:String json = JSONUtil.serialize(user);//这个依赖于jackson,更简洁的依赖json-lib

        反序列化:

                UserObject user = JSONUtil.deserialize(json, UserObject.class);

                如果反序列化为List,内部对象为xxxObject

                JSONUtil.deserialize(json, List.class,xxxObject.class);

                如果反序列化为Map,内部对象为String,xxxObject

                JSONUtil.deserialize(json, map.class,String.class,xxxObject.class);

        Struts2 JSON插件,自动将Struts2 Action中的对象自动序列化为JSON格式数据

                root(必选参数) 指定了要序列化为JSON数据的对象为list,testVO

                <param name="root">list,testVO</param>

       有很多json插件org.codehaus.jackson

 

 

JSON天生是为JS准备的,基于txt格式

        可以传输 String,Number,Boolean,数组,Object 对象

        String,Number,Boolean

                12345(整数),-3.9e10(浮点数),true、false 和 null 都没有双引号,否则将被视为一个 String。

        数组:

                ["abc",12345,false,null]

        对象:嵌套的复杂对象。

                {"name":"Michael","address":

                  {"city":"Beijing","street":" Chaoyang Road ","postcode":100025}

                }

 

 

json自己的js处理json串。//如此的简单。

        function handleJson() {

                var j={"name":"Michael","address":

                        {"city":"Beijing","street":" Chaoyang Road ","postcode":100025}

                };

                document.write(j.name);

                document.write(j.address.city);

        }

 

JSON--字符串--互相转换: 

var jsonObject = eval("(" + jsonFormat + ")");

//圆括号:eval构造对象的语法。

JSON对象转换成字符串: 

var js字符串 = JSON.stringify(json对象); 

 

大部分Ajax 框架早已包含了处理 JSON 数据的能力

 

如果用数组的话可以这样

JScript codevar mainArray = [

    {"tag" :"任务","num":2},

    {"tag" :"工作" ,"num":6}

];

mainArray .push({

   "tag":"开会","num":3

});

alert(mainArray [2].tag);

mainArray.shift();

alert(mainArray [1].tag); 

 

纯JSON可以这样

JScript codevar json={

   id:"id1",

   name:"开心"

};

//add property 

json["gender"]="男" json.age=26可以么?

json["age"]=26;

        json[""+startKey+""]=startValue;//key,value都是变量

alert(json.age);

//delete property

delete json["age"];

alert(json.age);

alert(json.gender);


你可能感兴趣的:(json)