超市收银系统简介

一、项目简介

本项目是一款基于字符界面的收银系统,实现了对用户、商品的管理。

二、项目意义
  • 对JavaSE部分知识做一个综合实践。
  • 提升数据库编程能力。
三、项目实现的需求
  1. 客户端:
    • 商品浏览
    • 购买商品
    • 查看自己的订单
  2. 管理端:
    • 重置用户密码
    • 设置用户启停状态
    • 查看在册账户
    • 在册商品信息的更新
    • 商品的下架
    • 商品的上架
    • 在册商品的浏览
  3. 通用处理
    • 注册账户
    • 登录
    • 呼出帮助信息
    • 系统版本信息查看
    • 退出
四、业务结构

在这里插入图片描述

五、技术要点
  • 注解技术:

    自定义的四类注解,用来区分不同种类的命令,以便在终端界面可以根据类型显示相应命令

    1. AdminCommand: 标识管理员端的命令。
    2. CommandMeta: 用来定义每个命令的名称以及代码,如: 登录命令的展示名称是"登录",代码是"DL",
      最终在终端里展示的效果就是: “登录(DL)”。
    3. CustomerCommand: 用来标识用户端命令。
    4. EntranceCommand: 用来标识入口命令,他标识了登录、注册、帮助、退出、关于的命令。
  • 集合框架和反射

    在分类命令以便展示时使用了三个HashMap分别存入口、管理端、用户端命令,而后又通过反射技术获取注解信息,
    得到后分别存入对应类型命令的HashMap中,至此就完成了命令的分类。

  • JDBC编程

    在用户命令、商品处理以及订单相关处理的底层逻辑中,都是最使用JDBC来做的。
    对应的增删改查分别对应本项目的dao包下的AccountDao、GoodsDao以及OrderDao中来实现。

  • IO流相关

    在实现订单查询时,考虑到涉及多表查询,SQL语句会偏多,不适合在代码里直接写,这里就考虑
    把这部分的SQL语句写在一个文件中,然后利用反射获取文件相应的字节流,然后使用转换流InputStreamReader将字节流转换成所需要的字节流,最后利用BufferReader来读取到一个StringBuilder里最后返回获取到的SQL语句给调用者。

  • MySQL数据库

    根据逻辑的需要,设计了四张表,即用户表、商品信息表、订单表、订单项表。

    用户表(account)

    idusernamepasswordnameaccount_typeaccount_status
    用户编号用户账号用户密码用户昵称用户类型,1表示管理员, 2表示普通用户用户状态,1代表正常,2代表禁用

    商品信息表(goods)

    idnameintroducestockunitpricediscount
    商品编号商品名称商品简介商品库存计量单位价格折扣值

    订单表(order)

    idaccount_idaccount_namecreate_timefinish_timeactual_amounttotal_moneyorder_status
    订单编号账号编号用户账号创建时间完成时间实际金额应付金额支付状态, 1:待支付, 2:支付完成

    订单项(order_item)

    idorder_idgoods_idgoods_numgoods_namegoods_unitgoods_introducegoods_pricegoods_discount
    订单条目编号订单编号商品编号商品数量商品名称计量单位商品简介商品单价商品折扣
    六、成果展示
    1. 入口界面
      在这里插入图片描述

    2. 管理员界面
      在这里插入图片描述

    3. 普通用户界面
      在这里插入图片描述

项目源码:https://github.com/AppleTreeL/LearningWay/tree/master/Java_Learn/JAVASEProjects/Check_Stand

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目录 1. 引言 ........................................................................................................................................... 3 1.1. 编写目的 ....................................................................................................................... 3 1.2. 术语或缩写 ................................................................................................................... 3 2. 总体设计 ................................................................................................................................... 3 2.1. 系统说明 ....................................................................................................................... 3 2.1. 运行环境 ....................................................................................................................... 3 2.2. 关键技术 ....................................................................................................................... 4 2.3. 总体架构设计 ............................................................................................................... 4 3. 系统模块设计 ........................................................................................................................... 5 3.1. 登录 ............................................................................................................................... 5 3.1.1. 登录 ................................................................................................................... 5 3.2. 商品库存管理 ............................................................................................................... 6 3.2.1. 商品入库 ........................................................................................................... 6 3.2.2. 商品出库 ........................................................................................................... 7 3.2.3. 新增商品 ........................................................................................................... 8 3.2.4. 查询全部商品 ................................................................................................... 9 3.2.5. 按编号查询商品 ............................................................................................... 9 3.3. 收银管理 ..................................................................................................................... 10 3.3.1. 扫描商品 ......................................................................................................... 10 3.3.2. 修改购买数量 ................................................................................................. 11 3.3.3. 结账 ................................................................................................................. 11 4. 数据库设计 ............................................................................................................................. 14 4.1. 逻辑设计 ..................................................................................................................... 14

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值