Struts2JQueryJson

Struts2JQueryJson

资源免费下载地址:http://download.csdn.net/detail/u012750578/6584731

项目结构:

所需jar包:

功能展示:

1、获取单个值:

2、获取UserInfo对象信息

3、获取List集合对象:

4、获取Map集合对象

5、注册


一、实体Bean->UserInfo

package struts2jsonjquery.test.entity;

 

import java.io.Serializable;

/**

 *<p>

 *用户实体类

 *</p>

 */

publicclass UserInfoimplements Serializable {

 

    privatestaticfinallongserialVersionUID = 3952189513312630860L;

   

    privateintuserId;

    private StringuserName;

    private Stringpassword;

    publicintgetUserId(){

       returnuserId;

    }

    publicvoid setUserId(int userId) {

       this.userId = userId;

    }

    public String getUserName() {

       returnuserName;

    }

    publicvoid setUserName(String userName) {

       this.userName = userName;

    }

    public String getPassword() {

       returnpassword;

    }

    publicvoid setPassword(String password) {

       this.password = password;

    }

}

二、M->Action:

package struts2jsonjquery.test.action;

 

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

 

importstruts2jsonjquery.test.entity.UserInfo;

 

import com.opensymphony.xwork2.ActionSupport;

 

public class JsonJqueryStruts2Action extendsActionSupport {

 

       privatestatic final long serialVersionUID = 3518833679938898354L;

      

       privateString message;         //使用json返回单个值

       privateUserInfo userInfo;           //使用json返回对象

       privateList<UserInfo> userInfosList;          //使用josn返回List对象

       privateMap<String,UserInfo> userInfosMap;     //使用json返回Map对象

       //为上面的的属性提供get,Set方法

       publicString getMessage() {

              returnmessage;

       }

       publicvoid setMessage(String message) {

              this.message= message;

       }

       publicUserInfo getUserInfo() {

              returnuserInfo;

       }

       publicvoid setUserInfo(UserInfo userInfo) {

              this.userInfo= userInfo;

       }

       publicList<UserInfo> getUserInfosList() {

              returnuserInfosList;

       }

       publicvoid setUserInfosList(List<UserInfo> userInfosList) {

              this.userInfosList= userInfosList;

       }

       publicMap<String, UserInfo> getUserInfosMap() {

              returnuserInfosMap;

       }

       publicvoid setUserInfosMap(Map<String, UserInfo> userInfosMap) {

              this.userInfosMap= userInfosMap;

       }

       /**

        * <p>

        *   返回单个值

        * <p>

        * @return

        */

       publicString returnMessage(){

              System.out.println("成功返回单个对象");

              this.message= "成功返回单个值";

              return"message";

       }

       /**

        * <p>

        *   返回UserInfo对象

        * </p>

        * @return

        */

       publicString returnUserInfo(){

              userInfo =new UserInfo();

              userInfo.setUserId(10000);

              userInfo.setUserName("张三");

              userInfo.setPassword("000000");

              return "userInfo";

       }

       /**

        *<p>

        *   返回List对象

        *</p>

        *@return

        */

       public String returnList(){

              userInfosList = newArrayList<UserInfo>();

              UserInfo u1 = new UserInfo();

              u1.setUserId(10000);

              u1.setUserName("张三");

              u1.setPassword("000000");

              UserInfo u2 = new UserInfo();

              u2.setUserId(10001);

              u2.setUserName("李四");

              u2.setPassword("111111");

              UserInfo u3 = new UserInfo();

              u3.setUserId(10002);

              u3.setUserName("王五");

              u3.setPassword("222222");

              UserInfou4 = new UserInfo();

              u4.setUserId(10003);

              u4.setUserName("赵六");

              u4.setPassword("333333");

              userInfosList.add(u1);

              userInfosList.add(u2);

              userInfosList.add(u3);

              userInfosList.add(u4);

              return"list";

       }

       /**

        * <p>

        *   返回Map对象

        * </p>

        * @return

        */

       publicString returnMap(){

              userInfosMap= new HashMap<String,UserInfo>();

              UserInfou1 = new UserInfo();

              u1.setUserId(10000);

              u1.setUserName("张三");

              u1.setPassword("000000");

              UserInfou2 = new UserInfo();

              u2.setUserId(10001);

              u2.setUserName("李四");

              u2.setPassword("111111");

              UserInfou3 = new UserInfo();

              u3.setUserId(10002);

              u3.setUserName("王五");

              u3.setPassword("222222");

              UserInfou4 = new UserInfo();

              u4.setUserId(10003);

              u4.setUserName("赵六");

              u4.setPassword("333333");

              userInfosMap.put(u1.getUserId()+"",u1);

              userInfosMap.put(u2.getUserId()+"",u2);

              userInfosMap.put(u3.getUserId()+"",u3);

              userInfosMap.put(u4.getUserId()+"",u4);

              return"map";

       }

       /**

        * <p>

        *   获得对象,也就是通过表达获得对象(异步的)

        * </P>

        * @return

        */

       publicString gainUserInfo(){

              System.out.println("用户ID:"+userInfo.getUserId());

              System.out.println("用户名:"+userInfo.getUserName());

              System.out.println("密码:"+userInfo.getPassword());

             

              return"userInfo";

       }

       /**

        * 获得单个值就不用写了和平常一样

        */

 

}

三、struts.xml配置

