🙊作者简介:多年一线开发工作经验,原创团队,分享技术代码帮助学生学习,独立完成自己的网站项目。
作者完整代码目录供你选择:
⬇️文章末尾可以获取联系方式,需要源码或者演示视频可以联系⬇️
⚡感兴趣大家可以点点关注收藏,后续更新更多项目资料。⚡
项目展示
摘 要
近年来,科技飞速发展,在经济全球化的背景之下,互联网技术将进一步提高社会综合发展的效率和速度,互联网技术也会涉及到各个领域,而数字科技风险报告管理系统在网络背景下有着无法忽视的作用。信息管理系统的开发是一个不断优化的过程,随着网络数据时代的到来,信息管理系统与计算机的集成成为必然。
本次将以数字科技风险报告管理方面为切入点,论述了数字科技风险报告管理的意义和内容,以此展开对数字科技风险报告的开发与建设的详细分析。从数据挖掘的角度出发,了解信息管理系统的作用,对数字科技风险报告的过程以及用处进行更深一步的研究,数据的处理效率,以及具体的应用方向。对于数字科技风险报告管理系统所带来的影响,将从传统管理方式进行对比分析,从硬件优化、软件开发,这几个方面来论述数字科技风险报告管理系统的优势所在,分析数字科技风险报告管理在计算机时代发展的变化趋势。
关键词:数字科技风险报告管理系统;Spring Boot框架;
1 绪 论
随着当代社会科技的迅速发展,计算机网络时代正式拉来帷幕,它颠覆性的影响着社会发展的各个方面。数字科技风险报告管理系统更是与数据密不可分,不仅在互联网中起着重要作用,更是充斥着我们日常工作和生活之中。在这个信息化的时代背景之下,互联网的来临,无论是对人类社会,还是对政治、经济等多方面领域影响深远,也给新时代的信息管理和信息系统带来新的机遇和挑战。网络电脑化越深入,影响越大,社会就越进入互联网时代。生活的各个领域都需要巨大的信息资源,需要妥善处理。因此,在计算机技术快速发展环境下,信息管理和信息系统尤为重要。对于数字科技风险报告管理系统的未来进行分析和展望,并提出研究意见[1]。
1.1 论文背景
近年来互联网技术飞速发展,给人们的生活带来了极大便利,也改变人们的生活生产方式,拥有存储量大、可靠性高、使用方便等不可替代的优点,正在逐步取代传统的信息管理模式。由代码编程实现的各种管理工具和系统替代传统的人工操作,不但提升了可靠性还降低了人力成本,节省了时间,提升了工作效率。全球视域下信息技术逐步渗透到各个领域,多样化的数据信息为数字科技风险报告管理带来了深刻变革,打破了传统的数字科技风险报告的方式与载体,管理者的事务性工作面临新形势和新挑战[2]。
数字科技风险报告管理作为信息化建设的重要一环,数字科技风险报告管理系统的开发与实现,能够使管理者的工作开展得更加有序。
1.2 研究的主要内容
数字科技风险报告管理系统分析基本内容:本设计主要是实现一个数字科技风险报告管理系统,实现自动化、信息化、管理。系统的主要的设计原则是:以实际应用为核心,重点突出“实用、易用、简洁、稳定”的优点。既能够注重到实效,满足现实用户的实际需要,也能够为系统以后的升级和扩展留有一定的余地。在技术设计的实现上,突出“实现合理、结构清晰、简单易懂”的特点[3]。
本系统的主要目的在于加速数据可视化与信息化进程,充分利用计算机技术和现代通讯的手段面向社区的服务。建立一个方便管理的数字科技风险报告管理系统的平台,方便信息资源的共享,提高管理的效率,为管理员和负责人、用户提供了数字科技风险报告管理系统的辅助服务。本系统将最大程度地提高管理者整体的工作效率和工作质量,降低管理和工作的成本,改善工作的环境和条件,提高管理者的管理和决策的自动化和科学化水平。帮助各行业节省费用,减少中间环节,优化业务流程,提高整体工作效率,促进管理的进步[4]。
1.3 研究方法
该数字科技风险报告管理系统在windows平台下完成开发,采用Spring Boot框架,java语言开发,将应用程序部署于tomcat上,加之servlet接口来实现交互式响应服务器上的数据,将最终效果呈现于服务器上。运用mysql数据库,使用navicat premium连接数据库,从而实现数据库各个功能以友好的图形化界面展示。使用B/S架构,来降低各个层间解耦合,从而便捷高效完成开发[5]。
2 系统相关技术
2.1 Java语言简介
Java,目前Internet中最流行的编程语言之一。它吸取了C++编程语言的长处的同时还摒弃了许多复杂抽象,不易掌握的问题,使得Java编程语言不但功能强大而且使用方便。
Java技术在使用过程中有优势也有劣势。其优势在于,因为Java本身相对严格的语法,所以可以强化程序员在编程时的规范性问题,不容易出现明显结构错乱的问题。因此,规范将是Java的巨大优势。但是它也有劣势,就是不太适应互联网模式下的不断修改,总是修改容易破坏架构。
面向对象的三种特征:封装,继承和多态。
密封:主要是指对数据信息的隐藏,通过把数据信息类别与通过数据信息的功能密封在一块,让数据信息被保存在数据信息类别的里面,只留下一部分可以对外的接口,以便于尽可能的地隐蔽里面的数据信息。因此好处也就十分的明显就是实现了专业的分工,同时也隐藏了信息,保证了安全。
继承:这就像是实际人生中的父子关系一样,孩子要承袭父母的特点。类似的,一个种类同时也继承了另一个种类的某些特性,其父属之间有一种特别的一般性的联系,是is-a的关系,从根本上来说都属于同一个实体。
多态:多态系统是以封装和继承为基础的。由于所传输的父类对象能够引入各种各样的子类对象,因而能够显示出各种各样的现象,给多态的编程带来了良好的扩展。
2.2 MySQL数据库
MySQL是一种关系型的数据库管理系统,属于Oracle旗下的产品。
MySQL的语言是非结构化的,使用的用户可以在数据上进行工作。这个数据库管理系统一经问世就受到了社会的广泛关注。在各个方面,与同等的数据库相比,MySQL的优点极为突出,它的运行速度快,适用的范围广泛,而且数据库的安全性这一方面独树一帜。在语言结构方面,MySQL的语言简单,其他数据库需要一大段代码来实现的操作,MySQL仅需要一小部分代码甚至几行。综上所述,MySQL这种关系型数据库管理系统,已经成为了开发者进行项目的数据开发、存储的不二之选。MySQL的功能也多种多样,如数据操纵和数据库的建立维护等。而且该数据库的数据共享性高、冗余度低而且容易扩充。MySQL在安全性这一方面也具有自身的特点,它应用了用户的标识和鉴别技术,对试图和数据进行加密,确保资料信息的可靠性。介于数据库系统的功能与强大等性质之间,本数据库系统的设计中主要使用了MySQL实现对数据的处理。数字科技风险报告管理系统运用MySQL数据库,在Web应用这一块,MySQL是最好的选择。对于该系统整个的开发、搭建、运行和维护具有极其重要的作用。
2.3 B/S架构
B/S结构就是指系统客户端与服务器分离,客户端通过浏览器访问服务端进行操作。
B/S结构目前广泛应用于绝大部分系统搭建中,这种结构摒弃C/S结构客户端服务端不分离的缺点,具有更多的优势:
(1) 跨平台性:B/S的标准由标准化组织确立,适用于绝大多数的系统搭建,通用于应用之间。
(2) 低维护成本:客户端和服务器端分离,减轻了两端的压力,尤其是客户端,对客户端设备,硬件、软件要求都比较低,并且系统需要升级或维护时,只需要在服务器端升级或维护就可以,使相应的费用减少。
2.4 Spring Boot框架
Spring Boot是由Pivotal团队提供的轻量级框架,其“开箱即用”及“约定优于配置”的策略可以使开发者全身心的投入到业务逻辑代码的编写中,极大地提高了软件开发项目的效率。相比于Spring框架而言,Spring Boot框架更加能够节省程序员配置XML的时间,Spring Boot项目允许开发者使用它的所有模块和开发功能,此外, Spring Boot内置了服务器,简化了开发者启用服务器的整体流程,Spring Boot还可以自动适配不同类型的数据库以满足用户快速连接后台数据库管理的需求,这极大地方便了用户快速搭建应用程序的实现过程。 2014年4月,Spring Boot 1.0.0发布,截止到2022年2月,发布的Spring Boot版本为Spring Boot 3.0.0-M1。在系统的设计与开发中,为了能够快速搭建软件后台服务的开发环境,从技术实现的难度以及平台开发的成本两个方面考虑,Spring Boot框架能够使开发者更关注平台功能的业务逻辑代码实现,可采用Spring Boot框架搭建系统为前端App提供数据服务。因此,本案例项目后台开发选择Spring Boot框架。
3 系统分析
3.1 需求分析
在对一个软件进行设计与开发之前,需要对该系统进行深层次的调查、分析、研究[6]。良好的需求分析不仅能使开发人员快速、准确地理解开发任务,还能提高开发效率,能好地完成工作。对系统进行需求分析是必不可少的,这是软件生存周期上一个很重要的部分,在这个阶段需要确定该系统需要实现什么功能,然后做成一个数据规范、图表清晰的文档,为接下来的系统设计工作提供一定的基础。
3.1.1系统总体分析
本系统采取了一系列的设计原则,主要目的是为了系统的功能设计,还有管理人员在后期对系统维护时的方便,以及使用户能够简易的操作。最重要的设计原则包括:简单性、针对性、实用性、一致性、先进性[7]。
(1) 简单性:在该系统中功能模块实现的同时,让用户操作起来简单明了,很快找到所需资源是最直接的目的。
(2) 针对性:该系统是根据设计需求为导向来开发数字科技风险报告管理系统的设计,所以针对性较强。
(3) 实用性:该设计能够满足数字科技风险报告管理系统的实际的功能需求,能够在实际中让用户真正使用到,具有实际的应用价值。
(4) 一致性:网站整体的页面布局,在不同的界面之间,img里的图片的放置位置以及大小都应该有严格的一致性。变量命名规则应该具有统一性。
(5) 先进性:本系统采用java作为开发语言、Spring Boot框架、MySQL作为系统数据库,它们被软件设计者们广泛使用[8]。
3.2 可行性分析
可行性分析是每开发一个项目必不可少的一部分,可行性分析可以直接影响一个系统的存活问题,针对开发意义进行分析,还有就是是否可以通过所开发的系统来弥补传统纸质手工统计模式的不足,是否能够更好的解决其中问题等,通过对该数字科技风险报告管理系统的开发设计,不仅能够逐步减少工作人员的工作量,而且还可以进行高效工作和管理[9]。所以该系统的开发实现了最大的意义和价值,在系统完成后,利益是否大过于成本,是否能够达到预期效果,这些方面都要进行可行性分析,再通过分析之后,就可以决定是否开发此系统。该数字科技风险报告管理系统的开发设计中,以下几点进行了可行性分析:经济、技术、运行可行性:通过java的采用,由于该技术不断成熟,所以使用该技术设计数字科技风险报告管理系统是具有可行性的。经济可行性:在开发过程中,系统完成后的利益是否大过于开发成本。操作可行性:数字科技风险报告管理系统的开发设计中,方便用户的可操作性和实用性[10]。
3.2.1 经济可行性
由于本系统是作为毕业设计系统,且系统本身存在一些技术层面的缺陷,并不能直接用于商业用途,只想要通过该系统的开发提高自身学术水平,不需要特定服务器等额外花费。所有创造及工作过程仅需在个人电脑上就能实现,使用到的软件大多为开源软件,所以经济成本并不高,可以轻易实现[11]。
3.2.2 技术可行性
本系统的开发使用java作为系统开发的开发语言,开发工具选择 Eclipse,而 B/S架构决定了本系统的兼容性和多用户可操作性,此外选择MySql作为数据库不仅提高了数据安全性更保障了数据的可操作性[12]。
3.2.3 运行可行性
本系统作为以java作为开发技术的系统,而且选用 B/S架构则决定了要操作本系统仅需要占用很小的资源,并没有过多地硬件配置要求,目前市面上只要能正常运行浏览器的个人电脑都可以正常运行使用该系统。
综上所述,本系统的设计与开发在经济上、技术上、运行上的条件都是满足的,因此,系统开发具备可行性条件[13]。
3.3 系统结构和流程设计
开发该系统主要选用了Spring Boot的架构设计,将主要表现层、业务逻辑层和数据访问层分离出来。表现层将请求的回应信息展现在java网页页面上便于客户访问,业务逻辑层负责获得并正确处理请求逻辑,确保SQL语句读取时取得成功或失败,数据访问层关键将数据信息拼写成SQL语句。由于分层次构造开展开发,可以使开发系统软件的耦合性减少,随后重用率提升,只在数据层对数据开展处理就可以了。随后由接口封装对象,业务层完成对系统的逻辑操作,在显示层展现和接受数据信息,用接口完成每个层间的数据信息的传送。实际操作的方法简洁明了,使体系能更快的运作。
操作流程需要进行设计,一个完整的系统可以流畅的操作下来是至关重要的,本系统的完整操作流程如图3-1所示:

