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

📄 showallbooksservlet.java

📁 一套网上书店系统采用JAVABEAN+SERVLET+JSP
💻 JAVA
字号:
package cn.dang.servlet;

import ghy_db.Conn_Manager;

import java.io.IOException;
import java.util.HashMap;

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

import cn.dang.entity.BookForSelect;
import cn.dang.service.AllService;

public class ShowAllBooksServlet extends HttpServlet {

	/**
	 * Constructor of the object.
	 */
	public ShowAllBooksServlet() {
		super();
	}

	/**
	 * Destruction of the servlet. <br>
	 */
	public void destroy() {
		super.destroy(); // Just puts "destroy" string in log
		// Put your code here
	}

	/**
	 * The doGet method of the servlet. <br>
	 * 
	 * This method is called when a form has its tag value method equals to get.
	 * 
	 * @param request
	 *            the request send by the client to the server
	 * @param response
	 *            the response send by the server to the client
	 * @throws ServletException
	 *             if an error occurred
	 * @throws IOException
	 *             if an error occurred
	 */
	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		AllService allService = new AllService();
		BookForSelect bookFor = new BookForSelect();
		try {
			// 创建保存SQL语句中where子句的变量
			String where_String = " ";
			// 创建连接where子句字符串的起始字符串
			String String_start = "";
			// 创建连接where子句字符串的结束字符串
			String String_over = "";
			// 获得分页信息和类型信息
			String page = request.getParameter("page");
			String type = request.getParameter("type");
			BookForSelect bookBySession = (BookForSelect) request.getSession()
					.getAttribute("Gaoji");
			// 如果状态变量为0(不是全部查询的情况下)执行

			// 以下各判断从页面接受的值以便连接SQL语句中的where子句
			// 如果is_a变量不等于空字符串和null的时候进入执行代码
			if (request.getParameter("is_a") != null
					&& request.getParameter("is_a").equals("1")) {
				// 从页面获得书籍名称,如果不等于null和空字符串的时候进入判断
				if (request.getParameter("bkName") != null
						&& !("".equals(request.getParameter("bkName")))) {
					// 获得书籍名称
					String decode_bkname = request.getParameter("bkName");
					// 将获得的值含-的替换成%
					decode_bkname = decode_bkname.replaceAll("[-]", "%");
					// 进行解码
					decode_bkname = java.net.URLDecoder.decode(decode_bkname);
					// 连接语句
					where_String = " books.bookname like '%" + decode_bkname
							+ "%' or ";
					String_start = " and (";
					String_over = " )";
					request.setAttribute("bkName", decode_bkname);
				}
			} else {
				if (request.getParameter("bkName") != null
						&& !"".equals(request.getParameter("bkName"))) {
					where_String = " books.bookname like '%"
							+ request.getParameter("bkName") + "%' or ";
					String_start = " and (";
					String_over = " )";
					request.setAttribute("bkName", request
							.getParameter("bkName"));
				}
			}
			if (request.getParameter("bkName") != null
					&& !("".equals(request.getParameter("bkName")))) {
				if (request.getParameter("bName") != null
						&& !"".equals(request.getParameter("bName"))) {
					where_String = "books.bookname like '%"
							+ request.getParameter("bName") + "%' or ";
					String_start = " and (";
					String_over = " )";
					bookFor.setBookName(request.getParameter("bkName"));
				}
			}
			if (request.getParameter("authorName") != null
					&& !"".equals(request.getParameter("authorName"))) {
				where_String += "author.authorname like '%"
						+ request.getParameter("authorName") + "%' or ";
				String_start = " and (";
				String_over = " )";
				bookFor.setAuthroName(request.getParameter("authorName"));
			}
			if (request.getParameter("concemName") != null
					&& !("".equals(request.getParameter("concemName")))) {
				where_String += "bookconcem.concemname like'%"
						+ request.getParameter("concemName") + "%' or ";
				String_start = " and (";
				String_over = " )";
				bookFor.setConcemName(request.getParameter("concemName"));
			}
			if ((request.getParameter("dangPrice") != null && !""
					.equals(request.getParameter("dangPrice")))
					&& (request.getParameter("dangPrice2") != null && !""
							.equals(request.getParameter("dangPrice2")))) {
				where_String += "books.free between "
						+ request.getParameter("dangPrice") + " and "
						+ request.getParameter("dangPrice2") + " or ";
				String_start = " and (";
				String_over = " )";
				bookFor.setStartFree(request.getParameter("dangPrice"));
				bookFor.setOverFree(request.getParameter("dangPrice2"));
			}
			if ((request.getParameter("publishTime") != null && !""
					.equals(request.getParameter("publishTime")))
					&& (request.getParameter("overTime") != null && !""
							.equals(request.getParameter("overTime")))) {
				where_String += "books.publishTime between '"
						+ request.getParameter("publishTime")
						+ " 00:00:00' and '" + request.getParameter("overTime")
						+ " 23:59:59' or ";
				String_start = " and (";
				String_over = " )";
				bookFor.setStartTime(request.getParameter("publishTime"));
				bookFor.setOverTime(request.getParameter("publishTime"));
			}
			// 在where_String不为null,或不为空字符串的时候将最后一个连接字符串的or去掉
			if (where_String != null && !"".equals(where_String.trim())) {
				where_String = where_String.substring(0,
						where_String.length() - 3);
			}
			// 连接SQL语句
			where_String = String_start + where_String + String_over;
			// 获得从数据值
			HashMap hashMap = (HashMap) allService
					.getBookService()
					.list_shop(
							"select books.bookname,books.price,books.price-books.free/10*books.price,author.authorname,bookconcem.concemname,books.publishtime,twotype.typename,books.pointgrade,author.authorname,books.bid,books.bcid,books.isbn,books.aid,books.tid",
							"from books,author,bookconcem,twotype",
							" where books.aid=author.aid and books.bcid=bookconcem.cid and books.tid=twotype.tid "
									+ where_String, "", type, "books.tid",
							"books.bid", page, 5, true);

			// 如果书籍名称不等与null的情况下
			if (request.getParameter("bkName") != null
					&& !("".equals(request.getParameter("bkName")))) {
				// 进行书籍名称的再编码
				String encode_bkname = java.net.URLEncoder.encode(request
						.getParameter("bkName"));
				// 将%替换成-,防止提交时再次出现乱码问题;
				encode_bkname = encode_bkname.replaceAll("[%]", "-");
				// 将值保存在request中
				request.setAttribute("encode_bkname", encode_bkname);
			}
			request.setAttribute("listBooks", hashMap.get("listBooks"));
			request.setAttribute("pagebean", hashMap.get("pagebean"));
			request.setAttribute("typeList", hashMap.get("TypeList"));
			Conn_Manager.transaction_commit();
			request.getRequestDispatcher(
					"../manager/rightShowBooks.jsp?page=" + page + "&type="
							+ type).forward(request, response);
		} catch (Throwable e) {
			// TODO Auto-generated catch block
			Conn_Manager.transaction_rollback();
			e.printStackTrace();
		}
	}

	/**
	 * The doPost method of the servlet. <br>
	 * 
	 * This method is called when a form has its tag value method equals to
	 * post.
	 * 
	 * @param request
	 *            the request send by the client to the server
	 * @param response
	 *            the response send by the server to the client
	 * @throws ServletException
	 *             if an error occurred
	 * @throws IOException
	 *             if an error occurred
	 */
	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		this.doGet(request, response);
	}

	/**
	 * Initialization of the servlet. <br>
	 * 
	 * @throws ServletException
	 *             if an error occurs
	 */
	public void init() throws ServletException {
		// Put your code here
	}

}

⌨️ 快捷键说明

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