该购物过程是在session范围内完成的,需要使用session对象实现信息的共享

(1)购买“肉类”商品的页面

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>购物肉类商品页面</title>
</head>
<body>
<% request.setCharacterEncoding("UTF-8");
if(request.getParameter("c1")!=null)
session.setAttribute("s1",request.getParameter("c1"));
if(request.getParameter("c2")!=null)
session.setAttribute("s2",request.getParameter("c2"));
if(request.getParameter("c3")!=null)
session.setAttribute("c3",request.getParameter("c3"));
%>
各种肉类大甩卖,一律十块:<br>
<form method="post" action="ch03_18_buy1.jsp">
<p><input type="checkbox" name="c1" value="猪肉">猪肉&nbsp;
<input type="checkbox" name="c2" value="牛肉">牛肉&nbsp;
<input type="checkbox" name="c3" value="羊肉">羊肉&nbsp;
</p>
<p><input type="submit" value="提交" name="B1">
<a href="ch03_18_buy2.jsp">买点别的</a>&nbsp;
<a href="ch03_ 18_display.jsp">查看购物车</a>&nbsp;
</p>
</form>
</body>
</html>

(2)购买“球类”商品的页面

<%@page language="java" import="java.util.*" pageEncoding="UTF-8" %>
<html>
<head>
<title>购买球类页面</title>
</head>
<body>
<%request.setCharacterEncoding("UTF-8");
if(request.getParameter("b1")!=null)
session.setAttribute("s4",request.getParameter("b1"));
if(request.getParameter("b2")!=null)
session.setAttribute("s5",request.getParameter("b2"));
if(request.getParameter("b3")!=null)
session.setAttribute("s6",request.getParameter("b3"));
%>
各种球大甩卖,一律八块:
<form method="post" action="ch03_18_buy2.jsp">
<p>
<input type="checkbox" name="b1" value="篮球">篮球&nbsp;
<input type="checkbox" name="b2" value="足球">足球&nbsp;
<input type="checkbox" name="b3" value="排球">排球&nbsp;
</p>
<p>
<input type="submit" name="x1"value="提交">
<a href="ch03_18_buy1.jsp">买点别的</a>&nbsp;
<a href="ch03_18_buy2.jsp">查看购物车</a>&nbsp;
</form>
</body>
</html>

(3)显示购物车信息的页面

<%@page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>显示购物车购物信息</title>
</head>
<body>
你的选择结果是:<br>
<%request.setCharacterEncoding("UTF-8");
String str="";
if(session.getAttribute("s1")!=null)
{
str=(String)session.getAttribute("s1");
out.println(str+"<br>");
}
if(session.getAttribute("s2")!=null);
{
str=(String)session.getAttribute("s2");
out.print(str+"<br>");
}
if(session.getAttribute("s3")!=null)
{
str=(String)session.getAttribute("s3");
out.print(str+"<br>");
}
if(session.getAttribute("s4")!=null)
{
str=(String)session.getAttribute("s4");
out.print(str+"<br>");
}
if(session.getAttribute("s5")!=null)
{
str=(String)session.getAttribute("s5");
out.print(str+"<br>");
}
if(session.getAttribute("s6")!=null)
{
str=(String)session.getAttribute("s6");
out.print(str+"<br>");
}
%>
</body>
</html>

