基于Java+MySQL实现在线书店订购系统

2024-09-02 15:52

本文主要是介绍基于Java+MySQL实现在线书店订购系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、引言

1.1 编写目的

编写详细设计说明书是软件开发过程必不可少的部分,其目的是为了使开发人员在完成概要设计说明书的基础上完成概要设计规定的各项模块的具体实现的设计工作。同时也是开发人员和最终客户进行需求交流的有效手段。

1.2 背景

开发软件系统名称;超子书城订购系统
用户:书籍订购者、后台管理者
本系统开发采用B/S模式,前端页面用HTML+CSS+JS+JSP编写,采用的Java开发语言,数据库采用MySQL 5.7服务程序。

1.3 定义

CSS是CascadingStyleSheets的缩写,一般翻译为层叠样式表,是用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
JSP是一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成、或其他格式文档的网页,然后返回给请求者。JSP技术以语言作为,为用户的请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。
SQL 结构化查询语言是一种特殊目的的编程语言,是一种数据库查询和,用于存取数据以及查询、更新和管理。

1.4 参考资料

  • 《人机交互基础教程》 孟祥旭等著 清华大学出版社
  • 《JSP Web编程指南》 电子工业出版社 2002版
  • 《MySQL数据库技术与应用》 人民邮电出版社 2020版

二、程序系统的结构

3.png
4.png

三、登录模块设计说明

3.1 程序描述

验证用户的登录模块是系统必不可少的功能,是进入系统内部的第一部操作。用户分为客户与管理员两种角色,点击登录界面中的【登录】按钮触发。

3.2 界面设计

5.png
6.png

3.3 功能

验证用户身份功能模块的IPO表如下表所示:

系统名称超子书城订购系统
模块名称验证用户身份
模块简述用于对登陆系统的用户进行身份验证
调用模块系统的主控制模块
输入用户账号和密码
处理验证用户输入的验证账号和密码;;获得登录用户输入的账号和密码;;访问数据库的用户账号表;;查询匹配的用户名和密码,若未查询到或不匹配,返回结果到登录窗口,提示错误,相反登录成功
输出提示信息:登陆失败或登陆成功

3.4 算法

【登录】按钮触发的处理:验证用户的合法性。
处理流程:

  • 取得用户输入的用户名和口令;
  • 加密用户名和口令传输到数据库并与帐户表进行一致性验证;
  • 如果用户名和口令都正确,以该用户身份进入系统总控制界面并获得相应系统权限,否则提示“登录失败”。

3.5 流程逻辑

7.png

3.6 接口

本模块是系统的启动模块,它需要用户交互输入用户帐号、密码;它调用主控制模块。

3.7 存储分配

本模块由系统自动分配内存。

3.8 限制条件

必须保证程序正常连接数据库。

3.9 测试计划

  • 测试初始用户帐号和密码能否正确登录到系统;
  • 正确登录后,对用户账号和密码进行更改;
  • 采用刚修改的用户账号和密码登录,测试是否能够正确登录。

3.10 尚未解决的问题

  • 对用户账号和密码的加密问题尚未解决。
  • 对账户名和密码的修改也不太完善。

四、书籍管理模块设计说明

4.1 程序描述

书籍管理页面功能模块是供登录系统的管理员进行相关操作的选择,即对书籍信息进行添加、修改、删除等。

4.2 界面设计

8.png

4.3 功能

系统管理主界面的功能IPO表如下所示:

系统名称超子书城订购系统
模块名称书籍管理界面
模块简述用于登录系统的管理员进行相关操作的选择
调用模块进行选择后可调用信息添加模块、信息修改模块、信息删除模块、信息查询模块
被调用模块管理员登录系统时都必须调用此模块
输入触发界面相应按钮进行选择操作
处理对书籍相关信息进行添加操作;;对书籍相关信息进行修改操作;;对书籍相关信息进行删除操作;
输出通过选择进入相应模块

4.4 算法

【添加】按钮触发的处理:进入添加界面
【修改】按钮触发的处理:进入修改界面
【删除】按钮触发的处理:进入删除界面

4.5 接口

本模块是系统的管理员的主要操作模块,用户通过相应的选择进入不同的界面,它调用系统的其他一切子模块。

4.6 存储分配

本模块由系统自动分配内存。

4.7 测试计划

  • 进入此界面后,选择添加操作看能否进入添加界面,添加几条记录。
  • 退回主界面,选择修改操作看能否修改刚刚添加的记录。
  • 退回主界面,选择删除操作看能否删除添加的记录。

4.8 尚未解决的问题

没有查询书籍信息功能

五、客户订购模块设计说明

5.1 程序描述

客户订购功能模块是供订购者选择订购书籍时进行相关的操作。提交订单时选择订购书籍的种类和数量以及支付方式即可进行订购。

5.2 界面设计

9.png
10.png

5.3 功能

客户订购界面的IPO表如下所示:

系统名称超子书城订购系统
模块名称客户订购模块
模块简述供订购者选择订购书籍时进行相关的操作
被调用模块订购者确定订购书籍时进入此界面,即客户主界面调用此模块
输入触发界面相应按钮进行订购操作
处理当订购者确定订购时选择相关信息即可订购,如果订购成功则提示支付成功。
输出通过选择进入确定订购模块或返回到客户主界面

5.4 算法

