工作任务:模拟淘宝登录和购物车功能:使用cookie记录登录名,下次登录时能够记得上次的登录名,使用cookie模拟购物车功能,使用session记住登录信息并验证是否登录,防止利用url打开网站,并实现退出登录功能
登入界面
<% Cookie[] cks =request.getCookies(); String str=null; for(Cookie ck:cks) {
if(ck.getName().equals("name"));
str=URLDecoder.decode(ck.getValue());
} %> <form action='check1.jsp' method="post" > 用户名:<input type="text" name="name" value=<%=str %>> 密码:<input type="password" name="mima"> <input type="submit" value="确定"> </form>
检查登入,创建session
<% String name = request.getParameter("name"); String mima=request.getParameter("mima"); //创建cookie Cookie ck = new Cookie("name",name); ck.setMaxAge(60*60*24);//设置过期时间 response.addCookie(ck); out.print("登入成功,2秒后跳转到主界面"); //输出登入成功 //创建session session.setAttribute("name", name); //如果连续超过20分钟没有任何请求发送给服务器,session就失效 session.setMaxInactiveInterval(60*20); //页面跳转 response.setHeader("refresh", "2;Main1.jsp"); %>
添加购物车界面
<body> 主界面 <br> <form action="gwc.jsp" method="post"> 商品名称:<input type="text" name="goods"> <input type="submit" value="添加到购物车"> <br> <a href="tuichu.jsp">退出登入</a> </form> </body>
显示购物车
<% Cookie[] c1 =request.getCookies(); for(Cookie cka:c1) { if(cka.getName().equals("goods")) out.write(URLDecoder.decode(cka.getValue())+"<br>"); } %> <br> <a href="Main1.jsp">返回购物主页</a> <br> <a href="tuichu.jsp">退出登入</a>
退出登入
<body> 登入已经退出 <% session.removeAttribute("name"); %> </body>