zoukankan      html  css  js  c++  java
  • ajax+json+Struts2实现list传递(转载)

    一、首先需要下载JSON依赖的jar包。它主要是依赖如下:

          json-lib-2.2.2-jdk15

          ezmorph-1.0.4       commons-logging-1.0.4       commons-lang-2.4       commons-collections-3.2.1

          commons-beanutils

         二、实例。

         1、身份证错误信息Bean类(ErrorCondition.java)

     

    1. /** 
    2.  *@Project: excel 
    3.  *@Author: chenssy 
    4.  *@Date: 2013-4-4 
    5.  *@Copyright: chenssy All rights reserved. 
    6.  */  
    7. public class ErrorCondition {  
    8.     private String name; // 姓名  
    9.     private String idCard; // 身份证  
    10.     private String status; // 错误状态  
    11.     private String message; // 错误信息  
    12.   
    13.     ErrorCondition(String name,String idCard,String status,String message){  
    14.         this.name = name;  
    15.         this.idCard = idCard;  
    16.         this.status = status;  
    17.         this.message = message;  
    18.     }  
    19.       
    20.     public String getName() {  
    21.         return name;  
    22.     }  
    23.   
    24.     public void setName(String name) {  
    25.         this.name = name;  
    26.     }  
    27.   
    28.     public String getIdCard() {  
    29.         return idCard;  
    30.     }  
    31.   
    32.     public void setIdCard(String idCard) {  
    33.         this.idCard = idCard;  
    34.     }  
    35.   
    36.     public String getStatus() {  
    37.         return status;  
    38.     }  
    39.   
    40.     public void setStatus(String status) {  
    41.         this.status = status;  
    42.     }  
    43.   
    44.     public String getMessage() {  
    45.         return message;  
    46.     }  
    47.   
    48.     public void setMessage(String message) {  
    49.         this.message = message;  
    50.     }  
    51.   
    52. }  

     

         2、JSP页面(index.jsp)

     

    1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>  
    2. <html>  
    3.   <head>    
    4.     <script type="text/javascript" src="${pageContext.request.contextPath}/js/jquery-1.7.2.js"></script>  
    5.   </head>  
    6.     
    7.   <body>  
    8.         <input type="button" value="点我显示数据" id="clickMe">  
    9.         <table id="showTable" border="1">  
    10.             <tr>  
    11.                 <td>姓名</td>  
    12.                 <td>身份证</td>  
    13.                 <td>错误状态</td>  
    14.                 <td>错误信息</td>  
    15.             </tr>  
    16.         </table>  
    17.    <script>  
    18.         $("#clickMe").click(function(){  
    19.             var url = "json/jsonTest.action";  
    20.             $.ajax({  
    21.                 type:'get',  
    22.                 url:url,  
    23.                 dataType: 'json',  
    24.                 success:function(data){  
    25.                     $.each(data,function(i,list){  
    26.                         var _tr = $("<tr><td>"+list.name+"</td><td>"+  
    27.                                   list.idCard+"</td><td>"+list.status+  
    28.                                   "</td><td>"+list.message+"</td></tr>");  
    29.                         $("#showTable").append(_tr);  
    30.                     })  
    31.                 }  
    32.             })  
    33.               
    34.         })  
    35.     </script>  
    36.   </body>  
    37. </html>  

     

         3、Action处理类(JsonTest_01.java)

     

    1. /** 
    2.  *@Project: jsonTest 
    3.  *@Author: chenssy 
    4.  *@Date: 2013-4-5 
    5.  *@Copyright:  chenssy All rights reserved. 
    6.  */  
    7. public class JsonTest_01 {  
    8.     public String execute() throws IOException{  
    9.         ErrorCondition r1 = new ErrorCondition("张三""4306821989021611""L""长度错误");  
    10.         ErrorCondition r2 = new ErrorCondition("李四""430682198902191112","X""校验错误");  
    11.         ErrorCondition r3 = new ErrorCondition("王五""""N""身份证信息为空");  
    12.           
    13.         List<ErrorCondition> list = new ArrayList<ErrorCondition>();  
    14.         list.add(r1);  
    15.         list.add(r2);  
    16.         list.add(r3);  
    17.           
    18.         //将list转化成JSON对象  
    19.         JSONArray jsonArray = JSONArray.fromObject(list);  
    20.         HttpServletResponse response = (HttpServletResponse) ActionContext.getContext().get(ServletActionContext.HTTP_RESPONSE);  
    21.         response.setCharacterEncoding("UTF-8");   
    22.         response.getWriter().print(jsonArray);  
    23.         return null;  
    24.     }  
    25. }  

     

         4、struts.xml配置

     

    1. <?xml version="1.0" encoding="GBK"?>  
    2. <!DOCTYPE struts PUBLIC  
    3.     "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"  
    4.     "http://struts.apache.org/dtds/struts-2.1.7.dtd">  
    5.     <!-- 指定struts 2的配置文件的跟元素  -->  
    6. <struts>  
    7.     <package name="json" namespace="/json" extends="struts-default">  
    8.         <action name="jsonTest" class="com.json.action.JsonTest_01" method="execute"></action>  
    9.     </package>  
    10. </struts>  

     

         三、运行结果

         开始页面如下:

     

         当点击按钮后

    返回的结果如下:

  • 相关阅读:
    冲刺第十三天
    冲刺第十二天
    冲刺第十一天
    Android Studio三种运行方法
    第十三周学习进度
    冲刺第一阶段意见评论
    第十二周学习进度
    冲刺第十天
    大二暑假周总结(五)
    大二暑假周总结(四)
  • 原文地址:https://www.cnblogs.com/ycxyyzw/p/3493521.html
Copyright © 2011-2022 走看看