客户端的javascript:
<script language="javascript">
var theurl = "/examples/servlet/mygooglesearchservlet?search=";
var http = gethttpobject();
function handlehttpresponse() {
if (http.readystate == 4) {
googlesearchresults.innerhtml = http.responsetext;
}
}
function updategoogleresults(formelement) {
var searchquery = document.forms[0].elements[formelement].value;
http.open("get", theurl + escape(searchquery), true);
http.onreadystatechange = handlehttpresponse;
http.send(null);
}
function gethttpobject() {
var xmlhttp;
try {
xmlhttp = new activexobject("msxml2.xmlhttp");
} catch (e) {
try {
xmlhttp = new activexobject("microsoft.xmlhttp");
} catch (e) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof xmlhttprequest != ’undefined’) {
try {
xmlhttp = new xmlhttprequest();
} catch (e) {
xmlhttp = false;
}
}
return xmlhttp;
}
</script>
__________________________________________________________________________
服务器端的:mygooglesearchservlet
import java.io.ioexception;
import java.io.printwriter;
import java.util.arraylist;
import javax.servlet.servletexception;
import javax.servlet.http.httpservlet;
import javax.servlet.http.httpservletrequest;
import javax.servlet.http.httpservletresponse;
/**
* search google.
*
* @author jose sandoval
*/
public class mygooglesearchservlet extends httpservlet {
/**
* do get.
*
* @param request httpservletrequest
* @param response httpservletresponse
* @throws servletexception, ioexeption
*/
public void doget(httpservletrequest request, httpservletresponse response) throws servletexception, ioexception {
printwriter out = response.getwriter();
stringbuffer resultbuffer = new stringbuffer();
arraylist results = mygooglesearch.dosearch(request.getparameter("search"));
searchresultbean resultbean = null;
for (int i = 0; i<results.size(); i++) {
resultbean = (searchresultbean) results.get(i);
resultbuffer.append("<a href=").append(resultbean.geturl()).append(">").append(resultbean.gettitle()).append("</a>");
resultbuffer.append("<br>");
resultbuffer.append(resultbean.getsnippet());
resultbuffer.append("<br>").append("<br>");
}
response.setcontenttype("text/html");
response.setheader("pragma", "no-cache");
response.setheader("expires", "0");
response.setheader("cache-control", "no-store");
out.print(resultbuffer.tostring());
out.close();
}
}
__________________________________________________________________________
服务器端的:mygooglesearch
import java.io.ioexception;
import java.util.arraylist;
import com.google.soap.search.googlesearch;
import com.google.soap.search.googlesearchfault;
import com.google.soap.search.googlesearchresult;
import com.google.soap.search.googlesearchresultelement;
/**
* googlesearch.
*
* @author jose sandoval
*/
public class mygooglesearch {
private static string client_key = "you_have_to_get_your_own_key_from_google";
/**
* search google.
*
* @param querystring string
* @return arraylist contains simplesearchresult
* @throws ioexception
*/
public static arraylist dosearch(string querystring) throws ioexceptio
闽公网安备 35060202000074号