package com.east.servlet; import java.io.IOException; import java.io.PrintWriter; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Vector; 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.east.foodBean.CateBean; import com.east.foodDao.CateDAO; /*** * 购物车的显示转到showcart.jsp中去 * @author Administrator * */ public class ShopCartServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("GBK"); response.setContentType("text/html;charset=GBK"); PrintWriter out = response.getWriter(); HttpSession session = request.getSession(); Vector food = (Vector)session.getAttribute("voCart"); request.setAttribute("food", food); request.getRequestDispatcher("shopCart.jsp").forward(request, response); } public CateBean exitstCateBean (int id,Vector voCate){ Iterator iter = voCate.iterator(); while (iter.hasNext()){ CateBean cateBean = (CateBean)(iter.next()); if (cateBean.getCardId() ==id){ return cateBean; } } return null; } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); doGet(request,response); } } package com.east.servlet; import java.io.IOException; import java.io.PrintWriter; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Vector; 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.east.foodBean.CateBean; import com.east.foodDao.CateDAO; /*** * 购买食品的servlet * @author Administrator * */ public class BuyServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("GBK"); response.setContentType("text/html;charset=GBK"); PrintWriter out = response.getWriter(); HttpSession session = request.getSession(); CateDAO cateDAO = new CateDAO(); int cateId = Integer.parseInt(request.getParameter("cateId")); if (session.getAttribute("voCart") == null){ session.setAttribute("voCart", new Vector()); } Vector voCart = (Vector)(session.getAttribute("voCart")); CateBean bean = isExistence(voCart,cateId); if (bean == null){ bean = cateDAO.selectAll(cateId); bean.setCount(1); voCart.add(bean); }else{ bean.setCount(bean.getCount()+1); } //计算总价格 float allPrice = this.totalPrice(voCart); session.setAttribute("voCart", voCart); session.setAttribute("allPrice", allPrice); out.println("成功加入购物车"); } public CateBean isExistence(Vector voCart,int id){ Iterator it = voCart.iterator(); while(it.hasNext()){ CateBean item = (CateBean)(it.next()); if(item.getCardId() == id){ return item; } } return null; } /** * 计算总价格 * @param voCart * @return */ public float totalPrice(Vector voCart){ Iterator it = voCart.iterator(); float price=0.0f; while(it.hasNext()){ CateBean cateBean = (CateBean)it.next(); price = price + cateBean.getCurPrice() * cateBean.getCount(); } System.out.println("总价格:"+price); return price; } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request,response); } }