jsp实现简易购物车
实现要求:
(a)输入要购买的商品
(b)点击提交按钮后
(c)结账页面将所选择的商品全部列出
代码实现:
b9_shopping.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body><form action="_b9_shopping_sent.jsp" method="post"><h2>请输入要购买的商品:<input type="text" name="book"><input type="submit" name="sent" value="提交"></h2>
</form></body>
</html>
_b9_shopping_sent.jsp:
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body><style>span{color: red;}form{margin-left: 120px;}</style><%!ArrayList<String> list = new ArrayList<String>();
%><%request.setCharacterEncoding("utf-8");String book = request.getParameter("book");list.add(book);session.setAttribute("books", list);
%><h4>提示:您刚才选择了商品<span><%=book %></span>,请问,你还想做什么?<br></h4><form action="_b9_shopping_.jsp" method="post" style="float:left;"><input type="submit" value="继续购买" name="continue"> </form><form action="_b9_shopping_show.jsp" method="post"><input type="submit" value="结账" name="final"> </form></body>
</html>
说明:
这里使用了ArrayList集合,这是因为最终要求把所购买的所有的商品都输出来,所以有多个值
那为什么使用集合而不是用数组,因为集合长度可变,适合进行不断的添加
_b9_shopping_show.jsp:
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body><h2>非常感谢您的光临!您购买的商品有:</h2><br><%@SuppressWarnings("unchecked")//添加这个下面的ArrayList警告就会解除ArrayList<String> l = (ArrayList<String>)session.getAttribute("books");if(l!=null){for(int i = 0 ; i < l.size() ; i++){out.print("商品"+(i+1)+":"+l.get(i)+"<br>");}}
%></body>
</html>
注意:
对于上面的代码,有一个问题所在,就是当结账后,再次重新运行购买商品的时候,商品是在原本的基础上继续累加的
只需要将_b9_shopping_sent.jsp文件中的代码稍作修改即可:
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body><style>span{color: red;}form{margin-left: 120px;}</style><%request.setCharacterEncoding("utf-8");String book = request.getParameter("book");if(book != null && book.length()!=0){ @SuppressWarnings("unchecked")//添加这个下面的ArrayList警告就会解除ArrayList<String> list = (ArrayList<String>)session.getAttribute("books");if(list == null){//books还不存在的时候list = new ArrayList<String>();list.add(book);session.setAttribute("books", list);}else{list.add(book);session.setAttribute("books", list);}}else{//如果为空,让用户返回重新输入response.sendRedirect("_b9_shopping_.jsp");}
%><h4>提示:您刚才选择了商品<span><%=book %></span>,请问,你还想做什么?<br></h4><form action="_b9_shopping_.jsp" method="post" style="float:left;"><input type="submit" value="继续购买"> <!-- 跳转的时候可以在input框中直接加name="continue" οnclick="localtion.href='_b9_shopping_.jsp'"属性 --> </form><form action="_b9_shopping_show.jsp" method="post"><input type="submit" value="结账" name="final"> </form></body>
</html>
_b9_shopping_show.jsp:也需要做一些修改
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body><h2>非常感谢您的光临!您购买的商品有:</h2><br><%@SuppressWarnings("unchecked")//添加这个下面的ArrayList警告就会解除ArrayList<String> l = (ArrayList<String>)session.getAttribute("books");if(l!=null){for(int i = 0 ; i < l.size() ; i++){out.print("商品"+(i+1)+":"+l.get(i)+"<br>");}session.setAttribute("books", null);}
%></body>
</html>
说明:
在原本的基础之上,又添加了if语句进行判断
当浏览器完全结束运行时,此时的session就已经结束了
所以,重新运行的时候,就不会再在原本的基础上就行累加
jsp实现简易购物车相关推荐
- javaweb练手项目jsp+servlet简易购物车系统
简易购物车项目 这是一个用intellij IDEA做的简易的javaweb项目,开发环境使用的jdk1.8和tomcat8以及mysql数据库. 1.项目开发准备: 创建github仓库 项目框架搭 ...
- java购物车项目代码_javaweb练手项目jsp+servlet简易购物车系统
简易购物车项目 这是一个用intellij IDEA做的简易的javaweb项目,开发环境使用的jdk1.8和tomcat8以及mysql数据库. 1.项目开发准备: 创建github仓库 项目框架搭 ...
- JSP | 简易购物车的实现
本程序共包含四部分文件,只包含jsp文件,将java代码嵌入到jsp文件中实现: loginID.jsp.shop.jsp.food.jsp.count.jsp,分别实现的功能是输入ID页面.超链接功 ...
- Session机制二(简易购物车案例)
一:案例一(简易购物车) 1.目录结构 2.step1.jsp 1 <%@ page language="java" contentType="text/html; ...
- Servlet之session实践:session实现简易购物车
文章目录 Servlet之session实践:session实现简易购物车 1 过程分析 1.1 Product类:存储商品信息 1.2 ShoppingItem类:存储购买条目信息 1.3 Shop ...
- Android 中编写一个简易购物车,商品包括商品名称,单价,数量,可以对商品进行增删改查功能。(ArrayList,SQLite)
Android 中编写一个简易购物车,商品包括商品名称,单价,数量,可以对商品进行增删改查功能.(ArrayList,SQLite) 布局(activity_main.xml): <?xml v ...
- java如何删除购物车里的商品_编写一个简易购物车,实现向购物车内添加商品,移除指定商品及清空购物车功能。...
showp.jsp String path = request.getContextPath(); String basePath = request.getScheme()+"://&qu ...
- web快速入门之基础篇-js:3_3、简易购物车
目录 一.前言 二.js代码实例演示 1.简易购物车01_数量变化 (1)实例代码 (2)效果演示 2.简易购物车02_数量价格同步 (1)实例代码 (2)效果演示 一.前言 上一篇介绍了DHTML对 ...
- php购物车页面如何做,HTML代码实现简易购物车
网上关于购物车实现的代码非常多,本次的这篇文章主要是和大家分享了HTML代码实现简易购物车,有需要的小伙伴可以看一下,接下来讲解一下具体的实现. 1.用html实现内容: 2.用css修饰外观: 3. ...
- Vue3简易购物车--添加和删除商品,计算购买商品总价
简易购物车 文章目录 简易购物车 v-model双向数据绑定 && 表单提交 计算属性computed v-for渲染数据和标签 添加和删除功能 效果图: v-model双向数据绑定 ...
最新文章
- 【全新打造】思科认证跟踪系统考试注册教程(08.8.30)附word文件下载
- 算法7-10:拓扑排序
- dbgrideh 为什么只一行_Mysql性能优化:为什么count(*)这么慢?
- python print 变量_Python之print()函数与变量
- SQL中的条件语句case-when-then-else(就像C中的switch case语句)
- JZOJ5918【NOIP2018模拟10.20】Car
- oracle 11g12c(pdbcdb)系统巡检
- Vertica系列:从一些细节看Vertica为什么是一个优秀的数据仓库平台
- 对话框应用程序的DoModal()源代码
- c语言单片机题目设计大全,51单片机毕业设计题目.docx
- 基于pytorch计算ssim和ms-ssim
- Arduino Mega2560引脚说明以及功能剖析
- curl命令详解 (实例使用方法)
- 最优化理论与方法-第二讲-凸集
- 机器学习、计算机视觉面经整理(持续完善整理中……)
- unity 景深效果
- 开发保密的计算机应用系统时 研制人员,计算机考试题库:计算机基础练习题(19)...
- k-means算法实际应用
- 图新地球:如何添加视频到地图上,点击直接播放,汇报更顺畅
- 【AJAX】AJAX技术详细解析以及实例
热门文章
- Microsoft Office Visio 2007 下载安装密钥
- 计算机二级vfp教程云盘,全国计算机等级考试二级VFP教程.doc
- Officescan 常用的端口
- linux之ext、ext1、ext2、ext3、ext4文件系统的区别及常用命令
- PPC软件测试自学,一个成功的PPC广告活动所需的五个步骤
- discuz admin.php无法登录,Discuz x3.1论坛管理员无法登录后台的各种解决方法总结
- “跟技术Leader聊了10分钟,我就猜到下周要发生重大宕机事故!”
- excel服务器2010网站,勤哲Excel服务器2010高级企业版完整安装包
- matlab钢琴音教程,弹琴吧 - 今天聊一聊钢琴扒带及MIDI制作,使用音
- 去空格 html,javascript怎么去空格?