传输单个对象时:

servlet页面

  1. package com.itnba.maya.a;
  2.  
  3. import java.io.IOException;
  4. import javax.servlet.ServletException;
  5. import javax.servlet.annotation.WebServlet;
  6. import javax.servlet.http.HttpServlet;
  7. import javax.servlet.http.HttpServletRequest;
  8. import javax.servlet.http.HttpServletResponse;
  9.  
  10. /**
  11. * Servlet implementation class A
  12. */
  13. @WebServlet("/A")
  14. public class A extends HttpServlet {
  15. private static final long serialVersionUID = 1L;
  16.  
  17. /**
  18. * @see HttpServlet#HttpServlet()
  19. */
  20. public A() {
  21. super();
  22. // TODO Auto-generated constructor stub
  23. }
  24.  
  25. /**
  26. * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
  27. */
  28. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  29. request.setCharacterEncoding("utf-8");
  30. response.setCharacterEncoding("utf-8");
  31. //模拟从数据库查出
  32. Dog a=new Dog();
  33. a.setName("小黄");
  34. a.setAge(5);
  35. a.setZl("哈士奇");
  36.  
  37. //放到XML文件中
  38. response.getWriter().append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
  39. response.getWriter().append("<gen>");
  40. response.getWriter().append("<name>"+ a.getName()+"</name>");
  41. response.getWriter().append("<age>"+ a.getAge()+"</age>");
  42. response.getWriter().append("<zl>"+ a.getZl()+"</zl>");
  43. response.getWriter().append("</gen>");
  44. }
  45.  
  46. /**
  47. * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
  48. */
  49. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  50. // TODO Auto-generated method stub
  51. doGet(request, response);
  52. }
  53.  
  54. }

jsp页面中

  1. <%@ page language="java" contentType="text/html; charset=utf-8"
  2. pageEncoding="utf-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  7. <title>Insert title here</title>
  8. <script type="text/javascript" src="js/jquery-1.11.1.min.js"></script>
  9. <script type="text/javascript">
  10. $(document).ready(function(){
  11. $("#k").click(function(){
  12. $.ajax({
  13. url:"A",//跳转的servlet
  14. data:{},//key:要传输的数据
  15. type:"POST",
  16. dataType:"xml",
  17. success:function(httpdata){
  18. /* 解析XML中的数据 */
  19. var n=$(httpdata).find("name").text()
  20. var a=$(httpdata).find("age").text()
  21. var z=$(httpdata).find("zl").text()
  22.  
  23. $("#x").append("<li>"+n+"</li>");
  24. $("#x").append("<li>"+a+"</li>");
  25. $("#x").append("<li>"+z+"</li>");
  26. }
  27. })
  28. });
  29. });
  30. </script>
  31. </head>
  32. <body>
  33. <span id="k">查看</span>
  34. <h1>
  35. <ul id="x">
  36. </ul>
  37. </h1>
  38. </body>
  39. </html>

效果如下

传输集合或者数组时