2017.9.28 web设计简单的购物车应用案例--session的简单应用的更多相关文章

  1. java:Session(概述,三层架构实例(实现接口封装JDBC),Session实现简单购物车实例)

    1.Session概述: Session:在计算机中,尤其是在网络应用中,称为“会话控制”.Session 对象存储特定用户会话所需的属性及配置信息.这样,当用户在应用程序的 Web 页之间跳转时,存 ...

  2. 推荐35个新鲜出炉的响应式 Web 设计实例

    响应式设计的准则在于根据用户使用的屏幕的分辨率来改变网站的的布局.因此,视频或图像的大小和文本的数量,可以被视为是一个明显的变化.让你即使从智能手机浏览一个网站的时候能轻松地看到网站上的重要内容.今天 ...

  3. 分享29个超赞的响应式Web设计

    原文自:http://www.csdn.net/article/2013-01-16/2813678-responsive-design-websites 最近几年,响应式Web设计不断印入人们眼帘, ...

  4. 使用MongoDB和JSP实现一个简单的购物车系统

    目录 1 问题描述  2 解决方案  2.1  实现功能  2.2  最终运行效果图  2.3  系统功能框架示意图  2.4  有关MongoDB简介及系统环境配置  2.5  核心功能代码讲解  ...

  5. 响应式WEB设计的9项基本原则

    响 应式Web设计对于解决多类型屏幕问题来说是个不错方案,但从印刷的角度来看,其却存在着很多的困难.没有固定的页面尺寸.没有毫米或英寸,没有任何物理 限制,让人感到无从下手.随着建立网站可用的各种小工 ...

  6. 最佳的 14 个免费的响应式 Web 设计测试工具

    一旦你决定要搭建一个网站就应该已经制定了设计标准.你认为下一步该做什么呢?测试!我使用“测试”这个词来检测你网站对不同屏幕和浏览器尺寸的响应情况.测试在响应式网页设计的过程中是很重要的一步.如果你明白 ...

  7. FineUI小技巧(1)简单的购物车页面

    起因 最初是一位 FineUI 网友对购物车功能的需求,需要根据产品单价和数量来计算所有选中商品的总价. 这个逻辑最好在前台使用JavaScript实现,如果把这个逻辑移动到后台C#实现,则会导致过多 ...

  8. [转]响应式WEB设计学习(3)—如何改善移动设备网页的性能

    原文地址:http://www.jb51.net/web/70362.html 前言 移动设备由于受到带宽.处理器运算速度的限制,因而对网页的性能有更高的要求.究竟是网页中的何种元素拉低了网页在移动设 ...

  9. 响应性web设计实战总结

    响应性web设计实战 响应性web设计的理念是:页面的设计与开发应当根据用户行为与设备环境(包括系统平台,屏幕尺寸,屏幕定向等)进行相应的响应及调整.具体的实践方式由多方面组成,包括弹性网格和布局,图 ...

随机推荐

  1. 风险识别工具 - 影响图(Influence Diagram)

    原文地址:http://blog.csdn.net/jameszhou/archive/2007/06/24/1664494.aspx PMBOK(2004 3rd 英) P248关于风险识别的图形技 ...

  2. vue 子组件调用父组件的函数

    子组件调用父组件的函数,使用$emit(eventName,[...args]),触发当前实例上的事件.附加参数都会传给监听器回调. 子组件 <template> <div> ...

  3. java——java只有值传递

    真的只有值传递! java中对象作为参数传递给一个方法,到底是值传递,还是引用传递? 答:值传递 这里说的很清楚了:https://www.cnblogs.com/zhouxiansheng/p/39 ...

  4. oracle 11g 将非分区表转换为分区表在线重定义

    --操作的用户需要有以下的权限 GRANT CONNECT, RESOURCE TO CMIGDW; GRANT EXECUTE ON DBMS_REDEFINITION TO CMIGDW; GRA ...

  5. (转)Python作业day2购物车

    Python作业day2购物车 原文:https://www.cnblogs.com/spykids/p/5163108.html 流程图: 实现情况: 可自主注册, 登陆系统可购物,充值(暂未实现) ...

  6. angularJS ui router 多视图单独刷新问题

    场景:视图层级如下 view1 --view11 --view111 需求:view11的一个动作过后,单独刷新view12 解决方式:修改层级设计 view1 --view11 --view111 ...

  7. [转] asp.net core Introducing View Components

    本文转自:http://www.c-sharpcorner.com/uploadfile/8c19e8/asp-net-5-getting-started-with-asp-net-mvc-6/ In ...

  8. java中关于冒泡排序算法的学习。

    在编程语言的学习中,排序算法在学习过程中是必须要掌握的,特别在新手的学习中,我们应该学会这些算法,本篇先介绍冒泡算法. 冒泡排序 设有一组待排序的数据: 3 2 4 5 7 1 我们需要使用冒泡排序来 ...

  9. 学习Geodatabase的总结

    一.怎样择取自己需要的.有用的资料 1.开始找资料时,首先想到的是ESRI的帮助文档,因为它直接.规范而系统.通读一遍之后,大致了解了Geodatabase的各个方面.再从帮助文档体系结构中选出重要的 ...

  10. 【Android 界面效果47】RecyclerView详解

    RecylerView作为 support-library发布出来,这对开发者来说绝对是个好消息.因为可以在更低的Android版本上使用这个新视图.下面我们看如何获取 RecylerView.首先打 ...