您的位置:首页 > Web前端 > JavaScript

后台对象转换成json返回前台

2017-12-26 19:39 316 查看
一、数据封装

1. List集合转换成json代码

  List list = new ArrayList();

  list.add( "first" );

  list.add( "second" );

  JSONArray jsonArray2 = JSONArray.fromObject( list );

2. Map集合转换成json代码

  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转换成json代码

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

4. 数组转换成json代码

  boolean[] boolArray = new boolean[] { true, false
4000
, true };

  JSONArray jsonArray1 = JSONArray.fromObject(boolArray);

5. 一般数据转换成json代码

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

二、JAR包简介

在你的应用中加入引入JSON-lib包,JSON-lib包同时依赖于以下的JAR包:下载地址:http://json-lib.sourceforge.net/

1.commons-lang.jar

2.commons-beanutils.jar

3.commons-collections.jar

4.commons-logging.jar

5.ezmorph.jar

6.json-lib-2.2.2-jdk15.jar

用法同上

  JSONObject jsonObject = JSONObject.fromObject(message);

  getResponse().getWriter().write(jsonObject.toString());

当把数据转为json后,用如上的方法发送到客户端。前端就可以取得json数据了。

也可以用

List list1 = new ArrayList<ListDate>()

ListDate ListDate2 = new ListDate();

ListDate2.setId(examSubject.getId());

ListDate2.setValue(examSubject.getSubjectName());

list1.add(ListDate2);

JSONArray jsonArray1 = JSONArray.fromObject(list1);

前台循环取

  $.each(date, function(i, obj) {

  $("#examName").append("<option value='" + obj.id + "'>"+ obj.value+ "</option>");

});

三、JSONObject对象使用

JSON-lib包是一个beans,collections,maps,java arrays
和XML和JSON互相转换的包。在本例中,我们将使用JSONObject类创建JSONObject对象,然后我们打印这些对象的值。为了使用JSONObject对象,我们要引入"net.sf.json"包。为了给对象添加元素,我们要使用put()方法。

样例:

运行结果:

JSONObject 在线API:http://json-lib.sourceforge.net/apidocs/jdk15/index.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