首页 > 其他分享 >Spring Boot与图书管理:进销存系统的新发展

Spring Boot与图书管理:进销存系统的新发展

时间:2024-10-17 12:45:55浏览次数:9  
标签:200 varchar 进销存 Spring Boot 测试 NULL 主键 图书

4系统概要设计
4.1概述
本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示:
在这里插入图片描述

图4-1系统工作原理图
4.2系统结构
本系统是基于B/S架构的网站系统,设计的功能结构图如下图所示:
在这里插入图片描述

图4-2功能结构图
4.3.数据库设计
4.3.1数据库实体
概念设计的目标是设计出反映某个组织部门信息需求的数据库系统概念模式,数据库系统的概念模式独立于数据库系统的逻辑结构、独立于数据库管理系统(DBMS)、独立于计算机系统。
概念模式的设计方法是在需求分析的基础上,用概念数据模型(例如E-R模型)表示数据及数据之间的相互联系,设计出反映用户信息需求和处理需求的数据库系统概念模式。概念设计的目标是准确描述应用领域的信息模式,支持用户的各种应用,这样既容易转换为数据库系统逻辑模式,又容易为用户理解。数据库系统概念模式是面向现实世界的数据模型,不能直接用于数据库系统的实现。在此阶段,用户可以参与和评价数据库系统的设计,从而有利于保证数据库系统的设计与用户的需求相吻合。在概念模式的设计中,E-R模型法是最常见的设计方法。本系统的E-R图如下图所示:
(1)图书类型信息的实体属性图如下:
在这里插入图片描述

图4.12 图书类型信息实体属性图
(2)收入金额信息实体属性图如图4.13所示:
在这里插入图片描述

图4.13 收入金额信息实体属性图
(3)管理员信息实体属性图如图4.14所示:
在这里插入图片描述

图4.14 管理员信息实体属性图
4.3.2数据库设计表
图书进销存管理系统需要后台数据库,下面介绍数据库中的各个表的详细信息:

