Web基础之Cookie对象和Session对象项目实战和对比
一、项目背景:
描述:早期电商网站,在不登录的情况下,能够保存商品到购物车,并且在近期再次进入该网站,还能看到购物
车中的商品,这是如何实现呢?
二、项目分析:
购物车主要是能在一定时间内记住用户选择的商品;这和我们学习Cookie和Session的生效时间对应起来;那么具体该如何实现购物车功能呢?
三、项目思路:
为模拟购物车功能,我们需要一个展示商品列表的页面,并且能添加对应的商品到购物车中,当成功添加时,应该有提示信息,提示加入购物车成功,当点击显示购物车时,需要能展示购物车中的商品;
gooList.jsp--->商品展示页面
AddGoodsServlet.java---->处理加入购物车的逻辑
ShowGoodsServlet.java---->处理跳转到购物车中商品的逻辑
shoppingCar.jsp--->展示购物车中的商品
当第一次请求加入购物车时,创建一个Cookie,把商品信息存入到Cookie中,并设置Cookie的有效期为一天(可以根据需要自己设置)当下一次再次有商品再次加入到购物车时,更新Cookie的值;并重新设置Cookie的有效期为一天;显示购物车中的商品时,先获取所有的请求求,看是否有我们需要的请求头,如果有,从该请求头中获取我们所需要的信息,然后展示出来;
四、项目源代码以及运行效果:
商品展示页面:goodsList.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>商品列表界面</title>
</head>
<body style="text-align: center">
<table style="margin-top: 50px;margin-