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

📄 tb_shopping_action.java

📁 这是一个Struts网上商城(图书)的管理系统源代码.
💻 JAVA
字号:
package com.bookshop.action;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;

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

import com.bookshop.dto.*;
import com.bookshop.dao.*;

public class tb_shopping_action extends HttpServlet {

	/**
	 * 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 {

		request.setCharacterEncoding("gb2312");
		response.setContentType("text/html;charset=gb2312");
		PrintWriter out = response.getWriter();
		doPost(request,response);
		
	}

	/**
	 * 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 {

		
		
		
		//购物车的操作
		request.setCharacterEncoding("gb2312");
		response.setContentType("text/html;charset=gb2312");
		PrintWriter out = response.getWriter();
		HttpSession session =request.getSession();
		
		
		ArrayList v=(ArrayList)session.getAttribute("cart");//用来存放购物车中的产品
		String action=request.getParameter("action");
		String isbn=request.getParameter("isbn");
		bookinfo_dao dao=new bookinfo_dao();
		bookinfo_dto dto=dao.book_sel(isbn);//根据书的编号查询书的信息  返回bookinfo_dto类型


		boolean flag=false;
		
		//购物车页
		if(action!=null&&action.equals("cart_see")){

			//网上调查
			ArrayList poll_list=new poll_dao().po_select();
			request.setAttribute("poll_list",poll_list);
			
			//公告信息
	 		ArrayList bbs_list=new bbs_dao().bbs_select();
	 		request.setAttribute("bbs_list",bbs_list);
	 		
	 		if(v!=null)
	 			request.getRequestDispatcher("../cart_see.jsp").forward(request,response);
	 		else
	 			request.getRequestDispatcher("../cart_null.jsp").forward(request,response);
			
			   }

		//向购物车中添加商品
		System.out.print(v);
		if(action!=null&&action.equals("add")){

			//网上调查
			ArrayList poll_list=new poll_dao().po_select();
			request.setAttribute("poll_list",poll_list);
			
			//公告信息
	 		ArrayList bbs_list=new bbs_dao().bbs_select();
	 		request.setAttribute("bbs_list",bbs_list);
	 		
		  if(v==null){
		      bookshop_dto bookdto=new bookshop_dto();
		      bookdto.setNumber(1);
		      bookdto.setIsbn(dto.getIsbn());           
		      bookdto.setBookname(dto.getBookname());
		      bookdto.setPrice(dto.getPrice());
		      
		      bookdto.setAmount(dto.getPrice()*1);
		      ArrayList list=new ArrayList();
		      list.add(bookdto);
		     
		      session.setAttribute("cart",list);
		     
		      request.getRequestDispatcher("../cart_see.jsp").forward(request,response);
		      flag=true;//如果第一次购买   flag为真
		   }
		   //购买重复的商品
		   else{
		   for(int i=0;i<v.size();i++){
		        bookshop_dto bookdto=(bookshop_dto)v.get(i);
		        if(dto.getIsbn().equals(bookdto.getIsbn())){
		        //检测购物车中是否有新添加的书
		        float count=0;
		        bookdto.setNumber(bookdto.getNumber()+1);//在原来数量基础上+1
		        count=bookdto.getNumber();
		        bookdto.setIsbn(dto.getIsbn());          //重设书号 
		        bookdto.setBookname(dto.getBookname());  //重设书名 
		        bookdto.setPrice(dto.getPrice());//书的单价
		        float n=count *  dto.getPrice();
		        bookdto.setAmount(n);

		        flag=true;
		        request.getRequestDispatcher("../cart_see.jsp").forward(request,response);
		        
		        }

		      }
		       if(flag!=true){
		        //购买不重复的书
		      bookshop_dto bookdto=new bookshop_dto();
		      bookdto.setNumber(1);
		      bookdto.setIsbn(dto.getIsbn());           
		      bookdto.setBookname(dto.getBookname());
		      bookdto.setPrice(dto.getPrice());
		      bookdto.setAmount(dto.getPrice()*1);
		        v.add(bookdto);
		        session.setAttribute("cart",v);
		        
		        request.getRequestDispatcher("../cart_see.jsp").forward(request,response);
		        }  
		      
		   }
		   
		   
		  
		}
//		修改商品的数量
		if(action!=null&&action.equals("update")){
			
			//网上调查
			ArrayList poll_list=new poll_dao().po_select();
			request.setAttribute("poll_list",poll_list);
			
			//公告信息
	 		ArrayList bbs_list=new bbs_dao().bbs_select();
	 		request.setAttribute("bbs_list",bbs_list);
	 		
	 		
		    for(int i=0;i<v.size();i++){
		    String book_name;
		    int num;
		      try{
		       book_name=request.getParameter("bookname"+i);
		       }catch(Exception e){book_name="";}
		      try{  
		       num=Integer.parseInt(request.getParameter("num"+i));
		        }catch(Exception e){num=0;}
		      
		       System.out.print("hello");
		     
		      if(book_name!=null&&num!=0){
		          bookshop_dto book_dto=(bookshop_dto)v.get(i);
		          
		          if(book_name.equals(book_dto.getBookname())){
		              book_dto.setNumber(num);              
		              book_dto.setAmount(num*book_dto.getPrice());
		              
		              request.getRequestDispatcher("../cart_see.jsp").forward(request,response);
		                
		              }
		           
		           }
		      }
		}
//		删除购物车中的商品
		if(action!=null&&action.equals("del")){
			//网上调查
			ArrayList poll_list=new poll_dao().po_select();
			request.setAttribute("poll_list",poll_list);
			
			//公告信息
	 		ArrayList bbs_list=new bbs_dao().bbs_select();
	 		request.setAttribute("bbs_list",bbs_list);	
			
			
		int id=Integer.parseInt(request.getParameter("id"));
		
		for(int i=0;i<v.size();i++)
		{
		  v.remove(id);
		  request.getRequestDispatcher("../cart_see.jsp").forward(request,response);
		}

		}
		
		//清空购物车
		if(action!=null&&action.equals("cart_clear")){
			
			//网上调查
			ArrayList poll_list=new poll_dao().po_select();
			request.setAttribute("poll_list",poll_list);
			
			//公告信息
	 		ArrayList bbs_list=new bbs_dao().bbs_select();
	 		request.setAttribute("bbs_list",bbs_list);	
	 		
	 		session.removeAttribute("cart");
	 		request.getRequestDispatcher("../cart_null.jsp").forward(request,response);
		}
		
		
		//去收银台结账
		if(action!=null&&action.equals("check_out")){
			//网上调查
			ArrayList poll_list=new poll_dao().po_select();
			request.setAttribute("poll_list",poll_list);
			
			//公告信息
	 		ArrayList bbs_list=new bbs_dao().bbs_select();
	 		request.setAttribute("bbs_list",bbs_list);	
			
			
			 String username=session.getAttribute("username").toString();
             member_dto user_dto=new member_dao().sel(username);
             request.setAttribute("user_dto",user_dto);
             request.setAttribute("bnumber",request.getParameter("bnumber"));	
	 		
	 		
	 		request.getRequestDispatcher("../cart_checkout.jsp").forward(request,response);
		}
		
		//提交表单   将表单中的数据提交到数据库中
		
		if(action!=null&&action.equals("form_sub")){
			
			  order_dto order=new order_dto();
			  order.setUsername(request.getParameter("username"));
			  order.setTruename(request.getParameter("truename"));
			  order.setAddress(request.getParameter("address"));
			  order.setPostcode(request.getParameter("postcode"));
			  order.setTel(request.getParameter("tel"));
			  order.setPay(request.getParameter("pay"));
			  order.setCarry(request.getParameter("carry"));
			  order.setEmail(request.getParameter("email"));
			  order.setBz(request.getParameter("bz"));
			  order.setBnumber(request.getParameter("bnumber"));
			  
			  order_detail_dao ord=new order_detail_dao();
			  int n=new order_dao().order_add(order);//提交表单中的内容
			  if(n>0){
			     
			     order_dto getid=new order_dao().orderid();//获取生成的订单号     
			     int orderid=Integer.parseInt(getid.getOrderid());
			     ArrayList list=(ArrayList)session.getAttribute("cart");//读取购物车中的商品信息
			            for(int i=0;i<list.size();i++){
			              bookshop_dto dto1=(bookshop_dto)list.get(i);
			              int m=ord.add(dto1,orderid);//将购物车中的商品添加到数据库
			            }
			            out.print("<script>alert('成功 您的定单号是:  "+orderid+"');window.location.href='../index.jsp';</script>");
			         }
			   
			   else
			      out.print("sorrys");
			
	 		
	 		
	 		request.getRequestDispatcher("tb_bookinfo_action?action=index_page").forward(request,response);
		}
		
		
		out.flush();
		out.close();
	}

}

⌨️ 快捷键说明

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