json插件提供了一种名为json的resulttype,一旦为某个action指定了一个类型为json的result,则该result无需映射到任何视图资源。因为json插件会负责将action里的状态信息序列化成json格式的数据,并将该数据返回给客户端页面的javascript。

  struts2提供了一种可插拔方式来管理插件,安装struts2的json插件与安装普通插件并没有太大的区别,一样只需要将struts2插件的jar文件复制到web应用的web-inf/lib路径下即可。

  (1)登陆http://code.google.com/p/jsonplugin/downloads/list站点,下载struts2的json插件的最新版本,当前最新版本是0.7,我们可以下载该版本的json插件。

  处理该请求的action类代码如下:     在上面代码中,使用了json注释,注释时指定了name域,name域指定action属性被序列化成json对象的属性名。除此之外,json注释还支持如下几个域:

  format:设置用于格式化输出、解析日期表单域的格式。例如"yyyy-mm-dd't'hh:mm:ss"。

  配置该action的struts.xml文件代码如下:    在上面配置文件中有两个值得注意的地方:

  第一个地方是配置struts.i18n.encoding常量时,不再是使用gbk编码,而是utf-8编码,这是因为ajax的post请求都是以utf-8的方式进行编码的。

  第二个地方是配置包时,自己的包继承了json-default包,而不再继承默认的default包,这是因为只有在该包下才有json类型的result。

  在上面配置文件中有两个值得注意的地方:

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