开发工具与关键技术:MyEclipse、java
作者:清晨
撰写时间:2019.5.28
Ajax是什么?
Ajax的全称是“Asynchronous Javascript And XML”(异步JavaScript和XML),
并不是新的技术,只是把原有的技术,整合到一起而已。
1.使用CSS和XHTML来表示。
2. 使用DOM模型来交互和动态显示。
3.使用XMLHttpRequest来和服务器进行异步通信。
4.使用javascript来绑定和调用。
Ajax有什么作用?
咱们的网页如果想要刷新局部内容。那么需要重新载入整个网页。用户体验不是很好。就是
为了解决局部刷新的问题。 保持其他部分不动,只刷新某些地方。
首先来讲Get请求数据---->第一步创建XHR对象
jsp的界面代码
<body>
<h3><a href="" onclick="get()">使用Ajax方式发送Get请求</a></h3>
</body>
function ajaxFunction(){
var xmlHttp;
try{ // Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}catch (e){
try{// Internet Explorer
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}catch (e){
try{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}catch (e){}
}
}
return xmlHttp;
}
第二步发送请求—>执行get请求
如果发送请求的同时,还想获取数据,就用监听即可,那么代码如下*/
function get(){
//1. 创建xmlhttprequest 对象
var request = ajaxFunction();
//2. 发送请求。
// http://localhost:8080/Ajax使用/test01.jsp
//http://localhost:8080/Ajax使用/DemoServlet01
/*
参数一: 请求类型 GET or POST
参数二: 请求的路径
参数三: 是否异步, true or false
*/
request.open("GET" ,"/tests/DemoServlet01?name=aa&age=18" ,true );
//3. 获取响应数据 注册监听的意思。 一会准备的状态发生了改变,那么就执行 = 号右边的方法
request.onreadystatechange = function(){
//前半段表示 已经能够正常处理。 再判断状态码是否是200
if(request.readyState == 4 && request.status == 200){
//弹出响应的信息
alert(request.responseText);
}
}
request.send();
//如果用post的提交的话下面的代码
}
post的请求是这样发的传参数是在send()传
如果使用的是post方式带数据,那么 这里要添加头,说明提交的数据类型是一个经过url编码的form表单数据
request.setRequestHeader(“Content-type”,“application/x-www-form-urlencoded”);
带数据过去 , 在send方法里面写表单数据。
request.send(“name=aa&age=19”);
servlet
public class DemoServlet01 extends HttpServlet {
private static final long serialVersionUID = -7727212611462669752L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//获取传过来的值
String name=request.getParameter("name");
String age=request.getParameter("age");
System.out.println("收到了一个请求..." +name+"="+age);
response.setContentType("text/html,charset=utf-8");
response.getWriter().write(name);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//System.out.println("现在来了一个post请求,将要去走get的代码了。");
doGet(request, response);
}
}
结果这样:没有写post的请求有说明