JavaWeb_利用Session实现简易购物车

来源:互联网 发布:五矿证券软件下载 编辑:程序博客网 时间:2024/05/21 22:40
package com.Servlet;import java.io.IOException;import java.util.ArrayList;import java.util.List;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import com.Product.Product;/** * Servlet implementation class MainServlet */@WebServlet(name = "MainServlet", urlPatterns = { "/ProductInfor","/ShowShopCar","/ShowShopHall","/PushShopCar" })public class MainServlet extends HttpServlet {private static final long serialVersionUID = 1L;           /**     * @see HttpServlet#HttpServlet()     */    public MainServlet() {        super();        // TODO Auto-generated constructor stub    }/** * @see Servlet#init(ServletConfig) */    public List<Product> products1 = new ArrayList<Product>();    public List<Product> products2 = null;    public List<String> numbers = null;@Overridepublic void init() throws ServletException {products1.add(new Product(1, "C语言", "清华出版社", 25.50F));products1.add(new Product(2, "Java", "清华出版社", 65.50F));products1.add(new Product(3, "C#", "清华出版社", 15.50F));products1.add(new Product(4, "汇编语言", "清华出版社", 85.50F));products1.add(new Product(5, "UML", "清华出版社", 36.50F));products1.add(new Product(6, "C++", "清华出版社", 50.50F));products1.add(new Product(7, "计算机组成原理", "清华出版社", 25.50F));products1.add(new Product(8, "数据库", "清华出版社", 68.50F));}@SuppressWarnings("unused")private Product getProduct(int id){for(Product product : products1){if(product.getId() == id){return product;}}return null;}/** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doPost(request, response);}/** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {String uri = request.getRequestURI();if (uri.endsWith("/ShowShopCar")) {ShowShopCar(request, response);}else if (uri.endsWith("/ProductInfor")) {ProductInfor(request, response);}else if (uri.endsWith("/ShowShopHall")) {ShowShopHall(request, response);}else if (uri.endsWith("/PushShopCar")) {PushShopCar(request, response);}}private void ShowShopHall(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{request.getSession().setAttribute("list1",products1);response.sendRedirect("MainHall.jsp");}private void ShowShopCar(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{@SuppressWarnings("unchecked")ArrayList<Product> products2 = (ArrayList<Product>)request.getSession().getAttribute("list2");@SuppressWarnings("unchecked")ArrayList<String> numbers = (ArrayList<String>)request.getSession().getAttribute("number");request.getSession().setAttribute("number",numbers);request.getSession().setAttribute("list2",products2);response.sendRedirect("ShowShopCar.jsp");}private void ProductInfor(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{Object[] p = products1.toArray();request.getSession().setAttribute("book",((Product) p[Integer.parseInt(request.getParameter("id"))-1]));response.sendRedirect("ProductInfor.jsp");}private void PushShopCar(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{@SuppressWarnings("unchecked")ArrayList<Product> products2 = (ArrayList<Product>)request.getSession().getAttribute("list2");@SuppressWarnings("unchecked")ArrayList<String> numbers = (ArrayList<String>)request.getSession().getAttribute("number");if(products2==null&&numbers==null){products2 = new ArrayList<Product>();numbers = new ArrayList<String>();products2.add((Product)request.getSession().getAttribute("book"));numbers.add(request.getParameter("number"));request.getSession().setAttribute("list2",products2);request.getSession().setAttribute("number",numbers);}else{products2.add((Product)request.getSession().getAttribute("book"));request.getSession().setAttribute("list2",products2);numbers.add(request.getParameter("number"));request.getSession().setAttribute("number",numbers);}response.sendRedirect("ShowShopCar.jsp");}}

1 0
原创粉丝点击