好记性不如烂笔头

有人的地方就有江湖。。。。

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

struts2与ajax结合

按照惯例:

    * 加包

        json-lib-2.1.jar、struts2-json-plugin-2.1.8.1.jar

    * 在struts2的配置文件中

      

<package name="userjson" namespace="/" extends="json-default">
         <action name="userJSONAction_*" method="{1}" class="cn.itcast.struts2.action.UserAction">
             <result type="json" name="jsonString"></result>
         </action>
</package>

    利用struts2与ajax结合的时候 extends应该继承json-default,在result中,有一个类型为json,result内容不写,因为返回的是数据。

    * 在action中什么样的数据可以返回到json的客户端

         * 在action中有属性,并且属性有get方法,这样的属性可以返回到客户端

         * 在action中,有getXxx方法,这种情况会构造出一个属性;把get去掉,把剩余的首字母为小写,可以返回到客户端,值为get方法的返回值。

         * 在action中,如果有get方法,但这个方法返回的是一个对象,而这个对象和数据没有关系,则这个方法上加上注解(@JSON(Serializable=false)) 就可以忽略该方法。

         * 在action中,如果有方法不需要返回到客户端,最好不要以get开头。

struts2-json-plugin-2.1.8.1.jar中的struts-plugin.xml:

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
        "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
    <package name="json-default" extends="struts-default">
<!--自定义结果集,处理action中的属性怎么样返回到客户端-->
<result-types> <result-type name="json" class="org.apache.struts2.json.JSONResult"/> </result-types>
     <!--拦截器 提交ajax请求时传递的参数与模型驱动和属性驱动连接的桥梁-->
<interceptors> <interceptor name="json" class="org.apache.struts2.json.JSONInterceptor"/> </interceptors> </package> </struts>

 

posted on 2013-12-02 22:55  划根火柴点根烟  阅读(268)  评论(0编辑  收藏  举报