图3-1系统操作流程图
本系统主要有管理员和用户、负责人三种角色,进行登录时需要确保输入的内容与已经保存的账号信息一致,通过账户密码等方式来校验用户信息,输入正确则登入系统,输入错误则登入失败。系统登录流程,如图3-2所示:

图3-2系统登录流程图
在添加信息的时候,会判断是哪类用户,并根据用户类型判断执行是否合法,合法者可以进行添加,不合法者则不能进行此操作。管理员登录账号后可以对内容进行添加,拥有着最高的权限,用户、负责人权限仅次于管理员。添加信息流程图如图3-3所示:

图3-3系统添加流程图
删除数据时与添加数据功能类似,删除数据具体流程如图3-4所示:

图3-4系统删除流程图
4 系统设计
4.1 系统通用功能用例分析
系统的通用功能包括用户登录和密码修改,是三个角色共同需要使用的功能,用例分析如图4-1所示。

图4-1系统通用功能用例分析图
4.2 系统设计主要功能
本系统采用自上往下的方法开发与实现,本课题要求实现一套数字科技风险报告管理系统,系统主要包括管理员模块和负责人、用户模块的功能模块;
(1) 管理员用例图如下所示:

图4-2管理员用例图
(2) 负责人用例图如下所示:

图4-3负责人用例图
(3) 用户用例图如下所示:

图4-4用户用例图
通过市场调研及咨询研究,可以按照用户的角色权限使不同用户角色看到不一样的信息界面。现根据需求阶段的分析,我们可以大致确定系统需要包含的功能如下图4-5所示:

图4-5数字科技风险报告管理系统结构功能图
4.3 数据库设计
4.3.1 数据库设计规范
数据可设计要遵循职责分离原则,即在设计时应该要考虑系统独立性,即每个系统之间互不干预不能混乱数据表和系统关系。
数据库命名也要遵循一定规范,否则容易混淆,数据库字段名要尽量做到与表名类似。
4.3.2 E-R图
管理员信息E-R图,如图4-6所示:

图4-6管理员信息E-R图
用户信息E-R图,如图4-7所示:

图4-7用户信息E-R图
负责人信息E-R图如图4-8所示。

图4-8负责人信息E-R图
共享资料E-R图如图4-9所示。

图4-9共享资料E-R图
数字科技风险报告管理系统总体E-R图如图4-10所示。

图4-10数字科技风险报告管理系统总体E-R图
4.3.3 数据表
本系统采用的是MySQL数据库存储数据,系统中使用到的主要数据表的具体展示部分如下所示。
表4-1:共享资料
|
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
|
id |
bigint |
|
主键 |
主键 |
|
|
addtime |
timestamp |
|
创建时间 |
|
CURRENT_TIMESTAMP |
|
ziliaobianhao |
varchar |
200 |
资料编号 |
|
|
|
ziliaomingcheng |
varchar |
200 |
资料名称 |
|
|
|
ziliaoleixing |
varchar |
200 |
资料类型 |
|
|
|
ziliaofengmian |
longtext |
4294967295 |
资料封面 |
|
|
|
ziliaowenjian |
longtext |
4294967295 |
资料文件 |
|
|
|
ziliaojieshao |
longtext |
4294967295 |
资料介绍 |
|
|
|
shangchuanshijian |
datetime |
|
上传时间 |
|
|
|
fuzerenzhanghao |
varchar |
200 |
负责人账号 |
|
|
|
fuzerenxingming |
varchar |
200 |
负责人姓名 |
|
|
表4-2:负责人
|
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
|
id |
bigint |
|
主键 |
主键 |
|
|
addtime |
timestamp |
|
创建时间 |
|
CURRENT_TIMESTAMP |
|
fuzerenzhanghao |
varchar |
200 |
负责人账号 |
|
|
|
fuzerenxingming |
varchar |
200 |
负责人姓名 |
|
|
|
mima |
varchar |
200 |
密码 |
|
|
|
shoujihao |
varchar |
200 |
手机号 |
|
|
|
xingbie |
varchar |
200 |
性别 |
|
|
|
nianling |
varchar |
200 |
年龄 |
|
|
|
touxiang |
longtext |
4294967295 |
头像 |
|
|
表4-3:配置文件
|
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
|
id |
bigint |
|
主键 |
主键 |
|
|
name |
varchar |
100 |
配置参数名称 |
|
|
|
value |
varchar |
100 |
配置参数值 |
|
|
|
url |
varchar |
500 |
url |
|
|
表4-4:报告信息
|
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
|
id |
bigint |
|
主键 |
主键 |
|
|
addtime |
timestamp |
|
创建时间 |
|
CURRENT_TIMESTAMP |
|
baogaobianhao |
varchar |
200 |
报告编号 |
|
|
|
baogaomingcheng |
varchar |
200 |
报告名称 |
|
|
|
fengmian |
longtext |
4294967295 |
封面 |
|
|
|
baogaoleixing |
varchar |
200 |
报告类型 |
|
|
|
wenjianfujian |
longtext |
4294967295 |
文件附件 |
|
|
|
baogaoneirong |
longtext |
4294967295 |
报告内容 |
|
|
|
fabushijian |
datetime |
|
发布时间 |
|
|
|
yonghuzhanghao |
varchar |
200 |
用户账号 |
|
|
|
yonghuxingming |
varchar |
200 |
用户姓名 |
|
|
|
fuzerenzhanghao |
varchar |
200 |
负责人账号 |
|
|
|
fuzerenxingming |
varchar |
200 |
负责人姓名 |
|
|
|
sfsh |
varchar |
200 |
是否审核 |
|
待审核 |
|
shhf |
longtext |
4294967295 |
审核回复 |
|
|
表4-5:报告类型
|
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
|
id |
bigint |
|
主键 |
主键 |
|
|
addtime |
timestamp |
|
创建时间 |
|
CURRENT_TIMESTAMP |
|
baogaoleixing |
varchar |
200 |
报告类型 |
|
|
表4-6:关于我们
|
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
|
id |
bigint |
|
主键 |
主键 |
|
|
addtime |
timestamp |
|
创建时间 |
|
CURRENT_TIMESTAMP |
|
title |
varchar |
200 |
标题 |
|
|
|
subtitle |
varchar |
200 |
副标题 |
|
|
|
content |
longtext |
4294967295 |
内容 |
|
|
|
picture1 |
longtext |
4294967295 |
图片1 |
|
|
|
picture2 |
longtext |
4294967295 |
图片2 |
|
|
|
picture3 |
longtext |
4294967295 |
图片3 |
|
|
表4-7:资料类型
|
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
|
id |
bigint |
|
主键 |
主键 |
|
|
addtime |
timestamp |
|
创建时间 |
|
CURRENT_TIMESTAMP |
|
ziliaoleixing |
varchar |
200 |
资料类型 |
|
|
表4-8:用户
|
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
|
id |
bigint |
|
主键 |
主键 |
|
|
addtime |
timestamp |
|
创建时间 |
|
CURRENT_TIMESTAMP |
|
yonghuzhanghao |
varchar |
200 |
用户账号 |
|
|
|
yonghuxingming |
varchar |
200 |
用户姓名 |
|
|
|
mima |
varchar |
200 |
密码 |
|
|
|
shoujihaoma |
varchar |
200 |
手机号码 |
|
|
|
xingbie |
varchar |
200 |
性别 |
|
|
|
nianling |
varchar |
200 |
年龄 |
|
|
|
touxiang |
longtext |
4294967295 |
头像 |
|
|
表4-9:用户表
|
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
|
id |
bigint |
|
主键 |
主键 |
|
|
username |
varchar |
100 |
用户名 |
|
|
|
password |
varchar |
100 |
密码 |
|
|
|
image |
varchar |
200 |
头像 |
|
|
|
role |
varchar |
100 |
角色 |
|
管理员 |
|
addtime |
timestamp |
|
添加时间 |
|
CURRENT_TIMESTAMP |
表4-10:token
|
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
|
id |
bigint |
|
主键 |
主键 |
|
|
userid |
bigint |
|
用户id |
|
|
|
username |
varchar |
100 |
用户名 |
|
|
|
tablename |
varchar |
100 |
表名 |
|
|
|
role |
varchar |
100 |
角色 |
|
|
|
token |
varchar |
200 |
密码 |
|
|
|
addtime |
timestamp |
|
添加时间 |
|
CURRENT_TIMESTAMP |
|
expiratedtime |
timestamp |
|
过期时间 |
|
CURRENT_TIMESTAMP |
5 系统实现
5.1 后台管理员功能模块
管理员登录,通过登录页面输入用户名、密码、角色,进行登录操作,如图5-1所示。