表4.1 图书信息评论表
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
refid bigint(20) 否 关联表id
userid bigint(20) 否 用户id
nickname varchar(200) 是 NULL 用户名
content longtext 否 评论内容
reply longtext 是 NULL 回复内容
表4.2 供应商
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
gongyingshangbianhao varchar(200) 是 NULL 供应商编号
gongyingshangmingcheng varchar(200) 是 NULL 供应商名称
gongyingshangleixing varchar(200) 是 NULL 供应商类型
zhugongshangpin varchar(200) 是 NULL 主供商品
fuzeren varchar(200) 是 NULL 负责人
lianxidianhua varchar(200) 是 NULL 联系电话
lianxidizhi varchar(200) 是 NULL 联系地址
xiangqingbeizhu longtext 是 NULL 详情备注
表4.3 进货订单
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
dingdanbianhao varchar(200) 否 订单编号
gongyingshangbianhao varchar(200) 是 NULL 供应商编号
gongyingshangmingcheng varchar(200) 是 NULL 供应商名称
tushubianhao varchar(200) 是 NULL 图书编号
tushumingcheng varchar(200) 是 NULL 图书名称
tushuleixing varchar(200) 是 NULL 图书类型
tushuzuozhe varchar(200) 是 NULL 图书作者
chubanshe varchar(200) 是 NULL 出版社
tupian varchar(200) 是 NULL 图片
tushudanjia varchar(200) 是 NULL 图书单价
shuliang varchar(200) 是 NULL 数量
dingdanjine varchar(200) 是 NULL 订单金额
jinhuoshijian datetime 是 NULL 进货时间
shenheren varchar(200) 是 NULL 审核人
表4.4 客户信息
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
kehubianhao varchar(200) 是 NULL 客户编号
kehumingcheng varchar(200) 否 客户名称
fuzeren varchar(200) 否 负责人
lianxidianhua varchar(200) 是 NULL 联系电话
dizhi varchar(200) 是 NULL 地址
beizhu longtext 是 NULL 备注
tupian varchar(200) 是 NULL 图片
表4.5 库存分析
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
tushubianhao varchar(200) 是 NULL 图书编号
tushumingcheng varchar(200) 是 NULL 图书名称
riqi varchar(200) 是 NULL 日期
dangqiankucun varchar(200) 是 NULL 当前库存
表4.6 批销订单
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
dingdanbianhao varchar(200) 否 订单编号
gongyingshangbianhao varchar(200) 是 NULL 供应商编号
gongyingshangmingcheng varchar(200) 是 NULL 供应商名称
tushubianhao varchar(200) 是 NULL 图书编号
tushumingcheng varchar(200) 是 NULL 图书名称
tushuleixing varchar(200) 是 NULL 图书类型
tushuzuozhe int(11) 是 NULL 图书作者
chubanshe varchar(200) 是 NULL 出版社
tupian varchar(200) 是 NULL 图片
tushudanjia longtext 是 NULL 图书单价
shuliang varchar(200) 是 NULL 数量
dingdanjine varchar(200) 是 NULL 订单金额
jinhuoshijian datetime 是 NULL 进货时间
shenheren varchar(200) 是 NULL 审核人
表4.7 商品退货
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
gongyingshangbianhao varchar(200) 是 NULL 供应商编号
gongyingshangmingcheng varchar(200) 是 NULL 供应商名称
caigoubianhao varchar(200) 是 NULL 采购编号
tushubianhao varchar(200) 是 NULL 图书编号
tushumingcheng varchar(200) 是 NULL 图书名称
tushuzuozhe varchar(200) 是 NULL 图书作者
chubanshe varchar(200) 是 NULL 出版社
shuliang varchar(200) 是 NULL 数量
caigoujiage varchar(200) 是 NULL 采购价格
tuihuojine varchar(200) 是 NULL 退货金额
tuihuoyuanyin varchar(200) 是 NULL 退货原因
tuihuoriqi date 是 NULL 退货日期
表4.8 收入金额
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
riqi varchar(200) 是 NULL 日期
tushushuliang varchar(200) 是 NULL 图书数量
shourujine varchar(200) 是 NULL 收入金额
beizhu longtext 是 NULL 备注
表4.9 收藏表
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
userid bigint(20) 否 用户id
refid bigint(20) 是 NULL 收藏id
tablename varchar(200) 是 NULL 表名
name varchar(200) 否 收藏名称
picture varchar(200) 否 收藏图片
表4.10 图书类型
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
tushuleixing varchar(200) 是 NULL 图书类型
表4.11 图书信息
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
tushubianhao varchar(200) 是 NULL 图书编号
tushumingcheng varchar(200) 是 NULL 图书名称
tushuleixing varchar(200) 是 NULL 图书类型
tushuzhuangtai varchar(200) 是 NULL 图书状态
tushuzuozhe varchar(200) 是 NULL 图书作者
tushugaiyao longtext 是 NULL 图书概要
tushufengmian varchar(200) 是 NULL 图书封面
thumbsupnum int(11) 是 0 赞
crazilynum int(11) 是 0 踩
表4.12 管理员表
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
username varchar(100) 否 用户名
password varchar(100) 否 密码
role varchar(100) 是 管理员 角色
addtime timestamp 否 CURRENT_TIMESTAMP 新增时间
表4.13 应收金额
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
riqi varchar(200) 是 NULL 日期
tushushuliang varchar(200) 是 NULL 图书数量
yingshoujine varchar(200) 是 NULL 应收金额
beizhu longtext 是 NULL 备注
表4.14 用户
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
zhanghao varchar(200) 否 账号
mima varchar(200) 否 密码
xingming varchar(200) 是 NULL 姓名
xingbie varchar(200) 是 NULL 性别
shouji varchar(200) 是 NULL 手机
youxiang varchar(200) 是 NULL 邮箱
tupian varchar(200) 是 NULL 图片
sfsh varchar(200) 是 否 是否审核
shhf longtext 是 NULL 审核回复

6系统测试
6.1概念和意义
测试的定义:程序测试是为了发现错误而执行程序的过程。测试(Testing)的任务与目的可以描述为:
目的:发现程序的错误;
任务:通过在计算机上执行程序,暴露程序中潜在的错误。
另一个预测是相关的术语叫纠错(Debugging)。它的目的与任务可以规定为:
目的:定位和纠正错误;
任务:消除软件故障,保证程序的可靠运行。测试与纠错的关系,可以用图6-1的数据流图来说明。图中表明,每一次测试都要准备好若干必要的测试数据,与被测试程序一道送入计算机执行。通常把一次程序执行需要的测试数据,称为一个“测试用例(Test Case)。每一个测试用例产生一个相应的“测试结果”。如果它与“期望结果”不想符合,便说明程序中存在错误,需要用纠错来改正。
在这里插入图片描述

