平昌县网上书城系统设计与实现

news/2024/10/3 19:54:26

目 录
第一章 概述 1
1.1 开发背景 1
1.2 开发环境 2
1.3 开发工具 2
1.3.1 MyEclipse 2
1.3.2 Navicat 3
1.3.3 MySQL 3
第二章 需求分析 5
2.1 总体需求 5
2.3 功能需求 6
2.4 性能需求 6
2.5 运行需求 6
2.6 其他需求 7
2.7 可行性分析 7
2.7.1技术可行性 7
2.7.2 经济可行性 7
第三章 概要设计 8
3.1.概要设计概述 8
3.1.2 设计流程 9
3.1.3 设计思路 9
3.2 功能模块 9
3.2.1 登陆模块 9
3.2.2 注册模块 10
3.2.3 图书添加模块 11
3.2.4 图书删除模块 12
3.2.5 图书修改模块 12
3.2.6 图书查询浏览模块 13
第四章 数据库设计 14
4.1 数据库设计概念 14
4.2 E-R图设计 15
4.3 数据表的创建 17
4.3.1 users表 17
4.3.2 book表 18
4.3.3 orderitem表 19
4.3.4 orders 表 19
第五章 详细设计 20
5.1 概述 20
5.2 数据库的链接 20
5.2.1 C3P0介绍 20
5.2.2 C3P0配置 20
5.3 开始界面 22
5.4管理员模块 22
5.4.1添加图书功能 23
5.4.2 删除图书功能 27
5.4.3 图书修改功能 29
第六章 测试 33
6.1测试的目的与目标 33
6.2 测试方法 33
第七章 总结 35
致谢 36
参考文献 37
2.3 功能需求
●在Internet,客户可通过IE或其他浏览器浏览书目信息;
●在互联网,可提交订单;
●具有购物车功能;
●客户能通过书名来检索书籍;
●客户能查看当前订单和以往订单;
●书店管理员能查找客户信息;
●书店管理员在发货后能改写订单中的发货日期;

2.4 性能需求
●系统可以对图书的库存进行统计。
●系统界面设计友好,操作方便、灵活。
●具有高可靠性和冗错能力,不允许系统在工作时间停机,不允许 系统丢失图书信息,不允许在运行期间出现故障和错误。
●具有安全检查机制,非法用户不能使用系统,不能偷看系统信息,不能修改图书,防止随意删改,同时提供信息备份的服务。
●具有保密机制,各级使用者只能看到允许查看的系统信息。
2.5 运行需求
用户界面
人性化界面,全新感觉,操作简便,一目了然,视图优美等特点。并且采用菜单界面驱动方式,给操作用户带来了极大的便利,对用户友好。
故障处理
正常使用时不应出错,若运行时遇到不可恢复的系统错误,也必须保证数据库完好无损。调试中遇到的问题及解决的方案:
1)遇到跳出“数据库已经关闭”提示信息阻止程序运行时
可以查看一下进行此项操作时,操作的表是否已经被关闭了或者是在没有关闭此表的情况下又一次运用打开语句打开此表。
2)关于空记录带来的麻烦
有些空记录往往会使程序无法运行。此时你可用“if not isnull”语句先判断一下是否为空记录,再操作。
3)有些运行错误也可用补获异常进行处理。
2.6 其他需求
系统的功能实现情况:
用户可在本系统下实现各种用户要求的功能
系统的安全性:
对于系统的重要数据都有密码保护,具有一定的安全性
对用户提供证书支持(此功能在后续版本中实现)
系统的容错性:
用户输错数据都有提示信息,具有较好的容错性能。
系统的封闭性:
用户的封闭性较好,用户基本上在提示信息下输数据。
2.7 可行性分析
2.7.1技术可行性
网上书店系统的结构分为三层,分别为表现层(用户界面)、业务层(业务处理)、数据层(数据维护和存储)。表现层只提供用户界面,根据用户操作调用相应的业务逻辑,不直接访问数据库;业务层是系统的关键所在,负责处理用户的请求,并把结果返回给表现层;数据层提供数据支持。根据现在所学知识可以满足该项目的所有功能的实现。
2.7.2 经济可行性
随着信息技术的发展与普及网络竞争越发激烈。客户作为市场最大的资源成为市场营销的核心。由于网上书店数量少且存在不规范,以及网上书店存在大量潜在客户具有巨大的发展空间网上书店的建立将是一笔巨大的财富。

第三章 概要设计
3.1.概要设计概述
本概要设计说明书是针对《平昌县网上书城系统》而编写,目的是对该项目进行总 体设计,在明确系统需求的基础上划分系统的功能模块,进行系统分工的开发, 明确各模块间的接口,为进行后面的详细设计和实现做准备。本文转载自http://www.biyezuopin.vip/onews.asp?id=14202本概要设计说明书 的预期读者为本项目小组的成员,以及对该系统感兴趣、在以后想对系统进行扩 展和维护的人员。
3.1.2 设计流程
由小组组长带队在第一周的时间里和组员一起讨论项目的实现过程,先设计数据库,然后登录注册,前端页面,系统的主体。
3.1.3 设计思路
先确定数据库中表的表名,字段以及属性。再确定项目的登陆注册功能的实现以及前端页面的布局和框架样式,最后完成项目的主体功能。
3.2 功能模块
3.2.1 登陆模块
1、模块描述
该模块完成用户登录的过程,登陆成功后才能完成图书购买功能。
在页面输入用户名和密码后,前端数据会去后台调用controller中的UsersController类验证信息。
2、输入、输出
输入用户名和密码
3、模块接口关系
允许进入:进入书城系统
拒绝进入:返回登陆页面
4、模块算法实现

