自己编写的一个简易购物网站示例:

示例代码运行的结果:

carts.jsp文件

<%@ page contentType="text/html;charset=GBK" %>
<%@ page import="java.util.*,java.sql.*" %>
<%      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");String spath="login.mdb";   //需要访问的数据库地址String dbpath=application.getRealPath(spath);String dbuser="";String dbpw="";String url="jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="+dbpath;Connection conn=DriverManager.getConnection(url,dbuser,dbpw);Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);String sql;     //定义存储数据库语句的变量ResultSet rs;   //定义存储查询结果的变量request.setCharacterEncoding("GBK");        //设置请求的编码String user=request.getParameter("user");   //从请求中得到用户名
%>
<html>
<head><title>联邦商城</title><meta http-equiv="Content-Type" content="text/html;charset=GBK" />
</head>
<body><h1 id="user" value="<%=user%>">用户:<%=user%></h1><h2>购物车</h2><table id="carts"><!--如果想要点击各个按钮后有反应,需要利用javascript对按钮点击事件进行监听,再利用jQuery动态生成表单并提交--><input class="btn btn-default" type="button" value="清空"/><input class="btn btn-default" type="button" value="结算"/><tr><th>商品名</th><th>价格</th><th>数量</th><%try{sql="select carts.Cname,carts.Count,commodities.Price from carts,commodities where carts.Cname=commodities.Cname and  User='"+user+"'"; //设置数据库查询语句rs=stmt.executeQuery(sql);  //在数据库中执行sql语句String Cname="";    //定义商品名称int Price=0;        //定义商品价格int Count=0;        //定义商品数量if(rs!=null)        //判断sql语句是否执行成功{while(rs.next())    //循环遍历查询结果{Cname=rs.getString("Cname");//从结果中得到商品名称Price=rs.getInt("Price");//从结果中得到商品价格Count=rs.getInt("Count");//从结果中得到商品数量%><tr ><td><%=Cname%></td><td><%=Price%></td><td><%=Count%></td><td><input type="button" name="<%=Cname%>" value="删除"></td></tr><%}}else {out.println("获取商品数据失败!");}}catch(Exception e){out.print("操作数据库失败!");out.println(e.getMessage());}%>
</form>
</body>
<script src='js/jquery-3.2.1.min.js'></script>
<script src='js/carts.js'></script>
</html>
<%
stmt.close();
conn.close();   //关闭数据库连接
%>

carts.js文件

    function addFormCarts(e){if(e.target.tagName=="INPUT"){//创建表单form = $("<form></form>");form.attr('method','post');//创建传输user的元素input0= $("<input type='text'/>");input0.attr('value',elUser.getAttribute('value'));input0.attr('name',"user");if(e.target.getAttribute('value')=="删除"){//创建传输商品名的元素input = $("<input type='text'/>");input.attr('value',e.target.name);input.attr('name',"Cname");form.attr('action','delete.jsp');//设置提交到的页面form.append(input);}else if(e.target.getAttribute('value')=="结算"){form.attr('action','pay.jsp');//设置提交到的页面}else{form.attr('action','deleteAll.jsp');//设置提交到的页面}form.append(input0);form.appendTo("body");form.css('display','none');form.submit();      //提交表单}
}var elUser=document.getElementById('user');
var elCarts = document.getElementById('carts');elCarts.addEventListener('click', addFormCarts, false);

ACCESS中的carts表结构:

利用JSP与JS实现简易购物车相关推荐

  1. Vue.js 实现简易购物车(商品的增加删除,价格的小计和总计)

    使用方法 : toFixed(2) 保留俩位小数 splice(index,howmany) 删除商品 index 规定添加删除的位置 ,howmany 删除几个 border-collapse: c ...

  2. javaweb练手项目jsp+servlet简易购物车系统

    简易购物车项目 这是一个用intellij IDEA做的简易的javaweb项目,开发环境使用的jdk1.8和tomcat8以及mysql数据库. 1.项目开发准备: 创建github仓库 项目框架搭 ...

  3. java购物车项目代码_javaweb练手项目jsp+servlet简易购物车系统

    简易购物车项目 这是一个用intellij IDEA做的简易的javaweb项目,开发环境使用的jdk1.8和tomcat8以及mysql数据库. 1.项目开发准备: 创建github仓库 项目框架搭 ...

  4. web快速入门之基础篇-js:3_3、简易购物车

    目录 一.前言 二.js代码实例演示 1.简易购物车01_数量变化 (1)实例代码 (2)效果演示 2.简易购物车02_数量价格同步 (1)实例代码 (2)效果演示 一.前言 上一篇介绍了DHTML对 ...

  5. 用html编写一个红绿灯,利用js实现简易红绿灯

    HTML代码: 在一个div容器内,设置3个span CSS代码: .red_light { width: 200px; height: 200px; border-radius: 50%; marg ...

  6. java利用监听器制作红绿灯_利用js实现简易红绿灯

    HTML代码: 在一个div容器内,设置3个span CSS代码: .red_light { width: 200px; height: 200px; border-radius: 50%; marg ...

  7. jsp基础代码片段(含sql与js和jsp的交互)与简易贴吧网站项目

    因为老是翘掉学校jsp的课程,结果结课作业本来是一个小组做一个网站,结果我被老师指名道姓的要求一个人做一个网站,于是学了几天jsp,用了2天时间做了个网站 , 但安全性几乎为0 , 先写一篇博客记录一 ...

  8. Session机制二(简易购物车案例)

    一:案例一(简易购物车) 1.目录结构 2.step1.jsp 1 <%@ page language="java" contentType="text/html; ...

  9. js html转盘点名,原生JS实现简易随机点名功能

    定时器的工作原理,这里将用引用How JavaScript Timers Work中的例子来解释定时器的工作原理,该图为一个简单版的原理图.· 上图中,左侧数字代表时间,单位毫秒:左侧文字代表某一个操 ...

最新文章

  1. 韩顺平java笔记 第1讲 内容介绍 项目演示 原理剖析
  2. 白话详细解读(五)-----U-Net
  3. 基于界面的银行家算法java实现_java实现银行家算法(Swing界面)
  4. Hello Indigo
  5. 服务端高并发分布式架构演进之路(转载,图画的好)
  6. AI算法连载21:统计之概率图模型
  7. java为什么密码比字符串更喜欢char []?
  8. MyEclipse 2014下搭建Android开发环境
  9. 关于power shell
  10. 海归博士程序员光鲜背后:下车间写代码,体验炼钢灼人的热度
  11. 用matlab画相频曲线_用MATLAB进行系统频率特性曲线绘制
  12. 解决微信小程序图片过大上传失败问题
  13. python残差神经网络_残差神经网络
  14. Excel 动态透视表
  15. 21世纪的文件系统:概述WindowsNT 5.0文件系统(NTFS)(三)
  16. 金融资产管理公司 不良资产的发言人
  17. CSS入门到精通——表格样式
  18. 华为瘦胖ap互转_华为胖ap转换瘦apv200r006c10spc100指导书
  19. Kibana的基础语法
  20. 锚点的作用是什么?如何创建锚点?

热门文章

  1. ubuntu16.04查看opencv安装路径以及版本号
  2. 让柯洁痛哭的AlphaGo,竟耗资3500万美元,耗电量相当于12760个大脑
  3. C#实现批量高斯投影正算、反算
  4. 【图解算法】排序算法——快速排序
  5. Android Framework 的整体建构
  6. Electron:主进程、渲染进程以及通信
  7. mac版微信复制多个消息
  8. 元器件中电容的小小知识 2021-09-06
  9. request.getHeader、request.getHeaders、request.getHeaderNames
  10. 解决:RuntimeError: CUDA error: device-side assert triggered