【提交订单】按钮触发的处理:订购选中书籍,并进入到支付成功界面。
处理流程:
如果输入信息有效并且没有保存,提示保存,并且将客户的订单信息存入相应的数据库表;
否则输入的信息无效则提示用户相关信息,且返回客户主界面。

5.5 流程逻辑

11.png

5.6 存储分配

本模块由系统自动分配内存。

5.7 测试计划

进入订购界面后,选择相关书籍信息进行订购,看能否出现支付成功的信息。

5.8 尚未解决的问题

当库存不足或用户想取消操作时,没有取消订购功能。

六、订单管理模块设计说明

6.1 程序描述

管理员可以对客户订购商品的订单列表进行查看,根据订单编号查看订单详情,可以进行删除订单操作。

6.2 界面设计

12.png

6.3 功能

订单管理界面的IPO表如下所示:

系统名称超子书城订购系统
模块名称订单管理界面
模块简述用于登录系统的管理员进行相关操作的选择
调用模块进行选择后可调用订单详情模块、订单删除模块
被调用模块管理员登录系统时都必须调用此模块
输入触发界面相应按钮进行选择操作
处理对订单相关信息进行删除操作
输出通过选择进入相应模块

6.4 流程逻辑

13.png

6.5 存储分配

本模块由系统自动分配内存。

6.6 测试计划

购买书籍产生多个订单,管理员端依次查看订单列表、多个订单具体信息是否正确。
选择相关订单信息进行删除,看能否出现删除成功的信息。

6.7 尚未解决的问题

尚未完善查看购买者信息以及购买的书籍信息。

这篇关于基于Java+MySQL实现在线书店订购系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1130397

相关文章

java中pdf模版填充表单踩坑实战记录(itextPdf、openPdf、pdfbox)

《java中pdf模版填充表单踩坑实战记录(itextPdf、openPdf、pdfbox)》:本文主要介绍java中pdf模版填充表单踩坑的相关资料,OpenPDF、iText、PDFBox是三... 目录准备Pdf模版方法1:itextpdf7填充表单(1)加入依赖(2)代码(3)遇到的问题方法2:pd

Java Stream流之GroupBy的用法及应用场景

《JavaStream流之GroupBy的用法及应用场景》本教程将详细介绍如何在Java中使用Stream流的groupby方法,包括基本用法和一些常见的实际应用场景,感兴趣的朋友一起看看吧... 目录Java Stream流之GroupBy的用法1. 前言2. 基础概念什么是 GroupBy?Stream

python设置环境变量路径实现过程

《python设置环境变量路径实现过程》本文介绍设置Python路径的多种方法:临时设置(Windows用`set`,Linux/macOS用`export`)、永久设置(系统属性或shell配置文件... 目录设置python路径的方法临时设置环境变量(适用于当前会话)永久设置环境变量(Windows系统

Mysql中设计数据表的过程解析

《Mysql中设计数据表的过程解析》数据库约束通过NOTNULL、UNIQUE、DEFAULT、主键和外键等规则保障数据完整性,自动校验数据,减少人工错误,提升数据一致性和业务逻辑严谨性,本文介绍My... 目录1.引言2.NOT NULL——制定某列不可以存储NULL值2.UNIQUE——保证某一列的每一

kkFileView在线预览office的常见问题以及解决方案

《kkFileView在线预览office的常见问题以及解决方案》kkFileView在线预览Office常见问题包括base64编码配置、Office组件安装、乱码处理及水印添加,解决方案涉及版本适... 目录kkFileView在线预览office的常见问题1.base642.提示找不到OFFICE组件

解密SQL查询语句执行的过程

《解密SQL查询语句执行的过程》文章讲解了SQL语句的执行流程,涵盖解析、优化、执行三个核心阶段,并介绍执行计划查看方法EXPLAIN,同时提出性能优化技巧如合理使用索引、避免SELECT*、JOIN... 目录1. SQL语句的基本结构2. SQL语句的执行过程3. SQL语句的执行计划4. 常见的性能优

SpringBoot监控API请求耗时的6中解决解决方案

《SpringBoot监控API请求耗时的6中解决解决方案》本文介绍SpringBoot中记录API请求耗时的6种方案,包括手动埋点、AOP切面、拦截器、Filter、事件监听、Micrometer+... 目录1. 简介2.实战案例2.1 手动记录2.2 自定义AOP记录2.3 拦截器技术2.4 使用Fi

最新Spring Security的基于内存用户认证方式

《最新SpringSecurity的基于内存用户认证方式》本文讲解SpringSecurity内存认证配置,适用于开发、测试等场景,通过代码创建用户及权限管理,支持密码加密,虽简单但不持久化,生产环... 目录1. 前言2. 因何选择内存认证?3. 基础配置实战❶ 创建Spring Security配置文件

Python对接支付宝支付之使用AliPay实现的详细操作指南

《Python对接支付宝支付之使用AliPay实现的详细操作指南》支付宝没有提供PythonSDK,但是强大的github就有提供python-alipay-sdk,封装里很多复杂操作,使用这个我们就... 目录一、引言二、准备工作2.1 支付宝开放平台入驻与应用创建2.2 密钥生成与配置2.3 安装ali

Spring Security 单点登录与自动登录机制的实现原理

《SpringSecurity单点登录与自动登录机制的实现原理》本文探讨SpringSecurity实现单点登录(SSO)与自动登录机制,涵盖JWT跨系统认证、RememberMe持久化Token... 目录一、核心概念解析1.1 单点登录(SSO)1.2 自动登录(Remember Me)二、代码分析三、