1.创建动态web工程
2.编写HelloAjaxServlet类,让这个类继承HttpServlet,并重写doget和dopost方法
如:
package org.itat.zttc.ajax;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class HelloAjaxServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO 自动生成的方法存根
doPost(req,resp);
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
System.out.println("ajax come");
resp.getWriter().write("ajax comming");
}
}
3编写web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<display-name>ajax01</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>AjaxServlet</servlet-name>
<servlet-class>org.itat.zttc.ajax.HelloAjaxServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AjaxServlet</servlet-name>
<url-pattern>/ajax.do</url-pattern>
</servlet-mapping>
</web-app>
4运行tomcat并,访问http://localhost:8080/工程名/ajax.do
第一个简单的小程序就ok啦!
然后接着做
5.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
window.onload = init;
function init() {
var btn = document.getElementById("getData");
btn.onclick = getData;
}
function getData() {
//1、创建XMLHttpRequest对象
//var xhr = new XMLHttpRequest();
//通过createXmlHttpRequest来屏蔽不同浏览器之间的对象创建
var xhr = createXmlHttpRequest();
//2、检测XMLHttpRequest对象的状态,在合适的时候处理
//通过xhr.open方法确定要访问的页面
//第一个参数表示请求类型,第二个参数表示提交的地址,第三个参数表示是否是异步
xhr.open("GET","ajax.do",true);
//在onreadstatechange事件中处理请求
xhr.onreadystatechange = function() {
//onreadystatechange会在每个步骤都进行响应 ,一般仅仅只是在状态为4(请求结束)并且status=200(请求没有错误)时才处理
if(xhr.readyState==4&&xhr.status==200) {
//获取相应的文本:通过xhr的responseText可以获取文本信息,包括xml的标签
//通过responseXML可以获取xml的信息,只能xml对象
document.getElementById("serverData").innerHTML = xhr.responseText;
}
}
//3、发送请求
//发送请求,send中可以传入相应的参数,这个参数只有在POST请求的时候有效
//GET的参数直接在请求地址中通过?来传递
xhr.send();
}
function createXmlHttpRequest() {
if(window.XMLHttpRequest) {
//针对其他主流浏览器
return new XMLHttpRequest();
} else if(window.ActiveXObject) {
//针对IE5和IE6
return new ActiveXObject("Microsoft.XMLHTTP");
} else {
alert("你使用的浏览器不支持XMLHttpRequest,请换一个浏览器再试!");
return null;
}
}
</script>
</head>
<body>
<input type="button" value="获取数据" id="getData"/>
<div id="serverData"></div>
</body>
</html>