⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 queryservlet.java

📁 JAVA网上书店的程序原代码,希望对大家偶用
💻 JAVA
字号:
package ebookshop.servlet;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import javax.servlet.http.HttpServlet;


import ebookshop.shopcart.BookDetails;
import ebookshop.bean.BookBean;
import ebookshop.common.*;

import java.sql.*;
public class QueryServlet extends HttpServlet 
{
  private static final String CONTENT_TYPE = "text/html; charset=GBK";
  private   String varkey = "";
  private   String vartype = "";
  private   ServletContext sc;
  
  	//Initialize global variables
  public void init() throws ServletException {
    super.init();
    sc=this.getServletContext();
  }

  	//Process the HTTP Get request
  public void doGet(HttpServletRequest request, HttpServletResponse response) throws
      ServletException, IOException {
	  
	request.setCharacterEncoding("gb2312");
    varkey = request.getParameter("key");
    vartype = request.getParameter("type");
    this.myService(request,response);
  }

  	//Process the HTTP Post request
  public void doPost(HttpServletRequest request, HttpServletResponse response) throws
      ServletException, IOException {
    doGet(request, response);
  }
  
  	//根据请求传过来的不同的查询条件,调用不同的方法来处理请求,并返回。
  protected void myService(HttpServletRequest request,
                         HttpServletResponse response) {
    if (vartype == null) {
      vartype = "";
    }
    if (vartype.equalsIgnoreCase("BY_ISBN")){
                this.doQuryISBN(request, response);
                return;
    }
    if (vartype.equalsIgnoreCase("BY_AUTHOR")){
                           this.doQuryAuthor(request, response);
                           return;
    }
    if (vartype.equalsIgnoreCase("BY_KEYWORD")){
                                this.doQuryKeyWord(request, response);
                                return;
    }

  }
  
  //将处理完的请求转发给browse.jsp来显示查询的结果。
  private void doBrowse(HttpServletRequest request, HttpServletResponse response) throws
      ServletException, IOException{
	  
	 //sc=request.getSession().getServletContext();  //获得ServletContext()的对象
	 // sc=getServletContext();   //获得ServletContext()的对象
    RequestDispatcher rd=sc.getRequestDispatcher("/browse.jsp");
    //BookDetails book=(BookDetails)request.getAttribute("book");
    //System.out.println("------------------"+book);
    
    rd.forward(request,response);
  }
  
  //处理以"ISBN"条件的请求,并给下一个请求传参数
  private void doQuryISBN(HttpServletRequest request,
                            HttpServletResponse response) {
	BookBean book=new BookBean();
    BookDetails booklist=null;
    try {
       booklist = book.findBookByISBN(varkey);

    }
    catch (SQLException ex1) {
      ex1.getMessage();
    }
    request.setAttribute("book",booklist);  //设置传给下一个请求的参数
    request.setAttribute("key",varkey);
    request.setAttribute("type",vartype);
    try {
        doBrowse(request, response);
    }
    catch (IOException ex) {
        ex.getStackTrace();
    }
    catch (ServletException ex) {
        ex.getStackTrace();
    }
   }
  
  	//处理以 "作者" 条件的请求,并给下一个请求传参数
   private void doQuryAuthor(HttpServletRequest request,
                            HttpServletResponse response){
      BookBean book=new BookBean();
      Collection booklist=null;

      try {
        booklist = book.findBookByAuthor(varkey);
      }
      catch (SQLException ex1) {
        ex1.getErrorCode();
        ex1.getStackTrace();
      }    
      request.setAttribute("book",booklist);  //设置传给下一个请求的参数
      request.setAttribute("key",varkey);
      request.setAttribute("type",vartype);

      try {
       doBrowse(request, response);
      }
      catch (IOException ex) {
       ex.getStackTrace();
      }
      catch (ServletException ex) {
        ex.getStackTrace();
     }

  }
   //处理以"KeyWord"条件的请求,并给下一个请求传参数
  private void doQuryKeyWord(HttpServletRequest request,
                            HttpServletResponse response){

      request.setAttribute("type",vartype);   //设置传给下一个请求的参数
      request.setAttribute("key",varkey);
      BookBean book=new BookBean();
      Collection booklist=null;

      try {
       booklist = book.findBookByKeywords(varkey);  //通过BookBean的对象book.findBookByKeywords(String author)返回一个书集合
      }
      catch (Exception ex1) {
       ex1.getStackTrace();
     }

     request.setAttribute("book",booklist);

   
     try {
      doBrowse(request, response);
     }
     catch (IOException ex) {
       ex.getStackTrace();
     }
     catch (ServletException ex) {
       ex.getStackTrace();
     }

  }
}

⌨️ 快捷键说明

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