当前位置: 首页 > 图文教程 > 网络编程 > JSP > jsp搜索引擎

JSP
用JSP实现的一个日历程序
JSP生成jpeg图片用于投票
按IE后退按钮时让JSP不读缓存
JSP简介
Tomcat+Jsp环境下的中文问题
JSP技术生成动态web页面
在JSP中访问MS SQL Server数据库
从jsp发送动态图像
JSP/Servlet 中的汉字编码问题
困扰JSP的一些问题与解决方法
高效的jsp分页查询
JSP动态输出Excel及中文乱码的解决
JavaBean实现多文件上传的两种方法
加快JDBC设计中JSP访问数据库
将JSP在内存生成的图片显示到页面
[JAVA]十四种Java开发工具点评
JSP/Servlet应用程序优化八法
初学java常用开发工具介绍
JSP连接SQL Server 2000系统配置
win2000server IIS和tomcat5多站点配置

JSP 中的 jsp搜索引擎


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 33 ::
收藏到网摘: n/a


package coreservlets;

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


public class SearchEngines extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
String searchString = request.getParameter("searchString");
if ((searchString == null)
(searchString.length() == 0)) {
reportProblem(response, "Missing search string.");
return;
}
// The URLEncoder changes spaces to "+" signs and other
// non-alphanumeric characters to "%XY", where XY is the
// hex value of the ASCII (or ISO Latin-1) character.
// Browsers always URL-encode form values, so the
// getParameter method decodes automatically. But since
// we"re just passing this on to another server, we need to
// re-encode it.
searchString = URLEncoder.encode(searchString);
String numResults = request.getParameter("numResults");
if ((numResults == null)
(numResults.equals("0"))
(numResults.length() == 0)) {
numResults = "10";
}
String searchEngine =
request.getParameter("searchEngine");
if (searchEngine == null) {
reportProblem(response, "Missing search engine name.");
return;
}
SearchSpec[] commonSpecs = SearchSpec.getCommonSpecs();
for(int i=0; i<commonSpecs.length; i++) {
SearchSpec searchSpec = commonSpecs[i];
if (searchSpec.getName().equals(searchEngine)) {
String url =
searchSpec.makeURL(searchString, numResults);
response.sendRedirect(url);
return;
}
}
reportProblem(response, "Unrecognized search engine.");
}

private void reportProblem(HttpServletResponse response,
String message)
throws IOException {
response.sendError(response.SC_NOT_FOUND,
"<H2>" + message + "</H2>");
}

public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}