以session技术实现的初步购物车案例---商品层

19 篇文章 0 订阅
10 篇文章 0 订阅

public class AddToCarServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//设置字符集
request.setCharacterEncoding(“utf-8”);
response.setContentType(“text/html;charset=utf-8”);
//创建输出流
PrintWriter out = response.getWriter();
//接收数据,获取商品数组
String[] goods = request.getParameterValues(“good”);

    //处理数据
    //获得Session作用域
    HttpSession session = request.getSession();
    //根据设置的值获取作用域中的商品集合
    List<String> car = (List<String>) session.getAttribute("car");
    //判断如果为空,创建集合
    if(car==null){
        car = new ArrayList<String>();
    }
    //将选中的商品数组添加到集合中
    car.addAll(Arrays.asList(goods));
    //将集合添加到作用域中
    session.setAttribute("car",car);
    //输出流打印已添加
    out.println("<h1>您的商品已经添加到购物车中</h1>");
}

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

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
购物案例: 基本设计思想: (1)使用session机制,保存用户状态(用户购买的商品)。 (2)为了方便对购买操作的处理(比如,购买商品、 删除已经购买的商品、查看已经购买的商品、计价等等), 设计一个Cart类,封装这些操作。Cart对象会放在Session对象里。 具体的设计: 表:t_computer create table t_computer( id bigint primary key auto_increment, name varchar(50), description varchar(100), pic varchar(255), price double(8,2)); 实体类: Computer dao: ComputerDAO Comuter findById(long id) List findAll() save(Computer computer); ComputerDAOJdbcImpl 测试dao: 购物的设计: CartItem //商品条目 属性: int qty //购买产品的数量 Computer c //购买的产品是什么 方法: get/set方法 Cart //购物 属性: List items //存放所有购买的商品 方法: boolean add(CartItem item) //boolean值如果是false,表示 已经购买过该商品。 void delete(long id) //删除某个商品。id是产品的ID号。 void modify(long id,int qty) //修改商品的数量 double sum() //计价 void clear() //清空商品 List list //列出所有商品 页面: cart_list.jsp: 功能:列出所有商品,用户点击链接实现购买。 实现:查询t_computer表(由ShoppingServlet来负责查询) cart.jsp 功能:列出所有已经购买的商品,并且可以修改数量、 删除某个商品、清空购物、返回到cart_list.jsp。 实现:(ShoppingServlet调用以下方法) 列出所有已经购买的商品: cart.list() 修改数量:cart.modify() 删除:cart.delete() 清空:cart.clear() ShoppingServlet: (1)创建Session: request.getSession(); (2)创建Cart,并且将Cart放到session (3)调用Cart的方法,完成请求;也会调用 ComputerDAO完成数据库操作

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值