图6.1测试与纠错信息流程
6.2特性
(1)挑剔性
测试是为了证明程序有错,而不是证明程序无错。因此,对于被测程序就是要“纯毛求疵”,就是要“鸡蛋里挑骨头”。
(2)复杂性
测试仪程序则比较容易,这其实是一个误区。设计测试用力是一项需要细致和高度技巧的高能工作,稍有不慎就会顾此失彼,发生不应用得数楼。
(3)不彻底性
实际测试都是不彻底的,当然不能够保证测试后的程序不存在遗漏的错误。
(4)经济性
通场这种测试称为“选择测试(Selective Testing)”。为了降低测试成本,选择测试用力是应注意遵守“经济性”的原则。
6.3重要性
软件测试在软件生命周期中占据重要的地位,在传统的瀑布模型中,软件测试学仅处于运行维护阶段之前,是软件产品交付用户使用之前保证软件质量的重要手段。近来,软件工程界趋向于一种新的观点,即认为软件生命周期每一阶段中都应包含测试,从而检验本阶段的成果是否接近预期的目标,尽可能早的发现错误并加以修正,如果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难。
6.4测试方法
首先我们来说界面测试,界面测试是为了使程序在不同的的操作平台上能够运行界面,并且能够保持原来的风格。我把完整程序拷贝到Windows 7环境下,似的程序运行正常,运行界面上的字体图片等设置都能够保持得非常好。不出现字体变形等情况!
其次进行功能测试。该系统测试采用的是单元测试,集成测试,完善性测试等多种方式进行测试。
经过测试,所有功能都能得以实现,没有任何变形。至此,在功能的测试上也已经比较圆满的完成了。
由于经验不足,写代码时出现了一些考虑不周的系统缺陷,写代码的时候会出现与设想不一致,比如说代码不规范导致接口与接口之间出现问题,功能与客户的要求不符合,这样导致产品不能过关,无法交付。所以产品在上线前必须反复测试,经过反复测试,修改,再测试,再修改,产品才能够不断完善。在整个系统测试中,根据需求文档和设计文档,逐一对功能进行检测并写好测试用例,有效避免残片缺陷,因为产品出现缺陷不仅影响功能,而且可以导致数据的不准确,导致产品质量的降低,经过测试,才能使得产品的稳定性和成熟度得到极大的提升,产品质量也才有保证。
6.5 功能测试
功能测试主要包括五项内容:适用性、准确性、可操作性、依从性、安全性。
本系统功能测试如表6.1所示:
表6.1 系统功能测试
测试内容 测试结果
适用性 好
准确性 好
可操作性 好
依从性 好
安全性 好
6.6可用性测试
可用性测试用于检测系统的可操作性、可理解性、可学习性等方面内容。具体测试方面如表6.2所示。
表6.2 系统可用性测试
测试项 测试人员的评价
窗口移动、大小改变、关闭等操作是否正常 是
操作模块是否友好 是
模块、提示内容等文字描述是否正确 是
模块布局是否协调、合理 是
模块的状态是否正确(对选中项能否发生对应切换) 是
鼠标、键盘操作是否支持 是
所需数据项是否正确显示 是
操作流程是否合理 是
是否提供帮助信息 是
6.7性能测试
性能测试主要通过模拟系统运行环境,测试系统性能是否符合客户需求。性能测试的重要技术指标就是:系统运行速度、网络响应时间和支持并发节点数。
1)系统运行速度:通过在不同计算机上试运行本系统,没有发现有任何迟滞、停顿现象。
2)网络响应时间:网络响应时间主要包括网络最小响应时间、平均响应时间、最大响应时间三个参数。经过测试,在网络运营良好状态下,NBA局域网内响应时间三参数为:1/2/6s,NBA外网响应时间三参数为3/7/12s,符合客户需求,属于用户心理可承受范围。
3)支持并发节点数:经过模拟环境测试,本系统在并发节点达46个时,网络运营速度会发生较大波动,延迟时间10秒左右,符合客户需求。
6.8测试分析
本网站设计时借鉴了国内外优秀网站的优点,从界面到系统设计都保证了用户能够方便操作。系统的主要特点和优点归纳如下:
(1)本系统用的移置性和针对性都比较高,因为针对性高可以提供更好的服务而移置性可以在多个系统上运行,更给客户带来了极大的方便。
(2)该完整内容全面,管理方便可以及时的全面的处理各种错误,异常,这样避免了很多因用户的马虎操作而出现的失误,其操作方便,用户界面友好,能够上网的人都可以很好的进行操作。
6.9测试结果分析
经过对上述测试结果分析,本系统符合用户需求。所有基本功能点实现,操作简单,操作流程简单合理,产品运行性能良好,是一款值得推广的图书进销存管理系统。