图5-1管理员登录界面图
管理员登录进入数字科技风险报告管理系统可以查看系统首页、用户管理、负责人管理、报告类型管理、报告信息管理、资料类型管理、共享资料管理、系统管理、我的信息等信息,进行相应操作,如图5-2所示。

图5-2管理员功能界面图
用户信息功能在视图层(view层)进行交互,比如点击“添加”按钮或填写用户信息表单。这些用户信息动作被视图层捕获并作为请求发送给相应的控制器层(control1er层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查询、添加、更新或删除用户信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便用户信息功能可以看到最新的信息或相应的操作反馈。在用户信息页面的输入栏中输入用户账号、用户姓名进行查询,可以查看到用户详细信息,并根据需要进行修改或者删除等操作;如图5-3所示。

图5-3用户管理界面图
负责人信息功能在视图层(view层)进行交互,比如点击“添加”按钮或填写负责人信息表单。这些负责人信息动作被视图层捕获并作为请求发送给相应的控制器层(control1er层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查询、添加、更新或删除负责人信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便负责人信息功能可以看到最新的信息或相应的操作反馈。在负责人信息页面的输入栏中输入负责人账号、负责人姓名进行查询,可以查看到负责人详细信息,并根据需要进行修改或者删除等操作;如图5-4所示。

图5-4负责人界面图
管理员点击报告类型管理,在报告类型管理页面的对报告类型等内容,进行查询、添加或者删除报告类型等操作,如图5-5所示。

图5-5报告类型管理界面图
管理员点击报告信息管理,在报告信息管理页面的对报告编号、报告名称、封面、报告类型、文件附件、发布时间、用户账号、用户姓名、负责人账号、负责人姓名、审核回复、审核状态等内容,进行查询或者删除报告信息等操作,如图5-6所示。

图5-6报告信息管理界面图
管理员点击资料类型管理,在资料类型管理页面的对资料类型等内容,进行查询、添加或者删除资料类型等操作,如图5-7所示。

图5-7资料类型管理界面图
管理员点击共享资料管理,在共享资料管理页面的对资料编号、资料名称、资料类型、资料封面、资料文件、上传时间、负责人账号、负责人姓名等内容,进行查询或者删除共享资料等操作,如图5-8所示。

图5-8共享资料管理界面图
5.2 后台用户功能模块
在系统上用户点击登录按钮,在登录界面填写信息完成后,点击登录操作,如图5-9所示:

图4-9用户登录界面
用户点击后台管理,然后页面跳转到系统后可以对系统首页、报告信息管理、共享资料管理、我的信息等功能进行操作。如图5-10所示:

图5-10用户功能主界面
5.3 后台负责人功能模块
在系统上负责人点击登录按钮,在登录界面填写信息完成后,点击登录操作,如图5-11所示:

图4-11负责人登录界面
负责人点击后台管理,然后页面跳转到系统后可以对系统首页、报告信息管理、共享资料管理、我的信息等功能进行操作。如图5-12所示:

图5-12负责人功能主界面
6 系统测试
从多个角度进行测试找到系统中存在的问题是本系统首要的测试目的,通过功能测试寻找出系统缺陷并改正,确保系统没有缺陷。在测试过程中证明系统满足客户需求,发现问题和不足及时改正。测试完成之后得出测试结论[14]。
6.1 系统测试目的
在数字科技风险报告管理系统的开发周期中,系统测试是必不可少且考验耐心的过程。其重要性在于,它是保证系统质量和牢靠性的最后一道关,也是整个系统开发过程的最后一次检查。
系统测试主要是为了避免用户在使用时发生问题,增强用户体验感,为了不影响用户的使用,我们需要从多角度、多思路去考虑系统可能遇到的问题,通过不同的模拟场景来发现缺陷并解决问题。在测试的过程中也可以了解到该系统的质量情况,系统功能是否健全,系统逻辑是否顺畅。一个合格的系统测试过程完成后将大大提升系统质量和使用感。测试的目标是验证系统是否符合需求规格说明书的定义,并找出与需求规格说明书不符合或与之冲突的内容。测试过程中一定站在用户的角度考虑问题,避免一些不切实际的场景,浪费测试时间,从而可能会引起问题导致预期结果与实际结果不符[15]。
6.2 系统功能测试
对系统功能模块进行测试,通过点击、输入边界值和必填项非必填项的验证等方法进行一系列的黑盒测试。通过编写测试用例,根据测试用例中的内容进行测试,最后得出测试结论。
登录功能测试方案:当需要登入该系统时,通过账户密码等功能点进行验证,用户在输入时需要输入与数据库内存储的数据匹配的内容,当其中某项输入错误时系统将提示输入错误。此界面对角色权限也有相应的校验,当用户角色的帐号选择管理员角色登录时,也会报错[16]。登录功能测试用例如表6-1所示。
表6-1 登录管理测试用例
|
编号 |
输入数据 |
预期结果 |
实际结果 |
结果分析 |
|
01 |
用户名:guanliyuan 密码:123456 验证码:正确输入 |
登入系统 |
成功登入系统 |
和估算结果一样 |
|
02 |
用户名:guanliyuan 密码:111222 验证码:正确输入 |
密码错误 |
密码错误,请重新输入密码 |
和估算结果一样 |
|
03 |
用户名:guanliyuan 密码:123456 验证码:空 |
验证码信息错误 |
验证码信息错误 |
和估算结果一样 |
|
04 |
用户名:空 密码:123456 验证码:正确输入 |
用户名必须填写 |
请输入用户名 |
和估算结果一样 |
|
05 |
用户名:guanliyuan 密码:空 验证码:正确输入 |
密码错误 |
密码错误,请重新输入密码 |
和估算结果一样
|
用户管理功能测试方案:用户管理主要有添加、编辑、删除、查找用户功能。添加用户时,必填项不填,检验系统是否有非空检验;添加已有的用户信息,检验是否提示用户名已被使用;删除用户信息,系统将检验是否进行此操作;更改用户信息,更改用户信息后页面是否可以展示出来。用户管理测试用例如表6-2所示。
表6-2 用户管理测试用例
|
编号 |
输入数据 |
预期结果 |
实际结果 |
结果分析 |
|
01 |
填入用户基本信息 |
添加成功,在用户列表中显示 |
该用户出现在在列表中 |
和估算结果一样 |
|
02 |
修改用户信息 |
编辑成功,修改信息成功被修改 |
用户信息被修改 |
和估算结果一样 |
|
03 |
选中删除用户 |
系统询问是否删除用户,确认后用户被删除 |
系统询问是否删除用户,确认后查找不到用户信息 |
和估算结果一样 |
|
04 |
添加用户时不填用户名 |
提示用户名不能为空 |
提示用户名不能为空 |
和估算结果一样 |
|
05 |
填入已有用户名 |
添加失败,提示用户名重复 |
添加失败,提示用户名重复 |
和估算结果一样 |
6.3 系统测试结论
本系统主要使用黑盒测试,通过模拟用户使用系统实现各个功能编写测试用例,并进行测试。以确保系统流程的正确性。系统测试必不可少,可以使系统更加完善,该系统的可使用性也会更高。
测试该系统主要为了验证系统的功能模块是否满足我们最初的设计理念,验证各个功能模块逻辑是否正确,此系统不需要过于复杂的逻辑处理,以便于使用者操作。测试的最终目的也是围绕着用户使用展开。测试过程中所有场景都应符合用户需求,不可偏离需求目标,遇到问题时要站在用户的角度进行思考。经过一系列的测试过程后得到最终的测试结果,从测试结果可以看出,实现的系统在功能和性能方面满足设计要求。
结 论
现在,已经完成了该数字科技风险报告管理系统程序开发和论文的编写,通过这次的程序开发和论文的写作,可以检测我们大学期间的所学,是不是做到了认真学习。
该系统主要实现了负责人、用户和管理员三个功能模块,主要实现了系统首页、用户管理、负责人管理、报告类型管理、报告信息管理、资料类型管理、共享资料管理、系统管理、我的信息等功能。软件开发的过程,是一个很辛苦的过程,如果在大学期间没有好好学习,困难更是重重,即使对大学期间认真学习了的同学,也是有一定的困难,毕竟理论知识和实践还是有很大差距的。所以,在本次开发数字科技风险报告管理系统的时候,也是遇到了相当多的困难,有时候一点头绪也没有,思想都是混乱的,首先就要克服这些问题,在经过了上网查询、同学沟通以及听取指导老师的建议后,慢慢的理顺了思路。
针对数字科技风险报告管理系统的发展趋势分析,也对其未来提出了一些建议,并且规范操作流程,使管理信息系统的安全得到更好的保障,再者就是及时的信息反馈,针对现状进行分析与完善,让信息管理系统有更好的发展。
参考文献
[1] 王兆媛. 基于springboot框架的考勤管理系统的设计与实现[D]. 吉林大学2019.
[2] 刘红梅. 基于 UML 的宿舍管理建模[J]. 计算机与现代化,2019.
[3] 肖旻, 陈行. 基于java技术编程特点及应用之探讨[J]. 电脑知识与技术, 2019(34):8177-8178.
[4] 郑岚. java访问MySQL数据库[J]. 电脑编程技巧与维护, 2020(6):59-61.
[5] 刘班.基于springboot快速开发Web应用[J].电脑知识与技术,2020,5(07):1616-1618.
[6] 周文豪.数字教学以及RFID在世界企业中的应用状况[J].中国电子商情(RFID技术与应用),2019(03):65-70.
[7] MARTELLI A, RAVENSCROFT A, ASCHER D. java cookbook[M]. CA:O’Reilly Media. Inc, 2019.
[8] 徐鑫. 中小型图书馆网站设计与实现[D].郑州大学,2021.
[9] 马卫.基springboot的线上教育平台的设计与实现[J].电脑知识与技术,2020, 08(18):4310-4311.
[10] 曹玉良. 软件开发项目中的需求分析探讨[J]. 科技展望, 2019, 27(3).
[11] 周仁平. 教育技术学术博客研究[J]. 软件导刊(教育技术), 2019(6):88-90.
[12] Li Z. Design and Implementation of the Software Testing Management System Based on springboot[J]. Applied Mechanics & Materials, 2020, 525:707-710.
[13] MOORE D, WILLIAM B R. Professional java frameworks:Web 2.0 programming with springboot and Turbogears[M].USA:Wiley Publishing, Inc. 2019
[14] 于园园. 软件测试技术与测试管理研究[J]. 江苏科技信息, 2020(7):66-68.
[15] 朱晓敏. 软件测试的相关技术应用研究[J].电子测试,2019(1):122-123.
致 谢
时光荏苒,岁月如梭,相逢一见太匆匆,校内繁花几度红。六月盛夏,随着这篇致谢词的开始,也就意味着我大学四年时光也即将落下帷幕,始于XXXX年初秋,终于XXXX年盛夏,xx岁的我也将开启全新的人生篇章。以前总觉得时间尚早,年龄尚轻,殊不知,人生是一道减法,逝去的便不会再回来。行文至此,也感谢一路以来支持我,陪伴我的老师、家人还有朋友。
“桃李不言,下自成蹊”。首先感谢我的论文指导老师xxx,感谢您的悉心指导和耐心帮助,才得以让我的毕业论文顺利完成。感谢大学四年以来所有的授课老师,谆谆教导、细心耐心,授予我丰富的专业知识,让我在此后的工作方向上有了更加明确的认识以及理论基础。
“慈母爱子,非为报也”。感谢我的母亲,这多年以来的养育之恩,给我提供了优渥的环境让我的学习生活没有后顾之忧。感谢妈妈多年以来的言传身教,教会了我如何做人如何做事,也让我在爱里快乐的长大。在这成长的路上,一直陪伴我、尊重我,支持我做的每一个决定,让我有更多的底气和勇气去面对这一路以来遇到的所有问题。在此也将我美好的祝愿送给我最爱的母亲,平安喜乐,健康长寿,更希望自己可以不断努力奋进,不负所望,成为你的骄傲。
“过眼年华,动人幽意,相逢几番春换”。感谢我的好朋友xxx陪伴了我的整个青春时光,相识xx年,我们早已从朋友变成了家人般的存在,成为彼此重要的依托,在成长的这一路上相互扶持、相互陪伴,互相倾诉心中苦恼。平生感知己,方寸岂悠悠,愿未来的人生旅途中,我们可以继续相互扶持,依旧保持热爱,奔赴热爱。
“山水一程,三生有幸”。感谢大学里在负责人会遇见的每一个同学,共同在计算机学院里参与很多活动,一起学习成长。也感谢大学里遇到的同学们,以及我的室友,四年来共同成长,也在此祝愿大家,前途似锦,我们都将拥有光明的未来。
“以梦为马,不负韶华”。最后,感谢自己这一路以来的坚持和努力,还有不曾放弃的每个小节点,我始终相信学无止境,希望自己不忘初心,努力朝着自己的目标不断努力。凡是过往,皆为序章,凡事未来,皆有可期。
核心代码展示
/**
* 登录相关
*/
@RequestMapping("users")
@RestController
public class UserController{
@Autowired
private UserService userService;
@Autowired
private TokenService tokenService;
/**
* 登录
*/
@IgnoreAuth
@PostMapping(value = "/login")
public R login(String username, String password, String captcha, HttpServletRequest request) {
UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
if(user==null || !user.getPassword().equals(password)) {
return R.error("账号或密码不正确");
}
String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
return R.ok().put("token", token);
}
/**
* 注册
*/
@IgnoreAuth
@PostMapping(value = "/register")
public R register(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
return R.error("用户已存在");
}
userService.insert(user);
return R.ok();
}
/**
* 退出
*/
@GetMapping(value = "logout")
public R logout(HttpServletRequest request) {
request.getSession().invalidate();
return R.ok("退出成功");
}
/**
* 密码重置
*/
@IgnoreAuth
@RequestMapping(value = "/resetPass")
public R resetPass(String username, HttpServletRequest request){
UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
if(user==null) {
return R.error("账号不存在");
}
user.setPassword("123456");
userService.update(user,null);
return R.ok("密码已重置为:123456");
}
/**
* 列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,UserEntity user){
EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/list")
public R list( UserEntity user){
EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
ew.allEq(MPUtil.allEQMapPre( user, "user"));
return R.ok().put("data", userService.selectListView(ew));
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") String id){
UserEntity user = userService.selectById(id);
return R.ok().put("data", user);
}
/**
* 获取用户的session用户信息
*/
@RequestMapping("/session")
public R getCurrUser(HttpServletRequest request){
Long id = (Long)request.getSession().getAttribute("userId");
UserEntity user = userService.selectById(id);
return R.ok().put("data", user);
}
/**
* 保存
*/
@PostMapping("/save")
public R save(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
return R.error("用户已存在");
}
userService.insert(user);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
userService.updateById(user);//全部更新
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
userService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
}
项目推荐
【计算机毕业设计】各项技术选题汇总
【计算机毕业设计】基于Springboot的网上购物商城销售系统
【计算机毕业设计】开题报告模板2
【计算机毕业设计】任务书案例2
【网站项目】基于springboot的在线考试系统
【网站项目】基于springboot的4S店车辆管理系统
【软件设计】基于python的高校资产管理系统
【网站项目】python009基于推荐算法的电影推荐系统
【网站项目】基于Springcloud的分布式架构网上商城
⬇️文章末尾可以获取联系方式,需要源码,高清图片,演示视频可以联系(不开源)⬇️
⚡感兴趣大家可以点点关注收藏,后续更新更多项目资料。⚡
网硕互联帮助中心





评论前必须登录!
注册