购物车项目(五)——编写CartServlet类
来源:互联网 发布:安捷伦数据采集仪电池 编辑:程序博客网 时间:2024/06/11 12:43
购物车项目(五)——编写CartServlet类
编写思路:
1.创建CartServlet类,并继承HttpServlet
2.设置属性:action,并创建商品业务逻辑类对象
3.doGe()方法写为doPost(request,response)
4.写doPost()方法,并判断action动作
5.编写添加,删除商品的方法,并利用购物车类中的方法。
代码如下:
package 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 dao.ItemsDAO;import entity.Cart;import entity.Items;public class CartServlet extends HttpServlet { private String action ; //表示购物车的动作 ,add,show,delete //商品业务逻辑类的对象 private ItemsDAO idao = new ItemsDAO(); /** * Constructor of the object. */ public CartServlet() { 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 { 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 { response.setContentType("text/html;charset=utf-8"); PrintWriter out = response.getWriter(); if(request.getParameter("action")!=null) { this.action = request.getParameter("action"); if(action.equals("add")) //如果是添加商品进购物车 { if(addToCart(request,response)) { request.getRequestDispatcher("/success.jsp").forward(request, response); } else { request.getRequestDispatcher("/failure.jsp").forward(request, response); } } if(action.equals("show"))//如果是显示购物车 { request.getRequestDispatcher("/cart.jsp").forward(request, response); } if(action.equals("delete")) //如果是执行删除购物车中的商品 { if(deleteFromCart(request,response)) { request.getRequestDispatcher("/cart.jsp").forward(request, response); } else { request.getRequestDispatcher("/cart.jsp").forward(request, response); } } } } //添加商品进购物车的方法 private boolean addToCart(HttpServletRequest request, HttpServletResponse response) { String id = request.getParameter("id"); String number = request.getParameter("num"); Items item = idao.getItemsById(Integer.parseInt(id)); //是否是第一次给购物车添加商品,需要给session中创建一个新的购物车对象 if(request.getSession().getAttribute("cart")==null) //getsession.getAttribute(String name)返回session对象中与指定名称绑定的对象,如果不存在则返回null { Cart cart = new Cart(); request.getSession().setAttribute("cart",cart); } Cart cart = (Cart)request.getSession().getAttribute("cart"); if(cart.addGoodinCart(item, Integer.parseInt(number)))//字符类型转换成整型 { return true; } else { return false; } } //从购物车中删除商品 private boolean deleteFromCart(HttpServletRequest request, HttpServletResponse response) { String id = request.getParameter("id"); Cart cart = (Cart)request.getSession().getAttribute("cart"); Items item = idao.getItemsById(Integer.parseInt(id)); if(cart.removeGoodfromCart(item)) { return true; } else { return false; } } /** * Initialization of the servlet. <br> * * @throws ServletException if an error occurs */ public void init() throws ServletException { // Put your code here }}
0 0
- 购物车项目(五)——编写CartServlet类
- 购物车项目(一)——编写商品类
- 购物车项目(二)——编写购物车类
- 购物车项目(三)——编写数据库
- 购物车项目(四)——编写业务逻辑类
- JAVAEE开发——网上购物子系统(五)
- 电商项目笔记之五:购物车功能
- PHP编写一个购物车的类
- ruby on rails实例depot(五)——购物车的添加
- Java编写购物车系统
- 购物车项目
- 购物车项目笔记
- 购物车项目总结
- 购物车的+—
- 购物车—NET
- MVC简易购物车项目--购物大厅
- ajax(五) Ajax应用:加入购物车
- Thinkphp——商品加入购物车在购物车列表显示(还有购物车删除)
- 内联汇编
- 墙相对移动
- margin padding border
- 让EditText不能自动获取焦点
- 使用javac编译Servlet类的方法
- 购物车项目(五)——编写CartServlet类
- R语言-向量化操作(apply、tapply、lapply、sapply、mapply、table等)
- JAVA基础(一)
- Spark数据分析之第5课
- boostrap
- shared element
- 我的第一个servlet程序
- Activity跳转过程中OnActivityForResult()不执行的原因。
- Library string type(2)——关于String的操作