JSON的使用

一.json常用转换方法

1.list

List list = new ArrayList(); list.add("first"); list.add("second"); JSONArray jsonArray2 = JSONArray.fromObject(list);

2.map

Map map = new HashMap(); map.put("name", "json"); map.put("bool", Boolean.TRUE); map.put("int", new Integer(1)); map.put("arr", new String[] { "a", "b" }); map.put("func", "function(i){ return this.arr[i]; }"); JSONObject json = JSONObject.fromObject(map);

3.bean

JSONObject jsonObject = JSONObject.fromObject(new JsonBean());

4.数组

boolean[] boolArray = new boolean[] { true, false, true }; JSONArray jsonArray1 = JSONArray.fromObject(boolArray);

5.一般数据

JSONArray jsonArray3 = JSONArray.fromObject("['json','is','easy']" );

6.beans

List list = new ArrayList(); JsonBean2 jb1 = new JsonBean2(); jb1.setCol(1); jb1.setRow(1); jb1.setValue("xx"); JsonBean2 jb2 = new JsonBean2(); jb2.setCol(2); jb2.setRow(2); jb2.setValue(""); list.add(jb1); list.add(jb2); JSONArray ja = JSONArray.fromObject(list);

二.HTML页面将String转换成json

eval()

function testFunction() { var jsonStr = '${str}'; var dataObj = eval("(" + jsonStr + ")");//转换为json对象 $.each(dataObj.info, function(idx, item) { alert("name:" + item.uuid + " , vaddress:" + item.vaddress); }); }

三.后台向前台传json

1.使用转义符  \

2.交给前台来处理 eval()

3.使用json工具类

后台代码:

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1.返回标准的json字符串(双引号要用转义符) //String s = "[{\"id\":1,\"text\":\"Root node\",\"children\":[{\"id\":2,\"text\":\"Child node 1\",\"children\":true},{\"id\":3,\"text\":\"Child node 2\"}]}]"; //2.前台使用eval()函数将string装换成json格式 //String s = "[{id:1,text:'Root node',children:[{id:2,text:'Child node 1',children:true},{id:3,text:'Child node 2'}]}]"; //3.使用json工具类 JSONArray s = getJson(); response.setContentType("json"); response.getWriter().print(s); } private JSONArray getJson() { JSONObject jo1 = new JSONObject(); JSONObject jo2 = new JSONObject(); jo1.put("id", 2); jo1.put("text", "Child node 1"); jo2.put("id", 3); jo2.put("text", "Child node 2"); JSONArray jsonArray = new JSONArray(); jsonArray.add(jo1); jsonArray.add(jo2); JSONObject jsonObject = new JSONObject(); jsonObject.put("id", 1); jsonObject.put("text", "Root node"); jsonObject.put("children", jsonArray); JSONArray json = new JSONArray(); json.add(jsonObject); return json; }

前台代码:

<div id="jstree"></div> <script> $(function() { $.ajax({ url : "IndexServlet", datatype : "json", success : function(o) { create(o); } }); }); function create(data) { //data = eval("(" + data + ")"); $('#jstree').jstree({ "core" : { "data" : data }, }); } /* $(function() { $('#jstree').jstree({ 'core' : { 'data' : { "url" : "IndexServlet", "data" : function(node) { return { "id" : node.id }; }, "dataFilter" : function(o) { o = eval("(" + o + ")"); console.info(o); return o; } } } }); }); */ </script>
点赞
收藏

评论区

加载中...

相关推荐

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

java8对集合的处理

publicstaticvoidmain(String\\args){List<StudentlistLists.newArrayList();list.add(newStudent("测试","男",18));list.add(newStudent("开发","男",20));list.add(n

[C#]ArrayList、string、string[]之间的转换

1、ArrarList转换为string\\:  ArrayListlistnewArrayList();  list.Add("aaa");  list.Add("bbb");  string\\arrString(string\\)list.ToArray(typeof(string));2、string\\转换

Java Lambda 常用案例

List类的Stream处理:List<StringlistnewArrayList<String();list.add("djk");list.add("djk1");list.add("djk12");//maplistlist.stream().ma

Java初始化List的五种方法

在Java中初始化List的五种方法Java中经常需要使用到List,下面简单介绍几种常见的初始化方式。方案一、构造List后使用List.add初始化。List<StringstringListnewLinkedList<();stringList.add("a");s

Java 删除List元素的正确方式

方式一:使用Iterator的remove()方法publicclassTest{publicstaticvoidmain(Stringargs){List<StringlistnewArrayList<();list.add("aa"

JSON的使用 - HelloWorld