什么是json?
json(JavaScript Object Notation)javascript对象标记,是一种JavaScript轻量级数据交互格式,主要应用于Ajax编程。json的两种数据格式?
格式一:对象。
json通过用{ }来代表一个对象,其数据结构方式为{ value:key,value:key….}。其中,value代表的是属性,比如颜色;而key代表的是属性值,比如粉色。因为value键本身就为字符串常量,所以加不加引号是等价的。即:{color:”粉色”}=={color:“粉色”}。但是key就不一样了,加了引号代表的是字符串,不加引号代表的是对象。即:{color:”粉色”}不等于{color:粉色}。key的类型可以是数字、字符串、对象和数组。
格式二:数组。
json通过用[ ]来代表数组,其数据结构为[ C,S,D,N ]。其中,能够存在的数据类型可以是数字、字符串、对象和数组。
在json中,对象和数组可以组合使用,所以它们能够组合出很非常多的数据结构。区分json字符串和json对象
var JSONstr = ‘{car:[{“奇瑞QQ”:”黄色”},{“二手奥拓”:”蓝色”}]}’;
var JSONobj = {car:[{“奇瑞QQ”:”黄色”},{“二手奥拓”:”蓝色”}]};
如果JSON对象最外层没有单双引号的话,就说明这是一个字符串对象。json字符串转换成json字符串
var JSON = eval(“(“+JSONstr+”)”);这样得到的结果就是json对象了。JSON插件
在java中,可以通过jsonlib插件,在java对象和json之间做转化。
在使用jsonlib插件的时候,应该导入6个包。因为其他5个jar包是json-lib.jar中一些需要用到的方法的支持包。jsonlib能够做些什么?
在ajax请求参数和响应数据过程中,支持将javabean、map、list、arry转换成json字符串或对象,还支持将json字符串转换成javabean对象。
1)转换数组、List集合成json字符串
JSONArray jsonArray = JSONArray.fromObject(这里的参数为要转换的数组或者List集合);
2)将JavaBean或者Map集合解析成JSON对象
JSONObject jsonObj = JSONObject.fromObject(这里的参数为要转换 的javabean或Map集合);7.如果javabean中有一个属性不想在json中生成,怎么做?
通过JsonConfig对象配置哪些属性不参与转换。
JsonConfig jsonconfig = new JsonConfig();
jsonconfig.setExcludes(new String[]{"不想要参与转换的属性名称"});
//在进行转换的时候,带上配置信息当参数,便可以达到目的。
JSONObject jsonObj = JSONObject.fromObject(javabean或是Map集合,jsonconfig);