首页 > 代码库 > 淘宝商城servlet部分

淘宝商城servlet部分

淘宝商城servlet部分
package com.xf.servlet;

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

import com.xf.model.*;

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

public class loginCl extends HttpServlet
{
	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException
	{

		response.setContentType("text/html");
		//中文乱码问题
		response.setCharacterEncoding("utf-8");
		PrintWriter out = response.getWriter();
		
		//得到传过来的账号密码
		String u=request.getParameter("username");
		String p=request.getParameter("password");

		//调用BO中的方法验证
		UsersBeanBo ubb=new UsersBeanBo();
		
		if(ubb.checkUser(u, p))
		{
			//用户合法
			//1.成功登陆的用户信息放入session,后面用到
			UsersBean ub=ubb.getUserBean(u);
			request.getSession().setAttribute("userInfo", ub);
			//2.把购物车的信息取出,准备在shopping3中显示
			MyCartBO mcb=(MyCartBO)request.getSession().getAttribute("mycart");
			
			ArrayList<GoodsBean> a1=mcb.showMyCart();
			
			//吧a1放入到request传到下个界面
			request.setAttribute("mycartInfo", a1);
			
			request.getRequestDispatcher("shopping3.jsp").forward(request, response);
		}
		else
		{
			//用户不合法
			request.getRequestDispatcher("shopping2.jsp").forward(request, response);
		}
	}

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

}


package com.xf.servlet;

import java.io.IOException;
import java.io.PrintWriter;

import com.xf.model.*;

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

public class OrderClServlet extends HttpServlet
{
	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException
	{

		response.setContentType("text/html");
		response.setCharacterEncoding("utf-8");
		PrintWriter out = response.getWriter();
		
		//处理完成订单(把订单写入数据库)
		//该任务将会交给OrderBeanBO
		OrderBeanBO obbo=new OrderBeanBO();
		
		//得到购物车
		MyCartBO mcbo=(MyCartBO)request.getSession().getAttribute("mycart");
		//用户id
		long	userId=((UsersBean)request.getSession().getAttribute("userInfo")).getUserid();
		
		OrderInfoBean oifb=obbo.addOrder(mcbo, userId+"");
		
		if(oifb != null)
		{
			//添加成功
			//给shopping4显示地数据
			request.setAttribute("detailbean", oifb);
			
			request.getRequestDispatcher("shopping4.jsp").forward(request, response);
		}
		else
		{
			//添加订单失败
			request.getRequestDispatcher("shopping3.jsp").forward(request, response);
		}

	}


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

}

package com.xf.servlet;

import java.io.IOException;
import java.io.PrintWriter;

import com.xf.model.*;

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

public class ShoppingCl2 extends HttpServlet
{
	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException
	{

		response.setContentType("text/html");
		//中文乱码解决
		response.setCharacterEncoding("utf-8");
		PrintWriter out = response.getWriter();
		
		//这个控制器用于检测用户是否登录,如果没有登录就进入登录界面
		//若登录过就直接进入显式用户信息和购物车的情况的页面
		//看session中是否有用户登录的信息
		UsersBean ub=(UsersBean)request.getSession().getAttribute("userInfo");
		
		if(ub == null)
		{
			//如果没有登录过!
			//跳转到shopping页面进行登录,转发
			request.getRequestDispatcher("shopping2.jsp").forward(request, response);
		}
		else
		{
			//若已经登录
			request.getRequestDispatcher("shopping3.jsp").forward(request, response);
		}

	}

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

}

package com.xf.servlet;

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

import com.xf.model.*;

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

public class ShoppingClServlet extends HttpServlet
{


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


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

		response.setContentType("text/html");
		//中文乱码问题解决
		response.setCharacterEncoding("utf-8");
		PrintWriter out = response.getWriter();
		
		//得到type值,判断用户要进行如何的操作
		String type=request.getParameter("type");
//		MyCartBO mcbo=new MyCartBO();	//每次都会创建一个新的购物车,没法保存,用session
		//多购物车问题
		//试图从session中取出一个购物单选栏,重名字取
		MyCartBO mcbo=(MyCartBO)request.getSession().getAttribute("mycart");
		
		//如果是第一次取得话是取不出来的
		if(mcbo == null)
		{
			//该用户第一次买
			//创建一个购物车栏,放入session
			mcbo=new MyCartBO();
			//把mycart名字,mcbo值,传入session,session中只有一个mycart,不然就会覆盖类似hashmap
			request.getSession().setAttribute("mycart", mcbo);
		}

		
		if(type.equals("addGoods"))
		{
			//要把数据转换到showMycart.jsp中要有ID号
			String goodsId=request.getParameter("goodsId");
			
			//调用BO里面的函数添加到购物车
			
			mcbo.addGoods(goodsId, "1");
			
		}
		else if(type.equals("delGoods"))
		{
			//得到要删除的ID
			String goodsId=request.getParameter("goodsId");
			
			//删除货物
			mcbo.delGoods(goodsId);
			
		}
		else if(type.equals("show"))
		{
			//donothing,因为后面有跳转,这里就不要跳转了
		}
		else if(type.equals("delAll"))
		{
			System.out.println("!!!");
			mcbo.clear();
		}
		else if(type.equals("updateGoods"))
		{
			//用户希望修改数量
			//如何得到ID 和NUM
			//接受ID,可能有很多个ID
			String goodsId[]=request.getParameterValues("goodsId");
			String newNums[]=request.getParameterValues("newNums");
			
			for(int i=0 ; i<goodsId.length ; ++i)
			{
				System.out.println("id=="+goodsId[i]+"数量="+newNums[i]);
				
				//修改
				mcbo.upGoods(goodsId[i], newNums[i]);
			}
			
//			mcbo.upGoods(goodsId, newNum);
		}
		//然后把购物车里面的信息全部取出准备拉出来显示
		ArrayList<GoodsBean> a1=mcbo.showMyCart();
		
		//吧信息跳转到购物车页面showMyCart.jsp,放到request里面去
		request.setAttribute("mycartinfo", a1);
		//跳转
		request.getRequestDispatcher("showMycart.jsp").forward(request, response);




	}

}

/**
 * 功能:这是一个控制处理器,控制goodsBeanBo和jsp关联的数据
 * 时间:2014年7月6日21:08:34
 */
package com.xf.servlet;

import java.io.IOException;
import java.io.PrintWriter;

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

import com.xf.model.*;

public class showGoodsClServlet extends HttpServlet
{
	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException
	{

		response.setContentType("text/html");
		response.setCharacterEncoding("utf-8");
		PrintWriter out = response.getWriter();
		
		//得到type看是那种要求工作
		String type=request.getParameter("type");
		
		if(type.equals("showDetail"))
		{
			//得到要显示地ID号
			String goodsId=request.getParameter("id");
			//调用GoodsBeanBo
			GoodsBeanBO gbb=new GoodsBeanBO();
			//得到数据
			GoodsBean gb=gbb.getGoodsBean(goodsId);
			//吧gb放入到request里面去
			request.setAttribute("goodsInfo", gb);
			//跳转到showDetail.jsp里面去
			request.getRequestDispatcher("showDetail.jsp").forward(request, response);
		}
		else if(type.equals("fenye"))
		{
			//得到pageNow
			String pageNow=request.getParameter("pageNow");
			
			//吧pageNow传出去,传到request里面去
			request.setAttribute("abc", pageNow);			
			
			//跳转到主界面
			request.getRequestDispatcher("index.jsp").forward(request, response);
		}
	}


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

}