servlet页面

  1. package com.itnba.maya.a;
  2.  
  3. import java.io.IOException;
  4. import java.util.ArrayList;
  5.  
  6. import javax.servlet.ServletException;
  7. import javax.servlet.annotation.WebServlet;
  8. import javax.servlet.http.HttpServlet;
  9. import javax.servlet.http.HttpServletRequest;
  10. import javax.servlet.http.HttpServletResponse;
  11.  
  12. /**
  13. * Servlet implementation class B
  14. */
  15. @WebServlet("/B")
  16. public class B extends HttpServlet {
  17. private static final long serialVersionUID = 1L;
  18.  
  19. /**
  20. * @see HttpServlet#HttpServlet()
  21. */
  22. public B() {
  23. super();
  24. // TODO Auto-generated constructor stub
  25. }
  26.  
  27. /**
  28. * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
  29. */
  30. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  31. request.setCharacterEncoding("utf-8");
  32. response.setCharacterEncoding("utf-8");
  33. //模拟从数据库中查出
  34. Dog a1=new Dog();
  35. a1.setName("小黄");
  36. a1.setAge(5);
  37. a1.setZl("哈士奇");
  38.  
  39. Dog a2=new Dog();
  40. a2.setName("中黄");
  41. a2.setAge(6);
  42. a2.setZl("泰迪");
  43.  
  44. Dog a3=new Dog();
  45. a3.setName("大黄");
  46. a3.setAge(7);
  47. a3.setZl("京巴");
  48.  
  49. ArrayList<Dog> list=new ArrayList<Dog>();
  50. list.add(a1);
  51. list.add(a2);
  52. list.add(a3);
  53. //放到XML文件中
  54. response.getWriter().append("<?xml version='1.0'?>");
  55. response.getWriter().append("<gen>");
  56. for(Dog d :list){
  57. response.getWriter().append("<dog name='"+d.getName()+"'>");
  58. //response.getWriter().append("<name>"+d.getName()+"</name>");
  59. response.getWriter().append("<age>"+d.getAge()+"</age>");
  60. response.getWriter().append("<zl>"+d.getZl()+"</zl>");
  61. response.getWriter().append("</dog>");
  62. }
  63. response.getWriter().append("</gen>");
  64. }
  65.  
  66. /**
  67. * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
  68. */
  69. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  70. // TODO Auto-generated method stub
  71. doGet(request, response);
  72. }
  73.  
  74. }

jsp页面

  1. <%@ page language="java" contentType="text/html; charset=utf-8"
  2. pageEncoding="utf-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  7. <title>Insert title here</title>
  8. <script type="text/javascript" src="js/jquery-1.11.1.min.js"></script>
  9. <script type="text/javascript">
  10. $(document).ready(function(){
  11. $("#k").click(function(){
  12. $.ajax({
  13. url:"B",
  14. data:{},
  15. type:"POST",
  16. dataType:"xml",
  17. success:function(httpdata){
  18. var d=$(httpdata).find("dog");/* 返回的是个数组 */
  19. for(var i=0;i<d.length;i++){
  20. var n=$(d).eq(i).attr("name");
  21. var a=$(d).eq(i).find("age").text();
  22. var z=$(d).eq(i).find("zl").text();
  23. var tr="<tr>"
  24. tr+="<td>"+n+"</td>"
  25. tr+="<td>"+a+"</td>"
  26. tr+="<td>"+z+"</td>"
  27. tr +="</tr>"
  28. $("#x").append(tr)
  29. }
  30. }
  31. });
  32. });
  33. });
  34. </script>
  35. </head>
  36. <body>
  37. <span id="k">查看</span>
  38. <h1>
  39. <table width="100%" id="x">
  40. </table>
  41. </h1>
  42. </body>
  43. </html>

效果如下

