显示购物车处理类(ShowCartServlet)
package net.lh.shop.servlet;
/**
* 功能:显示购物车控制程序
* 作者:李荟
* 日期:2019年12月14日
*/
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import net.lh.shop.bean.Product;
import net.lh.shop.service.ProductService;
@WebServlet("/showCart")
public class ShowCartServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 获取商品类别标识符
int categoryId = Integer.parseInt(request.getParameter("categoryId"));
// 获取session对象
HttpSession session = request.getSession();
// 获取购物车
LinkedHashMap<Integer, Integer> cart = (LinkedHashMap<Integer, Integer>) session.getAttribute("cart");
// 判断购物车是否为空
if (cart != null) {
// 定义购物表
List<HashMap<String, Object>> shoppingTable = new ArrayList<HashMap<String, Object>>();
// 创建商品服务对象
ProductService productService = new ProductService();
// 购物总金额
double totalPrice = 0.0;
// 遍历购物车
for (Integer id : cart.keySet()) {
// 获取商品对象
Product product = productService.findProductById(id);
// 生成购物表记录
HashMap<String, Object> shoppingItem = new HashMap<String, Object>();
shoppingItem.put("id", product.getId());
shoppingItem.put("name", product.getName());
shoppingItem.put("price", product.getPrice());
shoppingItem.put("amount", cart.get(id));
shoppingItem.put("sum", product.getPrice()