在 Struts2 中要使用 Ajax 获得 Json 数据我认为目前还是 struts2.docVIP

在 Struts2 中要使用 Ajax 获得 Json 数据我认为目前还是 struts2.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在 Struts2 中要使用 Ajax 获得 Json 数据我认为目前还是 struts2-json-plugin 了。当然你你可以用手工用像?XStream、Google Gson、Jackson?这样的工具手工把 Java 对象转换成 Json 字符串再写往 Response 去,要写的代码自然多不了,还得留心字符集与 content type。而 struts2-json-plugin 毫无疑问是与 Struts2 最亲近了,只需你配置一些属性就能得到你想的结果。 本想分几篇逐步介绍如何使用 struts2-json-plugin 的,然而就在现在发现官方的 struts2-json-plugin 指南已经很详细了,所以干脆翻译一下//docs/json-plugin.html,同时自己加深对它的理解。 JSON 插件提供了一个 json 结果类型来把 action 序列化成 JSON. 这一序列化的过程是递归的, 意即整个对象图,从 action 类开始 (未包括基类) 将会被序列化 (可以用 root 属性来指定自己的根对象). 如果使用了 json 拦截器,?action 将可通过请求中的 JSON 内容组装出来,?该拦截器遵循以下几条规则: content-type 必须为 application/json JSON 内容必须是格式良好的, 参考??中的语法. Action 里必须有欲获取值的属性的相应?public 的?setter 方法. 所支持的类型有:?原始类型 (int,long...String), Date, List, Map, 原始类型数组,?其他的类 (将会支持更多), 和其他类型的数组. JSON 中的任何将要被填入到 list 或 map 中的对象会是 Map?类型(属性映射到值), 任何整数都是 Long 类型,?任何小数会是 Double 类型,?任何数组会是 List 类型. 给定下面的 JSON 字符串: 01 02 03 04 05 06 07 08 09 10 { ???doubleValue: 10.10, ???nestedBean: { ??????name: Mr Bean ???}, ???list: [A, 10, 20.20, { ??????firstName: El Zorro ???}], ???array: [10, 20] } ?action 中必须有一个 setDoubleValue 方法, 参数为 float?或者 double(拦截器将会把值转换为相应的类型).?还必须有一个 setNestedBean 方法,它的参数类型可以为任何类类型, 其中含有参数为 String 的?setName 方法. 还必须有一个参数为 List 的 setList 方法, 这个 List 中将会包含: A (String), 10 (Long), 20.20 (Double), Map (firstName - El Zorro). setArray?方法可以是 List,?或任何数字类型数组作参数的. 序列化你的对象成 javascript 的 JSON, 参考?json2 安装 本插件可通过把插件? jar 包到你的应用的?/WEB-INF/lib?目录来完成安装. 没有别的文件需要拷贝或被创建. 使用 maven 的话,?加入下列到你的 pom 中: 1 2 3 4 5 6 7 8 9 dependencies ???... ???dependency ???????groupIdorg.apache.struts/groupId ???????artifactIdstruts2-json-plugin/artifactId ???????versionSTRUTS_VERSION/version ???/dependency ???... /dependencies ? 定制化序列化和反序列化 使用 JSON 注解来达到定制序列化和反序列化过程.?可用的 JSON 注解如下: 名称 描述 默认值 序列化 反序列化 name 定制字段名 empty yes no serialize 标识为可被序列化 true yes no deserialize 标识为可被反序列化 true no yes format 用于格式化或解析 Date 字段的格式 yyyy-MM-ddTHH:mm:ss yes yes 排除属性 逗号分隔的正则表达式列表可传递给 JSON Result 和 Interceptor(拦截器), 被任何 一个正则表达式匹配的属性将会在序列化过程时忽略掉: 01 02 03 04 05 06 07 08 09 10 11 12 13 1

文档评论(0)

youyang99 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档