Ajax传输对象,集合或数组。的更多相关文章

  1. SpringMVC,SpringBoot使用ajax传递对象集合/数组到后台

    假设有一个bean名叫TestPOJO. 1.使用ajax从前台传递一个对象数组/集合到后台. 前台ajax写法: var testPOJO=new Array(); //这里组装testPOJO数组 ...

  2. springMVC接受对象集合,name数组

    这两天开发遇到一个很常见的问题,即使自己一直没遇见过,不过之前看过是实现接受对象集合的代码,只不过没注意罢了 推荐一篇文章 直接贴代码吧 public class Person { private S ...

  3. 如果一个Object对象可能是集合或者数组那么如何对其进行迭代

    需求:一个方法传入的参数是Object类型(假设对象为“items”,使用Object类型也是为了使用多态而增加方法复用性),但已知这个Object对象可能是集合,包括Collection和Map,也 ...

  4. Springboot+ajax传输json数组以及单条数据的方法

    Springboot+ajax传输json数组以及单条数据的方法 下面是用ajax传输到后台单条以及多条数据的解析的Demo: 结构图如下: 下面是相关的代码: pom.xml: <?xml v ...

  5. springMVC通过ajax传递参数list对象或传递数组对象到后台

    springMVC通过ajax传递参数list对象或传递数组对象到后台 环境: 前台传递参数到后台 前台使用ajax 后台使用springMVC 传递的参数是N多个对象 JSON对象和JSON字符串 ...

  6. 获取单列集合,双列集合,数组的Stream流对象以及简单操作

    获取流对象 获取单列集合,双列集合,数组的流对象 单列集合获取流对象: 1.java.util.Collection接口中加入了default方法stream()获取流对象,因此其所有实现类均可通过此 ...

  7. Java技巧——将前端的对象数组通过Json字符串传到后端并转换为对象集合

    Java技巧——将前端的对象数组通过Json字符串传到后端并转换为对象集合 摘要:本文主要记录了如何将将前端的对象数组通过Json字符串传到后端,并在后端将Json字符串转换为对象集合. 前端代码 前 ...

  8. $.ajax传输js数组,spring接收异常

    今天测试,出现一个奇怪的问题 $.ajax传输js数组,spring接收这个数组,出现奇怪的现象,如果数组只有一个元素,且这个元素字符串最后一个字符是以逗号,结尾的话, spring会自动把这个逗号去 ...

  9. MVC传递数据-传递对象或对象集合

    前言 本文主要介绍从View(或者js)文件向Controller提交对象或者对象集合.比方.将表格中的一行数据作为一个对象提交.或将多行数据作为一个集合提交到Controller. 回想 从View ...

随机推荐

  1. Vue(1)- es6的语法、vue的基本语法、vue应用示例,vue基础语法

    一.es6的语法 1.let与var的区别 ES6 新增了let命令,用来声明变量.它的用法类似于var(ES5),但是所声明的变量,只在let命令所在的代码块内有效.如下代码: { let a = ...

  2. upsampling(上采样)& downsampled(降采样)

    缩小图像 缩小图像(或称为下采样(subsampled)或降采样(downsampled))的主要目的是两个: 使得图像符合显示区域的大小: 生成对应图像的缩略图: 下采样的原理: 对于一幅图像尺寸为 ...

  3. (转)java类到底是如何加载并初始化的?

    Java虚拟机如何把编译好的.class文件加载到虚拟机里面?加载之后如何初始化类?静态类变量和实例类变量的初始化过程是否相同,分别是如何初始化的呢?这篇文章就 是解决上面3个问题的. 若有不正之处, ...

  4. kibana 创建饼图

    1.在 visualize 里面选择饼图 2.选择数据源 3.选择 terms 聚合类型. 选择字段 xxx.keyword 保存即可.

  5. 003-Java非堆CodeCache详解

    一.概述 Java的内存由堆和非堆两个部分组成.对于堆来说,它的组成是比较确定的,它包含了年轻代和年老代两个部分,而年轻代又是由Eden区和两个Survivor区组成.可是,非堆由哪些部分组成呢? 在 ...

  6. Verilog学习总结

    1.多个always语句不能对同一变量赋值. 2.assign语句只能进行阻塞赋值,用来描述组合逻辑. 3.verilog描述方式:结构描述(门级描述和模块调用).数据流描述(assign,wire型 ...

  7. Myeclipse中文乱码解决方式

    我们刚刚安装的Myeclipse有可能使用的是GBK的编码方式,而通常我们的程序都是使用的是UTF-8的编码方式,所以当我们导入一个项目的时候,会产生乱码,解决方式如下: 一.将整个project设置 ...

  8. uiautomator定位元素

  9. java反射基础知识(一)

    一.反射 反射:JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功能称为 ...

  10. 转:MVC遇上bootstrap后的ajax表单验证

    使用bootstrap后他由他自带的样式has-error,想要使用它就会比较麻烦,往常使用jqueyr.validate的话只有使用他自己的样式了,而且有模型在使用模型验证更方便点.怎么解决呢? 当 ...