<?xmlversion="1.0"encoding="UTF-8"?>

<!DOCTYPEstrutsPUBLIC

    "-//Apache Software Foundation//DTD StrutsConfiguration 2.0//EN"

    "http://struts.apache.org/dtds/struts-2.0.dtd">

 

<struts>

 

    <packagename="default"namespace="/"extends="json-default">

    <actionname="jsontest"class="struts2jsonjquery.test.action.JsonJqueryStruts2Action">

       <!--返回单个值的result -->

       <resultname="message"type="json"></result>

       <!--返回UserInfo对象的 -->

       <resultname="userInfo"type="json"></result>

       <!--返回List对象的 -->

       <resultname="list"type="json"></result>

       <!--返回Map对象的 -->

       <resultname="map"type="json"></result>

    </action>

   </package>

</struts>

四、web.xml中struts配置

<filter>

   <filter-name>struts2</filter-name>

     <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>

  </filter>

 

  <filter-mapping>

   <filter-name>struts2</filter-name>

   <url-pattern>/*</url-pattern>

  </filter-mapping>

:V->index.jsp

    <scripttype="text/javascript"src="<%=path%>/js/jquery.js"></script>

    <scripttype="text/javascript"src="<%=path%>/js/json.js"></script>

<body>

    <inputid="getMessage"type="button"value="获取单个值"/>&nbsp;&nbsp;

    <inputid="getUserInfo"type="button"value="获取UserInfo对象"/>&nbsp;&nbsp;

    <inputid="getList"type="button"value="获取List对象"/>&nbsp;&nbsp;

    <inputid="getMap"type="button"value="获取Map对象"/>&nbsp;&nbsp;

    <br>

    <br>

    <br>

    <!--要显示信息的层 -->

    <divid="message"></div>

    <form>

    用户ID<inputname="userInfo.userId"type="text"/><br/>

    用户名:<inputname="userInfo.userName"type="text"/><br/>

    &nbsp;&nbsp;&nbsp;码:<inputname="userInfo.password"type="text"/><br>

    <inputid="regRe"type="button"value="注册"/>

    </form>

  </body>

五、Jquery

json.js

//初始加载页面时

$(document).ready(function(){

    //为获取单个值的按钮注册鼠标单击事件

    $("#getMessage").click(function(){

       $.getJSON("jsontest!returnMessage.action",function(data){

           //通过.操作符可以从data.message中获得Actionmessage的值

           $("#message").html("<fontcolor='red'>"+data.message+"</font>");

       });

    });

    //为获取UserInfo对象按钮添加鼠标单击事件

    $("#getUserInfo").click(function(){

       $.getJSON("jsontest!returnUserInfo.action",function(data){

           //清空显示层中的数据

           $("#message").html("");

           //为显示层添加获取到的数据

           //获取对象的数据用data.userInfo.属性

           $("#message").append("<div><fontcolor='red'>用户ID"+data.userInfo.userId+"</font></div>")

                       .append("<div><font color='red'>用户名:"+data.userInfo.userName+"</font></div>")

                       .append("<div><font color='red'>密码:"+data.userInfo.password+"</font></div>")

       });

    });

    //为获取List对象按钮添加鼠标单击事件

    $("#getList").click(function(){

       $.getJSON("jsontest!returnList.action",function(data){

           //清空显示层中的数据

           $("#message").html("");

           //使用jQuery中的each(data,function(){});函数

           //data.userInfosList获取UserInfo对象放入value之中

           $.each(data.userInfosList,function(i,value){

              $("#message").append("<div>"+(i+1)+"个用户:</div>")

                      .append("<div><font color='red'>用户ID"+value.userId+"</font></div>")

                       .append("<div><font color='red'>用户名:"+value.userName+"</font></div>")

                       .append("<div><font color='red'>密码:"+value.password+"</font></div>");

           });

       });

    });

    //为获取Map对象按钮添加鼠标单击事件

    $("#getMap").click(function(){

       $.getJSON("jsontest!returnMap.action",function(data){

           //清空显示层中的数据

           $("#message").html("");

           //使用jQuery中的each(data,function(){});函数

           //data.userInfosList获取UserInfo对象放入value之中

           //key值为Map的键值

          

           $.each(data.userInfosMap,function(key,value){

              $("#message").append("<div><fontcolor='red'>用户ID"+value.userId+"</font></div>")

                       .append("<div><font color='red'>用户名:"+value.userName+"</font></div>")

                       .append("<div><font color='red'>密码:"+value.password+"</font></div>");

           });

       });

    });

    //向服务器发送表达数据

    $("#regRe").click(function(){

       //把表单的数据进行序列化

       var params = $("form").serialize();

       //使用jQuery中的$.ajax({});Ajax方法

       $.ajax({

           url:"jsontest!gainUserInfo.action",

           type:"POST",

           data:params,

           dataType:"json",

           success:function(data){

              //清空显示层中的数据

           $("#message").html("");

           //为显示层添加获取到的数据

           //获取对象的数据用data.userInfo.属性     

           $("#message").append("<div><fontcolor='red'>用户ID"+data.userInfo.userId+"</font></div>")

            .append("<div><font color='red'>用户名:"+data.userInfo.userName+"</font></div>")

            .append("<div><font color='red'>密码:"+data.userInfo.password+"</font></div>")

                     

           }

       });

    });

});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值