用AJAX的Get和Post调用Servlet的简单示例。

Posted 软若石

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用AJAX的Get和Post调用Servlet的简单示例。相关的知识,希望对你有一定的参考价值。

***************************************AJAX网页代码****************

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script language="javascript">
var xmlHttp;
function createXMLHttpRequest()

 if(window.ActiveXObject)
 
  xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
 
 else if(window.XMLHttpRequest)
 
  xmlHttp=new XMLHttpRequest();
 

function createQueryString()

 var firstName=document.getElementById("firstname").value;
 var middleName=document.getElementById("middleName").value;
 var birthday=document.getElementById("birthday").value;
 var queryString="firstName=" + firstName + "&middleName=" + middleName + "&birthday=" + birthday;
 return queryString;

function doRequestUsingGET()

 createXMLHttpRequest();
 var queryString="../GetAndPost?";
 queryString=queryString+createQueryString() + "&timeStamp=" + new Date().getTime();
 xmlHttp.onreadystatechange=handleStateChange;
 xmlHttp.open("GET",queryString,true);
 xmlHttp.send(null);

function doRequestUsingPost()

 createXMLHttpRequest();
 var url="../GetAndPost?timeStamp=" + new Date().getTime();
 var queryString=createQueryString();
 xmlHttp.open("POST",url,true);
 xmlHttp.onreadystatechange=handleStateChange;
 xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
 xmlHttp.send(queryString);

function handleStateChange()

 if(xmlHttp.readyState==4)
 
  if(xmlHttp.status==200)
  
   parseResults();
  
 

function parseResults()

 var responseDiv=document.getElementById("serverResponse");
 if(responseDiv.hasChildNodes())
 
  responseDiv.removeChild(responseDiv.childNodes[0]);
 
 var responseText=document.createTextNode(xmlHttp.responseText);
 responseDiv.appendChild(responseText);

</script>
</head>

<body>
<form id="form1" name="form1" method="post" action="#">
  <p><br />
    <br />
    <input name="firstName" type="text" id="firstName" />
</p>
  <p>
    <label>
    <input type="text" name="middleName" id="middleName"  />
    </label>
</p>
  <p>
    <input name="birthday" type="text" id="birthday" />
  </p>
  <p>&nbsp;</p>
  <p>
    <input type="button" name="Submit" value="GET"  οnclick="doRequestUsingGET();"/>
 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 <input type="button" name="Submit2" value="POST"  οnclick="doRequestUsingPost();"/>
  </p>

  <div id="serverResponse"></div>
</form>

</body>
</html>

***********************************Servlet代码*****************

package temp;

import java.io.*;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class GetAndPostExample extends HttpServlet
  protected void processRequest(HttpServletRequest request,HttpServletResponse response,String method) throws ServletException,IOException
 
    response.setContentType("text/xml");

    String firstName=request.getParameter("firstName");
    String middleName=request.getParameter("middleName");
    String birthday=request.getParameter("birthday");

    String responseText="hello:" + firstName + "-" + middleName + "。your birthday is " + birthday + "。" + "[method:" + method + "]";

    PrintWriter out=response.getWriter();
    out.println(responseText);

    out.close();
 

  protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
 
    processRequest(request,response,"GET");
 

  protected void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
 
    processRequest(request,response,"POST");
 


**************************

以上是关于用AJAX的Get和Post调用Servlet的简单示例。的主要内容,如果未能解决你的问题,请参考以下文章

在java中写jsp网页和servlet中,form表单的提交方法get与post的区别?

用form表单想servlet提交数据时,get和post之间的区别是啥?

jsp调用servlet时get方法和post方法有啥区别?

jquery $.ajax $.get $.post的区别是啥噢?

java 在jsp中怎样获取servlet中的数据

Jquery AJAX 全局超时(整个应用程序)我正在使用 $.get 和 $.post(不能使用 $.ajax)