customizedsearchengines.java

来自「servlet的示例代码」· Java 代码 · 共 47 行

JAVA
47
字号
package eg.cha9;

import java.io.IOException;
import java.net.URLEncoder;

import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import eg.cha7.SearchSpec;

public class CustomizedSearchEngines extends HttpServlet {
	private static final long serialVersionUID = 1L;

	@SuppressWarnings({ "deprecation", "static-access" })
	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		String searchString = request.getParameter("searchString");
		Cookie searchStringCookie = new LongLivedCookie("searchString", searchString);
		response.addCookie(searchStringCookie);
		searchString = URLEncoder.encode(searchString);
		String numResults = request.getParameter("numResults");
		Cookie numResultsCookie = new LongLivedCookie("numResults", numResults);
		response.addCookie(numResultsCookie);
		String searchEngine = request.getParameter("searchEngine");
		Cookie searchEngineCookie = new LongLivedCookie("searchEngine", searchEngine);
		response.addCookie(searchEngineCookie);
		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;
			}
		}
		response.sendError(response.SC_NOT_FOUND, "No recognized search engine specified.");
	}

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

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?