WEB收银台项目

1.项目用到了哪些技术前端: HTML(超文本编辑,定义网页的内容) CSS(对HTML进行一个美化,规定网页的布局) JS(对网页的行为进行一个编程) AJAX □ 不刷新页面更新网页 □ 在页面加载后从服务器请求数据 □ 在页面加载后从服务器接收数据 □ 在后台向服务器发送数据 后端: Java类集的使用 Servlet的使用数据库: 数据库的表的
摘要由CSDN通过智能技术生成

1.项目用到了哪些技术

前端:
         HTML(超文本编辑,定义网页的内容)
         CSS(对HTML进行一个美化,规定网页的布局)
         JS(对网页的行为进行一个编程)  
         AJAX 
			□ 不刷新页面更新网页 
			□ 在页面加载后从服务器请求数据 
			□ 在页面加载后从服务器接收数据 
			□ 在后台向服务器发送数据 
   后端:         
	 Java类集的使用 
	 Servlet的使用
数据库:
	    数据库的表的设计,尤其是订单和订单项之间的设计 
	    JDBC编程
• 实现如下的操作: 模拟收银台实现基本操作
				1、上架商品 
				2、浏览商品 
				3、更新商品信息 
				4、购买商品 
				5、浏览订单
• 表的设计
account 用户表
goods 商品表  
 | 多对多
order 订单表
order_item 订单项表   用来连接订单表和商品表
	-- 数据库
	drop database if exists `cash`;
	create database if not exists `cash` character set utf8;
	
	-- 使用数据库
	use `cash`;
	
	-- 帐号
	drop table if exists `account`;
	create table if not exists `account`
	(
	    id             int primary key auto_increment comment '帐号编号',
	    username       varchar(12)   not null comment '帐号',
	    password       varchar(128)  not null comment '密码'
	);
	
	-- 商品信息
	drop table if exists `goods`;
	create table if not exists `goods`
	(
	    id        int primary key auto_increment comment '商品编号',
	    name      varchar(128)              not null comment '商品名称',
	    introduce varchar(256) default '暂无' not null comment '商品简介',
	    stock     int                       not null comment '商品库存',
	    unit      varchar(12)               not null comment '库存单位',
	    price     int                       not null comment '商品价格,单位:分',
	    discount  int          default 100  not null comment '商品折扣,[0,100]'
	);
	
	-- 订单
	drop table if exists `order`;
	create table if not exists `order`
	(
	    id            varchar(32) primary key comment '订单编号',
	    account_id    int         not null comment '帐号编号',
	    account_name  varchar(12) not null comment '帐号',
	    create_time   datetime    not null comment '创建时间',
	    finish_time   datetime default null comment '完成时间',
	    actual_amount int         not null comment '实际金额,单位:分',
	    total_money   int         not null comment '总金额,单位:分',
	    order_status  int         not null comment '支付状态 1 待支付 2 完成'
	);
	
	-- 订单项
	drop table if exists `order_item`;
	create table if not exists `order_item`
	(
	    id              int primary key auto_increment comment '订单条目编号',
	    order_id        varchar(32)               not null comment '订单编号',
	    goods_id        int                       not null comment '商品编号',
	    goods_name      varchar(128)              not null comment '商品名称',
	    goods_introduce varchar(256) default '暂无' not null comment '商品简介',
	    goods_num       int                       not null comment '商品数量',
	    goods_unit      varchar(12)               not null comment '库存单位',
	    goods_price     int                       not null comment '商品价格,单位:分',
	    goods_discount  int          default 100  not null comment '商品折扣,[0,100]'
	);

2、业务逻辑

整体框架:
客户端(html页面)通过tomact服务器连接到服务端,服务端接收对应servlet的请求,拿到请求之后,处理sevlert的请求,通过请求内容操作数据库,拿到数据后,通过返回一个json数据,来告诉前端操作成功或者失败。
而整个前端和后端的交互是通过Ajax,前端发送一个Ajax请求到Tomcat服务器,对应的servlet接收到这个请求,处理这个请求,然后数据库进行一个增删查改的操作,然后返回增删改查后的一个结果,成功或者失败,返回一个json数据到前端,前端根据后端结果的不同,给出相应的展示
在这里插入图片描述

1、注册:

客户端通过post方法向服务器提交一个请求,服务器对应的servlet接收到请求之后,操作mysql,用户名,密码插入到mysql中,如果插入成功,mysql返回给服务器添加成功的响应,服务器会通过sendRedirect直接转到登录界面
在这里插入图片描述

2、登录:

跳转到login.html,输入用户名和密码,客户端向服务器提交一个登录的请求,服务端收到请求去mysql查询,是不是有这个用户,密码是否无误,如果查询成功,服务器跳转到index.html,前端页面跳转到主界面,表明登录成功,如果没有查询到或用户名密码错误,前端页面会给出相应的错误
在这里插入图片描述

3、商品上架:

登录成功之后,点击商品上架,进入商品上架界面,输入需要上架商品的基本信息,点击提交,向服务端发起一个post请求,服务器操作mysql,进行插入操作,插入成功,跳转到指定的页面。
在这里插入图片描述

4、商品游览

前端(goodsbrowse.html)发起get请求,请求服务器从mysql当中查询到所有商品信息,将后端服务器查询到的数据转化成一个json(一个字符串),将json字符串发送到前端页面,前端进行解析json里面的数据,然后把数据提取出来,存放在前端浏览商品界面
在这里插入图片描述

5、商品更新

更新商品信息与上架商品类似,都是从页面提交表单,通过servlet,更新数据库信息。注意:此时更新商品的时候,页面输入的数字是元为单位

逻辑:提交表单之后,需要先通过id进行查询该商品是否存在,存在更新数据库,不存在更新失败。

6、商品下架

进入到商品浏览页面,通过下架按钮,获取当前商品的id,通过ajax发送给后端,服务器收到相应的servlet请求,去mysql查询到相应的商品id,对数据库进行该商品的删除操作,删除成功后,返回给前端页面&

  • 15
    点赞
  • 62
    收藏
    觉得还不错? 一键收藏
  • 17
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值