阅读(4718) (22)

java与javascript之间json格式数据互转介绍

2016-08-17 15:58:13 更新

javascript中对象与字符串的互转 

对象转为字符串:通过JSON.encode方法,这个是json.js里面的方法,引入到当前文件就可以了。 
字符串转换为对象:①使用JSON.decode方法,同上,引入js就可以了。②jQuery中有个方法,$.parseJson也可以实现。 

java中json字符串与对象的互转 

对象转换为字符串:在struts2-json-plugin.jar中有个JsonUtil.serial方法。也可以自己自由定制,通过字符串拼接的方式实现,json字符串的属性一定要是双引号,单引号或者是不适用都会报错。eg:"{"id":123,"name":"wch","children":[{"id":456}]}", 
字符串转换为对象:JsonObject.fromObject(),如果是数组就使用JsonArray.fromObject().json对象中只有对象或者是数组。不过这个只能转换当前的属性,如果对象中有数组或者是列表就要自己再次赋值转换。就比如上面的json字符串你是不能一步到位的,即使对象有个属性是children这个list也不会自动将字符串给你转换为列表的。 

java字符串转换为javascript对象 

java和js的接触只会发生在jsp中(我目前是这么认为的),在jsp中只要 var obj = <%=javaStr%>就可以了。也可以先赋值给js中的字符串var obj = "<%=javaStr%>"再使用第一步中的字符串转换为对象。 

javascript字符串转换为java对象 

如果要自己实现的话要,①先转换为js中的字符串,通过参数传递的方式赋值给java中的属性。②使用低第二步的方法进行转换。如果使用struts2的话这一切都显得那么易如反掌了,你要做的就是定义action中同名的属性。