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. C#基础02

    学习"传智播客视频基础"做的课堂笔记,您有幸读到,若其中有错误部分,请您务必指明.另外请给出您的宝贵建议,谢谢. **************基础知识************ 1: ...

  2. List<T>保存为XML文件

    今天我们学习怎样把List<T>写成一个XML文件保存起来.因为我们在做动态网站开发时,需要对一些不太常变化的数据产生为XML文件,让程序直接去读取,而不是每次是SQL数据库取. 为了解决 ...

  3. Asp.net Mvc模块化开发系列(目录)

    模块化开发是非常重要的,模块化开发是个系统性问题,为此我觉得有必须要写一个系列的文章才能基本说的清楚 那又为什么要写一个目录呢? 其一.是对我昨天承诺写一个系列新的文章的回应 其二.是先写出一个大纲, ...

  4. SSH实例(7)

    运行结果. 浏览课程: 添加课程: 还有删除课程,这里就不演示了.

  5. How to Access MySQL with Python Version 3.4

    http://askubuntu.com/questions/630728/how-to-access-mysql-with-python-version-3-4 How to Access MySQ ...

  6. Android中自定义ProgressBar

    <ProgressBar             android:id="@+id/more_vprogress_more"             android:layo ...

  7. JQuery实现对勾事件代码

       1.JQuery选择器中使用变量实现动态选择解决方案: <table> <tr> <th>用户名</th> <th>状态</th ...

  8. ActiveMQ消息队列介绍

    ActiveMQ是一个开源兼容Java Message  Service  (JMS) 1.1面向消息的中件间. 来自Apache Software Foundation. ActiveMQ提供松耦合 ...

  9. GJM : 【技术干货】给The Lab Renderer for Unity中地形添加阴影

    感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...

  10. 在Hyper-V上安装配置Windows负载均衡NLB

    搭建过程 Hyper-V 是自Windows Server2008 以来提供的虚拟机管理软件,它操作简便,功能也不错,可以方便的在它里面安装各种操作系统,如图所示: 现在,想利用这几台虚拟服务器搭建一 ...