利用ajax实现数据的输出,利用ajax实现数据传输(示例代码)

AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。

AJAX 不是新的编程语言,而是一种使用现有标准的新方法。

AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下。

传递对象时,可以分为传输单个对象或者值,还有传递数组或集合。

首先新建一个数据层:

packagecom.bean;public classDog {privateString name;publicString getName() {returnname;

}public voidsetName(String name) {this.name =name;

}public intgetAge() {returnage;

}public void setAge(intage) {this.age =age;

}publicString getCategory() {returncategory;

}public voidsetCategory(String category) {this.category =category;

}private intage;privateString category;

}

新建一个servlet进行页面功能实现:

packagecom.servlet;importjava.io.IOException;importjavax.servlet.ServletException;importjavax.servlet.annotation.WebServlet;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importcom.bean.Dog;/*** Servlet implementation class Testajax1*/@WebServlet("/testajax1")public class Testajax1 extendsHttpServlet {private static final long serialVersionUID = 1L;/***@seeHttpServlet#HttpServlet()*/

publicTestajax1() {super();//TODO Auto-generated constructor stub

}/***@seeHttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/

protected void doGet(HttpServletRequest request, HttpServletResponse response) throwsServletException, IOException {//TODO Auto-generated method stub//response.getWriter().append("Served at: ").append(request.getContextPath());

request.setCharacterEncoding("utf-8");

response.setCharacterEncoding("utf-8");

Dog d= newDog();

d.setName("小白");

d.setAge(3);

d.setCategory("土狗");

response.getWriter().append("<?xml version=\'1.0\'?>");

response.getWriter().append("");

response.getWriter().append(""+d.getName()+"");

response.getWriter().append(""+d.getAge()+"");

response.getWriter().append(""+d.getCategory()+"");

response.getWriter().append("");

}/***@seeHttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/

protected void doPost(HttpServletRequest request, HttpServletResponse response) throwsServletException, IOException {//TODO Auto-generated method stub

doGet(request, response);

}

}

新建jsp页面实现ajax:

Insert title here

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

$.ajax({

url:"testajax1",

data:{},

type:"POST",

dataType:"XML",

success:function(httpdata){

var n= $(httpdata).find("name").text();

var a= $(httpdata).find("age").text();

var c= $(httpdata).find("category").text();

$("#d2").append("

"+n+"

");

$("#d2").append("

"+a+"

");

$("#d2").append("

"+c+"

");

}

});

});

});

aaaa

效果如下:

59d93245b0f24106929aa2afbd5d1236.jpg

取数组或集合时:

packagecom.servlet;importjava.io.IOException;importjava.util.ArrayList;importjavax.servlet.ServletException;importjavax.servlet.annotation.WebServlet;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importcom.bean.Dog;/*** Servlet implementation class Testajax2*/@WebServlet("/testajax2")public class Testajax2 extendsHttpServlet {private static final long serialVersionUID = 1L;/***@seeHttpServlet#HttpServlet()*/

publicTestajax2() {super();//TODO Auto-generated constructor stub

}/***@seeHttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/

protected void doGet(HttpServletRequest request, HttpServletResponse response) throwsServletException, IOException {//TODO Auto-generated method stub//response.getWriter().append("Served at: ").append(request.getContextPath());

request.setCharacterEncoding("utf-8");

response.setCharacterEncoding("utf-8");

Dog d1= newDog();

d1.setName("狗1");

d1.setAge(1);

d1.setCategory("品种1");

Dog d2= newDog();

d2.setName("狗2");

d2.setAge(2);

d2.setCategory("品种2");

Dog d3= newDog();

d3.setName("狗3");

d3.setAge(3);

d3.setCategory("品种3");

ArrayList list = new ArrayList();

list.add(d1);

list.add(d2);

list.add(d3);

response.getWriter().append("<?xml version=\'1.0\'?>");

response.getWriter().append("");for(Dog d:list){

response.getWriter().append("");

response.getWriter().append(""+d.getAge()+"");

response.getWriter().append(""+d.getCategory()+"");

response.getWriter().append("");

}

response.getWriter().append("");

}/***@seeHttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/

protected void doPost(HttpServletRequest request, HttpServletResponse response) throwsServletException, IOException {//TODO Auto-generated method stub

doGet(request, response);

}

}

Insert title here

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

$.ajax({

url:"testajax2",

data:{},

type:"POST",

dataType:"XML",

success:function(httpdata){

var dogs= $(httpdata).find("dog");for(var i=0;i

var n=$(dogs).eq(i).attr("name");

var a=$(dogs).eq(i).find("age").text();

var c=$(dogs).eq(i).find("category").text();

var tr="

";

tr+="

"+n+"";

tr+="

"+a+"";

tr+="

"+c+"";

tr+="

";

$("#tb").append(tr);

}

}

});

});

});

11111

效果如下:

e3bad96cc40e4d9e831bf993eefb5b96.jpg