2.3. json视图 
返回json视图有两种方法: 
@Ok("json")  与@Ok(“raw:json”) 
2.3.1. @Ok("json") 
(1) 如果入口函数返回的是字符串,则在这客户端得到的是json形式的字符串。客户端必须解析成json对象; 
  例:

  1. @Ok("json")
  2. public Map userlist( @Param("no")String no,
  3. @Param("name")String name,@Param("enable")boolean enable,
  4. @Param("page")Integer page,@Param("rows")Integer rowsCount,
  5. HttpServletRequest request,HttpServletResponse resp)
  6. {
  7. ……
  8. }

(2) 如果入口函数返回类型是map,list,  java bean等,则直接返回的是json对象。 
客户端直接使用,无须再用eval之类的进行解析。可直接用于jqGrid等js组件。 
例:

  1. @At("/power/admin/userlist_do")
  2. @Ok("json")
  3. public Map userlist( @Param("no")String no,
  4. @Param("name")String name,@Param("enable")boolean enable,
  5. @Param("page")Integer page,@Param("rows")Integer rowsCount,
  6. HttpServletRequest request,HttpServletResponse resp)
  7. {
  8. //  要返回的json对象
  9. //        {
  10. //            "page":2,
  11. //            "total":2,
  12. //            "records":2,
  13. //            "rows":[
  14. //                {"no":"1","name":"aa" },
  15. //                {"name":"bb" ,"no":"2"}
  16. //            ]
  17. //        }
  18. Map<Object, Object> map = new HashMap<Object, Object>();
  19. map.put("page", 2);
  20. map.put("total", 2);
  21. map.put("records", 2);
  22. List<Object> rows = new ArrayList();
  23. Map<Object, Object> map1 = new HashMap<Object, Object>();
  24. map1.put("no", "1");
  25. map1.put("name", "aa");
  26. rows.add(map1);
  27. map1 = new HashMap<Object, Object>();
  28. map1.put("no", "2");
  29. map1.put("name", "bb");
  30. rows.add(map1);
  31. map.put("rows", rows);
  32. return map;
  33. }

2.3.2. @Ok(“raw:json”) 
  入口函数返回的是字符串,但在客户端得到的是json对象。客户端直接使用,无须再用eval之类的进行解析。可直接用于jqGrid等js组件。 
例:

  1. @At("/power/admin/userlist_do")
  2. @Ok("raw:json")
  3. public String userlist( @Param("no")String no,
  4. @Param("name")String name,@Param("enable")boolean enable,
  5. @Param("page")Integer page,@Param("rows")Integer rowsCount,
  6. HttpServletRequest request,HttpServletResponse resp)
  7. {
  8. //  要返回的json对象
  9. //        {
  10. //            "page":2,
  11. //            "total":2,
  12. //            "records":2,
  13. //            "rows":[
  14. //                {"no":"1","name":"aa" },
  15. //                {"name":"bb" ,"no":"2"}
  16. //            ]
  17. //        }
  18. String json =  "{ "+
  19. "\"page\":2,"+
  20. "\"total\":2,"+
  21. "\"records\":2,"+
  22. "\"rows\":["+
  23. "{\"no\":\"1\",\"name\":\"aa\" },"+
  24. "{\"name\":\"bb\" ,\"no\":\"2\"}"+
  25. "]"+
  26. "}";
  27. return json;
  28. }
 

nutz的json视图的更多相关文章

  1. 自定义spring mvc的json视图

    场景 前端(安卓,Ios,web前端)和后端进行了数据的格式规范的讨论,确定了json的数据格式: { "code":"200", "data&quo ...

  2. springboot(五)使用FastJson返回Json视图

    FastJson简介: fastJson是阿里巴巴旗下的一个开源项目之一,顾名思义它专门用来做快速操作Json的序列化与反序列化的组件.它是目前json解析最快的开源组件没有之一!在这之前jaskJs ...

  3. Json格式示意图

    json视图工具:http://www.bejson.com/jsonviewernew/ 一.Json格式化,(看到数组里面又有数组一下子疑问不是合格json):尾门地址查询: =>=> ...

  4. 关于json序列化和反序列的问题,没事写个案例,希望能帮到那些需要帮忙的朋友!

    现在关于json的读写问题,有许许多多的解决方法,因人而异,根据实际问题去选择自己想要的最容易方法.我觉得自带的Newtonsoft.Json是个不错的选择,随便写两个例子吧! 一:关于简单的json ...

  5. json的解释

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言.易于人阅读和编写,同时也易 ...

  6. JSON 数据格式

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言.易于人阅读和编写,同时也易 ...

  7. JSON数据格式

    JSON 数据格式 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言.易于人 ...

  8. JSON 入门

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族 ...

  9. JSON 数组格式

    JSON 数据格式 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言.易于人 ...

随机推荐

  1. JavaScript和DOM的产生与发展

    首先本篇文章摘自:http://itbilu.com/javascript/js/Vyxodm_1g.html 非常感谢本篇文章的作者,他理清了我映像中混乱的DOM Level级别.让我知道了DOM0 ...

  2. LeetCode - Triangle

    题目: Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjace ...

  3. JS打印页面指定区域

    错误的写法: //打印 function printPage(areaId) { if (parent.$("#PrinFrame").length == 0) { parent. ...

  4. 自己对Debug的一些感悟

    A.13-03-06记. 1.当项目中发现bug的时候,首先考虑如何重现,能够重现的bug比较好找寻根源. 2.思考下以前是否发现过类似bug,是否由一些外部配置所决定. 3.有循环时候注意临界条件.

  5. javascript学习笔记2-typeof、Number类型、Boolean()

    1.typeof操作符 对一个值使用typeof操作符可能返回下列某个字符串 "undefined"——这个值未定义 "boolean"——这个值是布尔值 &q ...

  6. Repository 设计模式介绍

    在DDD设计中大家都会使用Repository pattern来获取domain model所需要的数据. 1.什么是Repository? "A Repository mediates b ...

  7. DCloud与APICloud的对比

    DCloud与APICloud这两家目前应该说是市场占有率和人气较高的国内团队:国内还有一些其他的方案如AppCan.exMobi之类的,但可能是商业运作手法上Big不够,近两年的名气不太大,但各自其 ...

  8. GUID全局唯一标识符

         全局唯一标识符(GUID,Globally Unique Identifier)是一种由算法生成的二进制长度为128位的数字标识符.GUID主要用于在拥有多个节点.多台计算机的网络或系统中. ...

  9. loadrunner用javavuser进行接口测试

    在日常工作中会遇到被测试系统通讯都是通过加密的数据包,加密算法是公司自己开发的,并且发送的数据包还要经过系统的压缩,以保证系统的性能.利用loadrunner就无法解决这里的加密的技术问题,利用jav ...

  10. android自动化之monkeyrunner

    一.使用CMD命令打开模拟器 运行monkeyrunner之前必须先运行相应的模拟器或连上设备,不然monkeyrunner无法连接设备. 1.1  用Elipse打开Android模拟器或在CMD中 ...