controller.ProductController:
//打开修改商品的页面
@RequestMapping("showEditProduct")
public String showEditProduct(String id,Model model){
//查询要修改的商品
Products product = service.findProductById(id);
//将商品传到页面展示数据
model.addAttribute("product", product);
return "admin/editproduct";}
//修改商品
@RequestMapping("editProduct")
public String editProduct(Products pro,MultipartFile imgpic){
//判断是否有上传的文件
if(!(imgpic.getOriginalFilename() == null) && !imgpic.getOriginalFilename().equals("")){
String upload = UploadUtils.upload(imgpic);
pro.setImgurl(upload);}
service.updateProduct(pro);
return "redirect:showProductList";}
service.ProductService:
public interface ProductService {
public int saveProduct(Products pro);
public int updateProduct(Products pro);
public int delProduct(String id);
public Products findProductById(String id);
public List<Products> findProductsList();
/*** 根据类别查询商品* @param type		类别* @return			差询到的商品
*/
public List<Products> findProductsListByType(String type,PageBean page);
/*** 获取商品的总记录数* @return*/
public Integer findCount();
/*** 有分页功能的查询商品的方法* @param page* @return*/
public List<Products> findProductsListPage(PageBean page);
public Integer findCountByType(String type);}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


https://dhexx.cn/news/show-25384.html

相关文章

Linux系统介绍:内核、shell及软件包管理

目录Linux内核版本查看系统版本shell常见 shell运行 shell查看Linux系统信息查看系统位数查看内存信息查看CPU信息Linux软件包管理源码编译安装RPMRPM包安装rpm命令其它用法yumDPKGDPKG 命令安装apt查看历史命令historyLinux 文件句柄Linux系统主要包括3层&#xff0c; 硬件&am…

基于MATLAB虚拟仿真的四杆机构运动分析

目 录 1 绪论 (1) 1.1 本文研究的目的意义 (1) 1.2 四杆机构的发展与应用 (1) 1.3 本文研究的主要内容 (2) 2 平面四杆机构运动学分析 (3) 2.1 四杆机构自由度的计算 (3) 2.2 角位移分析 (3) 2.3 角速度分析 (3) 2.4 角加速度分析 (3) 2.5 计算仿真前四杆机构的初始参数值 (4) …

360全景开发(一)

自己车上装了个360全景&#xff0c;但不知是安装调试的问题&#xff0c;还是APP开发的问题&#xff0c;拼出来的360全景部分地方有畸变&#xff0c;拼接缝隙明显&#xff0c;额外功能&#xff08;例如ADAS&#xff09;没有&#xff0c;果然便宜没好货。。。恰好最近在学图像处理…

SSH 总是出现ssh_exchange_identification: read: Connection reset by peer问题的解决方案

最近&#xff0c;ssh登录阿里云服务器时经常出现ssh_exchange_identification: read: Connection reset by peer的错误&#xff0c;经过分析排查&#xff0c;可能是因为开始git服务后&#xff0c;服务器的连接数太多&#xff0c;很容易达到ssh的连接上限。当达到连接上限时&…

VSCode + Python环境配置

VSCode Python开发环境配置 目录Visual Studio Code 下载安装设置 Python 环境安装code runner插件配置code runnerRun in Terminal其它配置配置VSCode自动保存快捷键Jupyter Notebook插件安装将ipynb文件转换为markdown系列文章Visual Studio Code 下载安装 Visual Studio Co…

基于Ocean Connect云平台的照明控制系统设计

目 录 摘 要 I Abstract II 1 绪论 1 1.1选题背景及意义 1 1.2国内外研究现状 2 1.2.1云平台发展现状 2 1.2.2智能照明的发展现状 2 1.3 研究主要内容 3 2 总体方案设计 5 2.1 系统的需求分析 5 2.2 系统架构设计 6 2.3 通信协议设计 7 2.3.1协议数据帧格式 7 2.3.2控制协议的具…

360全景开发(二) 鱼眼摄像头校正

鱼眼摄像头校正有很多方法&#xff0c;这里取棋盘法&#xff0c;因为opencv自带这个方法。棋盘法是将一块类似国际象棋的黑白棋盘放到摄像头的前面&#xff0c;然后调用opencv获取棋盘上的角点&#xff0c;算出图像的相关转换矩阵&#xff0c;这样以后这个摄像头的图像就可以直…

基于Java springboot技术的班务管理系统的设计与实现

目 录 摘  要 I Abstract II 第一章 绪论 1 1.1 课题背景、目的及意义 1 1.2 班务管理系统部署现状及未来发展趋势 1 1.2.1 班务管理系统部署的现状 1 1.2.2 班务管理系统未来发展趋势 2 1.3 研究主要内容 3 第二章 系统开发技术 4 2.1 Java语言 4 2.2 Spring框架简介 6 2.3 …