项目运行
环境配置:
Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。
项目技术:
ssm + mybatis + Maven +mysql5.7或8.0等等组成,B/S模式 + Maven管理等等。
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 4G内存以上;或者 Mac OS;
5.是否Maven项目: 否;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目
6.数据库:MySql 5.7/8.0等版本均可;
毕设帮助,指导,本源码分享,调试部署(见文末)
功能需求分析
疫情物资管理是以疫情物资的状况为起点,综合网络空间开发设计要求。目的是将疫情物资通过网络平台变换为在网上操作,完成疫情物资的方便快捷、安全性、规范做了保障,目标明确[9]。
这一系统可以分成三种类别的用例实体模型,分别是用户、配送员和管理员。这三个角色的作用将在下面详解和叙述。
(1)用户
主要使用者为用户。具备有:公告信息管理、物资信息管理、物资申请管理、配送信息管理、急缺物资管理等功能。用户用例图如图2-1所示。
图2-1 用户用例图
(2)配送员
其中使用者为配送员。具备有:公告信息管理、物资信息管理、物资出库管理、配送信息管理、体温打卡管理、请假申请管理等功能。配送员用例图如图2-2所示。
图2-2 配送员用例图
(2)管理员
进行维护,以及平台的后台管理工作都依靠管理员,其可以对一些信息进行管理。需具备功能有系统首页、个人中心、用户管理、配送员管理、公告信息管理、物资信息管理、物资分类管理、物资申请管理、物资入库管理、物资出库管理、配送信息管理、急缺物资管理、体温打卡管理、请假申请管理。管理员用例图如图2-3所示。
图2-3 管理员用例图
2.1.3 非功能需求分析
(1)系统的实用性
疫情物资管理系统的开发,要求做到足够的简洁、易用,能为用户提供快捷、便利的使用体验,减少系统的无用功能,以及用户使用上的多余操作[11]。
(2)系统的安全性
疫情物资管理系统纪录了至关重要的用户信息等信息,应当具备很高的安全性和经济价值。因此为了更好地保证用户的重要信息不被泄露、破坏和盗取,一定要保证系统的安全性。
(3)系统的稳定性
当一个系统的稳定性没法确保时,用户在应用系统时很容易发生数据操作不正确或网页页面回应不正确等。系统的稳定性对用户对系统的评价有较大的影响,是评价系统的一个主要指标值。因而,为了确保系统的稳定性,开发设计时要挑选稳定性高的操作系统、开发软件、数据库、服务器、以及其他工具。
(4)系统的开放性
要使系统软件对外开放,最先要保证系统具备较好的兼容模式,而且大部分版本的Windows电脑操作系统都能正常的运作。此外,尽可能适用不一样的电脑浏览器版本,同时系统的开放性也体现在系统方便日后的管理和升级。
2.2相关技术介绍
本章主要对开发疫情物资管理系统所涉及的技术以及开发所用环境进行介绍说明,对包括java语言,SSM框架和开发用到的软件和数据库等环境进行介绍说明。
2.2.1 SSM框架介绍
SSM就是Spring+Spring MVC+MyBatis,其中SpringMVC实际上是Spring中包含的内容。SSM是当下主流的轻量级Java EE企业级框架,既可以作为数据源较简单的web项目的框架,也可以用来搭建大型的企业级应用系统。
2.2.2 Java语言介绍
Java语言正式诞生于1995年,是由SUN公司开发研制的OAK语言发展而来的。Java语言继承了OAK语言可跨平台运行的特点,融合了面向对象编程的风格,JAVA以其独有的开放性、跨平台性和面向网络的交互性席卷全球,以其安全性、易用性和开发周期短的特点,迅速从最初的编程语言发展成为全球第一大软件开发平台.广受时下程序开发人员的好评。后来又为了丰富Java语言的用途,提高生产力,将它进行设计和改造,以满足更多地开发和应用场景。经过改造后,它可以满足移动端开发,桌面应用开发和企业级应用开发。Java语言还为用户提供了丰富的类库,在掌握它的特性后,学习特定的工具包,就可以满足很多场景的开发。现在来看,Java语言在这三种平台的应用开发中,都占据了举足轻重的地位。
与其他语言相比,Java语言具有很多的优点,Java语言简单比较容易理解,有c语言的基础很容易就可以学会,中文和英文的学习资源也比较多,而且Java语言经过许多年的沉淀发展,逐渐演变出很多成熟的框架技术。企业还还可以封装自己的框架,让开发变得简单。它还具有跨平台性较其他语言这一个最大的优势,这意味着它只需要一次编译就可以运行在其他平台上。
2.2.3 B/S架构
B/S的系统是通过能上网的电脑就可以使用,它最大的优点是不需要安装专门的软件,首先浏览器向服务器发出请求,然后服务器处理请求把信息再返回给浏览器。不需要再次对数据进行存取与计算数据,只要负责显示数据来降低要求,如果说客户端像个“瘦子”,而服务器会越来越“胖”。B/S体系结构与C/S体系结构相比,最大的不同是:B/S体系的应用软件使用网络浏览器作为与用户交互的平台,而C/S则需要开发专用的应用程序。
图2-4 B/S结构图
2.2.4 MySQL 数据库介绍
在软件项目,通过经营性数据的数据库,可以保证其安全,独立和数据一致,访问数据的系统来提供,所以有效减少时间程序员开发应用程序。
MySQL可以支持多线程,可以方便使用系统的资源,提高运行的速度。并提供odbc、jdbc和tcp/ ip,以各种形式连接到MySQL; 功能方面表现欠缺,规模小,但对于这个系统就足够了。
因为MySQL是源代码对外开放的,所以任何人都可以通过相应的方法下载,并根据个性化需求进行修改。 由于MySQL的速度,可靠性和适应性,MySQL受到重视。
MySQL虽然功能可能不是很强大,但由于其开源,广泛传播,导致很多人都意识到这个数据库。
3 系统设计
此章主要是详细介绍疫情物资管理系统软件整体架构功能的设计与实现。
3.1 系统设计目标
疫情物资管理系统的开发采用模块化软件结构设计,通过模块划分,可以让整个系统开发设计变得更加简洁,结构清晰,让程序的可读性和维护性更高,也方便开发人员对开发期间的组织管理工作,模块化就是指叙述I/O、逻辑性功能、内部结构条件和环境因素的表述。一般系统的一个子模块只实行一个功能,模块中间应当有良好的结构分析。下一层模块在顶层模块的启用下进行功能,后边的模块被逐渐启用,互相配合程序流程的每个子功能。在设计时应保持模块独立化原则,所以一个软件应该由一组相互独立的子模块构成,并保证模块间接口开发简单。
3.2 系统结构图
由需求分析阶段结果和综合分析,实质上,疫情物资管理系统是一个开发难度比较高的系统,因为系统相对复杂,涉及功能多,且有一定的综合性,所以需要做到对现有软硬件的合理应用、系统软件层面做好科学合理的规划设计。构建一个完善的疫情物资管理系统软件,后台管理有关的MySQL数据库系统等。
因此,疫情物资管理系统按照功能由三部分构成的,三部份是用户、配送员和管理员。主要功能有物资信息管理、物资分类管理、物资申请管理、物资入库管理、物资出库管理、配送信息管理等。系统软件用户、配送员与管理员的功能模块图如下图3-1所显示。
图3-1 系统用户、配送员与管理员的功能结构图
3.3 系统数据库设计
为了更好地便捷日后的信息维护保养和信息升级,提升系统软件数据信息浏览的高效率。设计方案一个健全的数据库是必需的。数据库设计方案系统对有较大的影响,好的设计可以做到缩短数据操作的所需时间,带来更大的流量,同时在进行开发时,数据库设计的越优秀,越合理,开发所需要编写的代码就越简洁,越能使数据的储存效率提高,让数据的一致性和完整性可以得到保证。
3.3.1 数据库概念设计
概念模型用于对信息世界进行建模,单独于指定的数据库管理系统。便于将现实世界中的实际事情抽象地构成数据库管理系统适用的数据库模型。大家趋向于先把现实世界抽象化成信息世界,再把信息世界变为机器世界[12]。换句话说,最先将现实世界中的目标抽象化为自主于特殊计算机软件和特殊数据库管理系统的信息构造,而是一个数据模型,随后在电子计算机上把该实体模型变换为数据库管理系统适用的数据库系统。实际上,数据模型是以现实世界到机器世界的正中间层级。
信息世界的基本要素包含实体和关联。
(1)实体(entity)
实体(entity) 客观存在并可相互区别的事物称为实体[13]。实体可以是实际的人、事或物,还可以是抽象化的概念或联络。
(2)联系(relationship)
我们可以把现实世界中相应的事情当作有关的实体,随后叙述现实世界中的信息。实体内部结构的特性连接造成实体中间的连接。实体间的连接可以有三种:一对一(1: 1),一对多(1: n),多对多(m: n)。信息世界用概念模型来进行建模,所以信息世界中共有的概念可以由概念模型准确的方便的表达出来[14]。表达概念的方法不仅一种,E-R图是最经常使用的一种。现实世界的概念模型可以用E-R图来叙述,称之为实体-关系模型,通称E-R
实体模型。
根据系统分析,以下是对各个实体属性的具体图形说明。
物资信息实体E-R图如下图3-2所示。
图3-2 物资信息实体E-R图
配送员信息实体E-R图如下图3-3所示。
图3-3 配送员信息实体E-R图
物资入库实体E-R图如下图3-4所示。
图3-4物资入库实体E-R图
用户信息实体E-R图如下图3-5所示。
图3-5用户信息实体E-R图
管理员功能模块
管理员登录,通过登录页面输入用户名、密码、选择角色等信息,进行登录操作,如图4-1所示。
图4-1管理员登录界面图
管理员登录进入疫情物资管理系统可以对系统首页、个人中心、用户管理、配送员管理、公告信息管理、物资信息管理、物资分类管理、物资申请管理、物资入库管理、物资出库管理、配送信息管理、急缺物资管理、体温打卡管理、请假申请管理等信息,进行相应操作,如图4-2所示。
图4-2管理员功能界面图
管理员点击用户管理:在用户管理页面中输入账号、姓名、年龄、性别、手机、头像、住址等内容,进行查询、新增或者删除用户信息等操作,如图4-3所示。
图4-3用户管理界面图
管理员点击配送员管理:在配送员管理页面中输入配送账号、配送姓名、年龄、性别、联系电话、车牌号、头像等内容,进行查询、新增或者删除配送员信息等操作,如图4-4所示。
图4-4配送员管理界面图
管理员点击物资信息管理:在物资信息管理页面中对物资名称、物资分类、规格、图片、数量、登记日期等内容,进行查询或者新增、删除物资信息等操作,如图4-5所示。
图4-5物资信息管理界面图
管理员点击物资分类管理:在物资分类管理页面中对物资分类等内容,进行查询、新增或者删除物资分类等操作,如图4-6所示。
图4-6物资分类管理界面图
管理员点击物资申请管理:在物资申请管理页面中对申请编号、物资名称、物资分类、数量、申请日期、账号、姓名、住址、审核回复、审核状态、审核等内容,进行查询或者删除物资申请等操作,如图4-7所示。
图4-7物资申请管理界面图
管理员点击物资入库管理:在物资入库管理页面中对入库编号、物资名称、物资分类、物资来源、数量、备注、入库日期等内容,进行查询或者删除物资入库等操作,如图4-8所示。
图4-8物资入库管理界面图
4.2用户功能模块实现
在系统上用户点击注册或者登录按钮,在注册、登录界面填写信息完成后,单击注册或者登录操作,如图4-9 所示:
图4-9用户注册、用户登录界面
用户点击后台管理,然后页面跳转到系统后可以对系统首页、个人中心、公告信息管理、物资信息管理、物资申请管理、配送信息管理、急缺物资管理等功能进行操作。如图4-10所示:
图4-10 用户功能主界面
4.3配送员功能模块实现
在系统上配送员点击注册或者登录按钮,在注册、登录界面填写信息完成后,单击注册或者登录操作,如图4-11 所示:
图4-11配送员注册、配送员登录界面
配送员登录系统后可以对系统首页、个人中心、公告信息管理、物资信息管理、物资出库管理、配送信息管理、体温打卡管理、请假申请管理等功能进行操作。如图4-12所示:
图4-12 配送员功能主界面