一、首先需要下载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. ErrorCondition(String name,String idCard,String status,String message){
  13. this.name = name;
  14. this.idCard = idCard;
  15. this.status = status;
  16. this.message = message;
  17. }
  18. public String getName() {
  19. return name;
  20. }
  21. public void setName(String name) {
  22. this.name = name;
  23. }
  24. public String getIdCard() {
  25. return idCard;
  26. }
  27. public void setIdCard(String idCard) {
  28. this.idCard = idCard;
  29. }
  30. public String getStatus() {
  31. return status;
  32. }
  33. public void setStatus(String status) {
  34. this.status = status;
  35. }
  36. public String getMessage() {
  37. return message;
  38. }
  39. public void setMessage(String message) {
  40. this.message = message;
  41. }
  42. }

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. <body>
  7. <input type="button" value="点我显示数据" id="clickMe">
  8. <table id="showTable" border="1">
  9. <tr>
  10. <td>姓名</td>
  11. <td>身份证</td>
  12. <td>错误状态</td>
  13. <td>错误信息</td>
  14. </tr>
  15. </table>
  16. <script>
  17. $("#clickMe").click(function(){
  18. var url = "json/jsonTest.action";
  19. $.ajax({
  20. type:'get',
  21. url:url,
  22. dataType: 'json',
  23. success:function(data){
  24. $.each(data,function(i,list){
  25. var _tr = $("<tr><td>"+list.name+"</td><td>"+
  26. list.idCard+"</td><td>"+list.status+
  27. "</td><td>"+list.message+"</td></tr>");
  28. $("#showTable").append(_tr);
  29. })
  30. }
  31. })
  32. })
  33. </script>
  34. </body>
  35. </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. List<ErrorCondition> list = new ArrayList<ErrorCondition>();
  13. list.add(r1);
  14. list.add(r2);
  15. list.add(r3);
  16. //将list转化成JSON对象
  17. JSONArray jsonArray = JSONArray.fromObject(list);
  18. HttpServletResponse response = (HttpServletResponse) ActionContext.getContext().get(ServletActionContext.HTTP_RESPONSE);
  19. response.setCharacterEncoding("UTF-8");
  20. response.getWriter().print(jsonArray);
  21. return null;
  22. }
  23. }

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>

三、运行结果

开始页面如下:

当点击按钮后

返回的结果如下:

ajax+json+Struts2实现list传递(转载)的更多相关文章

  1. ajax+json+Struts2实现list传递实例讲解

    由于学习需要,需要通过ajax来获取后台的List集合里面的值.由于前面没有接触过,所以今天就来研究下了. 一.首先需要下载JSON依赖的jar包.它主要是依赖如下: json-lib-2.2.2-j ...

  2. Struts+Spring+Hibernate项目整合AJAX+JSON

    1.什么是AJAX AJAX是 "Asynchronous JavaScript and XML" 的简称,即异步的JavaScript和XML. 所谓异步,就是提交一个请求不必等 ...

  3. struts2 + ajax + json的结合使用,实例讲解

    struts2用response怎么将json值返回到页面javascript解析,这里介绍一个struts2与json整合后包的用法. 1.准备工作 ①ajax使用Jquery:jquery-1.4 ...

  4. php ajax json jquery 记录

    php+jquery+ajax+json简单小例子 <html> <title>php+jquery+ajax+json简单小例子</title> <?php ...

  5. jquery ajax json 数据的遍历

    需求:进行ajax请求后,后台传递回来以下json数据 { "data":[ {","name":"选择A","valu ...

  6. Jquery+ajax+json+servlet原理和Demo

    Jquery+ajax+json+servlet原理和Demo 大致过程: 用户时间点击,触发js,设置$.ajax,开始请求.服务器响应,获取ajax传递的值,然后处理.以JSON格式返回给ajax ...

  7. struts2注解redirect传递参数解决方案时,中国的垃圾问题

    struts2注解redirect传递参数解决方案时,中国的垃圾问题 试过很多方法  tomcat 编码  .字符串转换 .URLEncoder  .. 但是,没有解决方案,然后仔细阅读   stru ...

  8. php+jquery+ajax+json简单小例子

    直接贴代码: <html> <title>php+jquery+ajax+json简单小例子</title> <?php header("Conte ...

  9. JFreeChart与AJAX+JSON+ECharts两种处理方式生成热词统计可视化图表

    本篇的思想:对HDFS获取的数据进行两种不同的可视化图表处理方式.第一种JFreeChar可视化处理生成图片文件查看.第二种AJAX+JSON+ECharts实现可视化图表,并呈现于浏览器上.   对 ...

随机推荐

  1. 采用dlopen、dlsym、dlclose dlopen dlerror加载动态链接库【总结】

    .前言 为了使程序方便扩展,具备通用性,可以采用插件形式.采用异步事件驱动模型,保证主程序逻辑不变,将各个业务已动态链接库的形式加载进来,这就是所谓的插件.linux提供了加载和处理动态链接库的系统调 ...

  2. vs2010中TargetName与链接器输出名不一致

    当出现解决方案生成正确,但是无法执行.exe文件,即系统无法找到指定文件时,提示有:MSB8012: TargetName(,,,) 与 Linker 的 OutputFile 属性(,,,)不匹配. ...

  3. c#设计应用程序单实例运行

    利用WindowsFormsApplicationBase的IsSingleInstance来控制应用程序只能单实例运行. [DllImport("user32.dll", Ent ...

  4. kafka生产消费原理笔记

    一.什么是kafka Kafka是最初由Linkedin公司开发,是一个分布式.支持分区的(partition).多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性 ...

  5. servlet 过滤器实现 请求转发(跳转);跨域转发请求;tomcat 环境下。

    一般的文章都有 文本内容 和图片的.我想实现一个图片服务(或服务器)来单独处理图片逻辑,和文章处理逻辑分离.于是我想到一个办法,来尝试. 背景: 1. 假如文章的处理在web App,就叫web1 吧 ...

  6. sql索引创建

    什么是索引 拿汉语字典的目录页(索引)打比方:正如汉语字典中的汉字按页存放一样,SQL Server中的数据记录也是按页存放的,每页容量一般为4K .为了加快查找的速度,汉语字(词)典一般都有按拼音. ...

  7. 关于 HTTP GET/POST 请求参数长度最大值的一个理解误区

    1.    Get方法长度限制 Http Get方法提交的数据大小长度并没有限制,HTTP协议规范没有对URL长度进行限制.这个限制是特定的浏览器及服务器对它的限制. 如:IE对URL长度的限制是20 ...

  8. matlab中log函数与rssi转距离

    我们通常所说的log是指以10为底的对数,而MATLAB中的log却不是这样.Matlab中的log函数在默认情况下是以e为底,即loge,如果需要计算以10为底的对数,那么需要用log10()函数. ...

  9. 《FPGA全程进阶---实战演练》第十章 数码管实验

    1基础理论部分 led数码管是由多个发光二极管封装在一起组合的“8”字型的器件,引线内部已经完成,如下图10.1所示,图10.2为实物图. 图10.1 数码管内部结构 那么我们想要控制数码管的亮灭,其 ...

  10. 关于Mac上的开发工具

    如果是JavaScript语言的话用  Intellij IDEA 如果是C/C++语言的话用  XCode