标签:200,varchar,进销存,Spring,Boot,测试,NULL,主键,图书
From: https://blog.csdn.net/2401_85761762/article/details/143010530

相关文章

  • Springboot缓存+定时提交优化频繁数据库表修改
    缘起最近在弄一个答题小程序,当用户选择的时候需要把用户选择的选项提交到服务器上,然后整个字段是个json格式的,更新的方法也就是解析json后添加选项进入json中。于是其中就涉及到频繁的数据库修改,因为用户答题速度根据题目不同嘛,所以我就寻思这样频繁的修改,数据量上来速度就会受......
  • 【图书介绍】《Spring+Spring MVC+MyBatis从零开始学(视频教学版)(第3版)》
    本书重点基于版本Spring 6.1.10、Spring MVC 6.1.10、MyBatis 3.5.16。详解SSM框架各组件用法及其整合方法,实战新闻发布管理系统、图书管理系统开发。配套示例源码、PPT课件、教学大纲、习题答案、教学视频。内容简介本书全面讲解使用流行轻量级框架SSM(Spring+Spring......
  • 基于spring boot的直播合作管理系统的设计与实现
    作者简介:Java领域优质创作者、CSDN博客专家、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验,被多个学校常年聘为校外企业导师,指导学生毕业设计并参与学生毕业答辩指导,有较为丰富的相关经验。期待与各位高校教师、企业......
  • SpringBoot 快速获取 IP 地址及归属地
    ava中获取IP归属地,主要是分为以下两步:通过 HttpServletRequest 获取 Ip根据 IP 查询获取对应的归属地HttpServletRequest获取IP写一个工具类封装获取IPpublicclassIpUtil{privatestaticfinalStringUNKNOWN="unknown";privatesta......
  • spring boot fastjson Long 转字符串
     由于Long类型返回给前端时,如果数值过大,会导致精度丢失,这时候就需要把Long转成String。这时候如果专门为其写一个属性来存储,比较麻烦。这时候可以使用fastJson里的标签@JSONField(serializeUsing=ToStringSerializer.class)只要在model类上的Long字段加上这个标签,则会......
  • springboot的项目如何既要用jar包启动,同时还可以为不同的机房设置不同的配置文件
    作者:京东科技李意文 1、首先先把配置文件从jar中抽离示例代码:<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId><version>3.2.0</version><configuration><exclu......
  • 【Springboot】注解EqualsAndHashCode
    先看问题,如图所示注解解释@EqualsAndHashCode作用与子类上callSuper=true,根据子类自身的字段值和从父类继承的字段值来生成hashcode,当两个子类对象比较时,只有子类对象的本身的字段值和继承父类的字段值都相同,equals方法的返回值是true。callSuper=false,根据子类......
  • 基于SpringBoot+Vue+uniapp的互助学习小程序的详细设计和实现(源码+lw+部署文档+讲解
    文章目录前言详细视频演示具体实现截图技术栈后端框架SpringBoot前端框架Vue持久层框架MyBaitsPlus系统测试系统测试目的系统功能测试系统测试结论为什么选择我代码参考数据库参考源码获取前言......
  • 基于springboot高校软件工程专业人才培养达成评价系统(源码+文档+部署讲解等)
    目的:本课题旨在设计并实现一个基于SpringBoot的攀枝花学院软件工程专业人才培养达成评价系统,提高人才培养质量和效率,为学校的教学管理和决策提供科学依据。意义:一、提高人才培养质量科学评价体系:通过建立科学合理的人才培养达成评价体系,能够全面、客观地评价学生的专......
  • 基于微信小程序+springboot的加油站会员管理系统设计与实现(源码+文档+部署讲解等)
    目的:本课题旨在设计并实现一个基于SpringBoot的攀枝花市金河加油站会员管理系统,提高加油站的会员管理效率和服务质量,为加油站的经营决策提供数据支持。意义:一、提高会员管理效率自动化管理流程:系统可以实现会员信息的自动录入、更新、查询和统计等功能,减少人工操作的......