1、AJAX 指异步 JavaScript 及 XML(Asynchronous JavaScript And XML)
2、特点:
页面没有改变
异步发送请求,获取数据
数据响应时间不确定
不能与同步一起使用(同步的业务数据不能通过异步来得到)
打电话——同步
发短信——异步
3、应用
——注册用户名验证
——自动补全
——网络电视下面的广告
——crud
Ajax——x xml——数据交换——json
4、javaScript——XMLHttpRequest对象
5、使用原始的xmlhttprequest对象 三个步骤:
a)创建爱你xmlhttprequest对象
b)发布异步请求open(),send()
例:open(“GET”,”a.jsp”,”true”);
send(null);
c)编写回调函数onreadstatechange
Jsp:
<script type="text/javascript" src="js/jquery-3.2.1.js"></script>
<script type="text/javascript">
$(function(){
$("input").click(function(){
$.post("ajax",{name:"yuye"},function(date){
$("div").html(date);
});
});
});
</script>
</head>
<body>
<p>静夜思</p>
<input type="button" value="显示" />
<div></div>
</body>
Servlet:
@WebServlet("/ajax")
public class AjaxServlet extends HttpServlet{
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("utf-8");
System.out.println(req.getParameter("name"));
resp.setCharacterEncoding("utf-8");
//resp.setContentType("text/html");
resp.getWriter().println("窗前明月光,疑似地上霜。\n举头望明月,低头思故乡。");
}
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
this.doGet(req, resp);
}
}