今天整理购物车模块,目前都是用基础的Servlet技术实现的,先前还看到一个帖子说现在大家都不怎么用servlet了,直接用框架啥的,忘了以前servlet+jsp的天下了,虽然面试好像经常被怼为什么不用框架,但是基础还是很重要的啊,尤其是项目的整个流程还是要靠逻辑思维整一遍的。就用原生Java代码,咋地啦,哼╭(╯^╰)╮
喏,大概是使用mvc模式实现,包括表现层,控制层,业务层,用到的数据库是mysql数据库,今天我们主要来说一下购物车功能的实现:
购物车:实现添加商品、删除购物项、清空购物车、结算功能。
购物模块
准备工作
购物项CartItem对象
购物车Cart对象
package com.itheima.domain; import java.util.HashMap; import java.util.Map; public class Cart {
定义一个购物项集合属性,用于维护所有的购物项,集合采用Map<String,product>
1)map.key:商品的id;
2)map.value:商品信息
采用map集合,方便通过商品id获得商品信息(value)
//该购物车中存储的n个购物项 private Map<String,CartItem> cartItems = new HashMap<String,CartItem>(); //定义购物车的总计,添加、删除等操作不进行计算,直接获得时一并计算 商品的总计private double total; public Map<String, CartItem> getCartItems() { return cartItems; } public void setCartItems(Map<String, CartItem> cartItems) { this.cartItems = cartItems; } public double getTotal() { return total; } public void setTotal(double total) { this.total = total; } }
代码: