springboot开放实验室管理系统【纯干货分享,免费领源码03361】

news2024/11/18 12:24:29

摘 要

随着社会的发展,社会的方方面面都在利用信息化时代的优势。互联网的优势和普及使得各种系统的开发成为必需。

本文以实际运用为开发背景,运用软件工程原理和开发方法,它主要是使用动态网页开发技术java作为系统的开发语言,MySQL作为后台数据库。整个开发过程首先开放实验室管理系统进行需求分析,得出开放实验室管理系统主要功能。接着对开放实验室管理系统进行总体设计和详细设计。总体设计主要包括系统功能设计、系统总体结构设计、系统数据结构设计和系统安全设计等;详细设计主要包括开放实验室管理系统数据库访问的实现,主要功能模块的具体实现,模块实现关键代码等。最后对开放实验室管理系统进行了功能测试,并对测试结果进行了分析总结,得出开放实验室管理系统存在的不足及需要改进的地方,为以后的开放实验室管理系统维护提供了方便,同时也为今后开发类似开放实验室管理系统提供了借鉴和帮助。

开放实验室管理系统开发使系统能够更加方便快捷,同时也促使开放实验室管理系统变的更加系统化、有序化。系统界面较友好,易于操作。

关键词:开放实验室管理系统; Mysql数据库;springboot;java

springbootOpen Laboratory Management System

Abstract

With the development of society, all aspects of society are utilizing the advantages of the information age. The advantages and popularity of the Internet make the development of various systems necessary.

This article is based on practical application as the development background, using software engineering principles and development methods. It mainly uses dynamic web page development technology Java as the system development language, and MySQL as the backend database. The entire development process starts with a requirement analysis of the open laboratory management system, and identifies the main functions of the open laboratory management system. Next, the overall and detailed design of the open laboratory management system will be carried out. The overall design mainly includes system functional design, system overall structure design, system data structure design, and system security design; The detailed design mainly includes the implementation of database access for the open laboratory management system, the specific implementation of the main functional modules, and the key code for module implementation. Finally, a functional test was conducted on the open laboratory management system, and the test results were analyzed and summarized. The shortcomings and areas for improvement of the open laboratory management system were identified, which provided convenience for future maintenance of the open laboratory management system and also provided reference and assistance for the development of similar open laboratory management systems in the future.

The development of an open laboratory management system makes it more convenient and efficient, while also promoting a more systematic and orderly management system for open laboratories. The system interface is relatively friendly and easy to operate.

Keywords: Open laboratory management system; MySQL database; springboot; java

目  录

1 系统概述

1.1 概述

1.2课题意义

1.3 主要内容

2 系统开发环境

2.1 开发工具的选用及语言介绍

2.2 JAVA简介

2.3 springboot框架介绍:

2.4系统对MySQL数据库的两种连接方式

2.5 MySql数据库

3 需求分析

3.1 系统设计目标

3.2需求分析概述

3.3 系统可行性分析

3.4经济可行性

3.5操作可行性: 

3.6系统流程和逻辑

4系统概要设计

4.1 概述

4.2 系统结构

4.3 数据库设计

4.3.1 数据库实体

4.3.2 数据库设计表

5系统详细设计

5.1管理员功能模块

5.2系统用户功能模块

6.1 测试理论

6.2 测试方法及用例

6.3测试结果

结论

致 谢

参考文献

1 系统概述

1.1 概述

随着信息时代的快速发展,互联网的优势和普及,人们生活水平的不断提高,工作时间的繁忙,使得开放实验室管理系统的开发成为必需。开放实验室管理系统主要是借助计算机,通过对开放实验室管理系统所需的信息管理,增加用户的选择,同时也方便广大用户信息的及时查询、修改以及对开放实验室管理系统信息的及时了解。开放实验室管理系统用户带来了更多的选择, 该系统通过和数据库软件协作来满足用户的需求。

1.2课题意义

我国已经成为世界第二大经济体,经济实力高速发展以及百姓生活水平的普遍提高,不断地要求企业提供更加多元化的娱乐方式,更加快速和方便的服务,因此对实验预约也提出了更加严格的要求,如管理更加妥当、服务更加舒适等。而现在我们所能看到的数量也越来越多,信息量巨大,设计比赛快速发展使得管理成本不断扩大。然而,传统的交流方式有许多缺点:实际时间差异、超负荷、信息0共享。而开放实验室管理系统正是当下各大教育交流网站为了适应时代发展所推出的互联网服务,以其方便高效的服务。

1.3 主要内容

开放实验室管理系统从功能、数据流程、可行性、运行环境进行需求分析。对开放实验室管理系统的数据库、功能进行了详细设计,分析了主要界面设计和相关组件设计,开放实验室管理系统的具体实现进行了介绍。从数据库中获取数据、向数据库中写入数据,实现系统直接对数据库进行各种数据库查询、插入、删除、更新等操作,在网页中加入动态内容,从而实现开放实验室管理系统所需要的各种基本功能。

2 系统开发环境

2.1 开发工具的选用及语言介绍

本次毕业设计是一个基于B/S模式的开放实验室管理系统,是一个在网络环境下运行的网站,采用Java语言,应用的技术有java servlet API,JSP(java server pages),和XML技术,以ECLIPSE 为开发工具、Tomcat作为服务器,MySQL作为后台数据库。

2.2 JAVA简介

Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterprise JavaBeans)的全面支持,java servlet API,springboot(java server pages),和XML技术。Java是一种计算机编程语言,具有封装、继承和多态性三个主要特性,广泛应用于企业Web应用程序开发和移动应用程序开发。Java语言和一般编译器以及直译的区别在于,Java首先将源代码转换为字节码,然后将其转换为JVM的可执行文件,JVM可以在各种不同的JVM上运行。因此,实现了它的跨平台特性。虽然这使得Java在早期非常缓慢,但是随着Java的开发,它已经得到了改进。

2.3 springboot框架介绍:

Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。Spring框架具有面向切面编程(AOP)框架,SpringAOP框架基于代理模式,同时运行时可配置;AOP框架主要针对模块之间的交叉关注点进行模块化。Spring框架的AOP框架仅提供基本的AOP特性,虽无法与AspectJ框架相比,但通过与AspectJ的集成,也可以满足基本需求。Spring框架下的事务管理、远程访问等功能均可以通过使用SpringAOP技术实现。Spring的事务管理框架为Java平台带来了一种抽象机制,使本地和全局事务以及嵌套事务能够与保存点一起工作,并且几乎可以在Java平台的任何环境中工作。Spring集成多种事务模板,系统可以通过事务模板、XML或Java注解进行事务配置,并且事务框架集成了消息传递和缓存等功能。Spring的数据访问框架解决了开发人员在应用程序中使用数据库时遇到的常见困难。它不仅对Java:JDBC、iBATS/MyBATIs、Hibernate、Java数据对象(JDO)、ApacheOJB和ApacheCayne等所有流行的数据访问框架中提供支持,同时还可以与Spring的事务管理一起使用,为数据访问提供了灵活的抽象。Spring框架最初是没有打算构建一个自己的WebMVC框架,其开发人员在开发过程中认为现有的StrutsWeb框架的呈现层和请求处理层之间以及请求处理层和模型之间的分离不够,于是创建了SpringMVC。

2.4系统对MySQL数据库的两种连接方式

活动的MySQL/ MySQL库,或使用ODBC接口,MySQL数据库是一个双向链接。永久及非永久连接。

(1)永久连接:一个更永久的连接请求的最大优点是可以非常有效的客户站在密切的联系,当连接到MySQL服务器,就更好了。在起草该页面每一个孩子在这个过程中,而不是仅仅在任何时候,只有在到MySQL服务器请求连接的生命周期,一旦连接。此子过程是建立到服务器的单独连接可以是永久性的。

(2)非永久连接:他是短路。提交顺路到Web服务器,服务器处理请求并请求的页面,你要发送的浏览器客户端,然后连接断开。对于大多数网站,它经常通过有效高效率有关,但在大多数情况下,所使用的连接,但它是一个完整的时间,以避免出现任何问题,并可以增加的容量服务器承载。

2.5 MySql数据库

Mysql的语言是非结构化的,商品可以在数据上进行工作。因为Mysql的语言和结构比较简单,但是功能和存储信息量很强大,其速度、可靠性和适应性而备受关注并得到了普遍的应用。Mysql数据库在编程过程中的作用是很广泛的,为商品进行数据查询带来了方便。Mysql数据库的应用特点:灵活性强,功能强大,语言相对要简洁很多。 

数据流程分析主要就是数据存储的储藏室,它是在计算机上进行的,而不是现实中的储藏室。数据库管理主要是数据存储、修改和增加以及数据表的建立。数据表的建立,可以对数据表中的数据进行调整,数据的重新组合及重新构造,保证数据的安全性。介于数据库的功能强大等特点,本系统的开发主要应用了Mysql进行对数据的管理。

3 需求分析

3.1 系统设计目标

开放实验室管理系统主要是为了提高工作人员的工作效率和更方便快捷的满足用户,更好存储所有数据信息及快速方便的检索功能,对系统的各个模块是通过许多今天的发达系统做出合理的分析来确定考虑用户的可操作性,遵循开发的系统优化的原则,经过全面的调查和研究。

系统所要实现的功能分析,对于现在网络方便的管理,系统要实现用户可以直接在平台上进行查看所有数据信息,根据需求可以进行在线添加,删除或修改开放实验室管理系统信息,这样既能节省时间,不用再像传统的方式耽误时间,真的很难去满足用户的各种需求。所以开放实验室管理系统的开发不仅仅是能满足用户的需求,还能提高管理员的工作效率,减少原有不必要的工作量。

3.2需求分析概述

开放实验室管理系统主要是为了提高用户的工作效率和更方便快捷的满足用户,更好存储所有数据信息及快速方便的检索功能,对开放实验室管理系统的各个模块是通过许多今天的发达开放实验室管理系统做出合理的分析来确定考虑用户的可操作性,遵循开发的系统优化的原则,经过全面的调查和研究。

开放实验室管理系统所要实现的功能分析,对于现在网络方便,开放实验室管理系统要实现管理员、实验室人员可以直接在平台上进行查看自己所需数据信息,这样既能节省管理的时间,不用像传统的方式,如果用户想要进行交流信息,必须双方见面进行沟通交流所需的信息,由于很多用户时间的原因,没有办法进行见面沟通交流,真的很难满足用户的各种需求。所以开放实验室管理系统的开发不仅仅是能满足用户的需求,还能提高用户的使用率。所以开放实验室管理系统必须要更快捷、有效、长期地为用户或潜在用户传递信息。建立一个开放实验室管理系统更好的交流平台,提高系统对用户交流后的信息服务的效率。此系统可以满足大多数用户所提出的问题,用户可以根据自身的需求获取相应的服务,为开放实验室管理系统提供了快捷的途径。

开放实验室管理系统在系统的平台上可以运行,主要实现了管理员后端;首页、系统用户(管理员、学生用户)模块管理(实验室信息、实验室预约、耗材信息、耗材申请、课题信息、学生选题、通知公告);学生用户功能;首页、实验室信息、耗材信息、耗材申请、课题信息、学生选题、通知公告管理模块的操作和管理

总体分布如图3.1所示:

 

 

3.1  总体功能需求图

系统实现给用户展示的界面与该对象是面对面的,包括是否允许用户简单,方便使用,该请求的响应时间,对整体质量的主图像,整体的布局的质量。

3.3 系统可行性分析 

技术可行性:

1)硬件可行性分析

系统的硬件要求方面不存在特殊的要求,只需要在普通的硬件配置就能够轻松的实现,只是需要确保系统的正常工作即可,以及拥有较高的效率。如果有特别低的硬件,它可以导致系统的低性能以及效率低,从而导致整个网站的运行不顺畅。以目前普遍的个人计算机的配置而言,这是十分容易实现的 。因此,本系统的开发在硬件方面是可行的。

提供完整的技术支持和保护,确保网站的稳定,安全运行,提供24×7和24小时技术支持项目完成提供主要的服务器系统安全及时的通知和更新服务。

(2)软件可行性分析

提供一个共同的机制类似的借口动态模型,设计更集中。此外,代码复用,也可以很好的体现。因此,考虑到系统的实际情况,选择小程序作为本系统开发技术。通过上述分析,该系统的设计实现在软件方面是可行的。

因此,我们进行了两个方面的可行性研究,可以看出,该系统的开发是没有问题的。

3.4经济可行性

系统是基java语言开发的软件,所以系统在开发人力、财力要求不高,具有经济可行性。

3.5操作可行性: 

可操作性主要是对开放实验室管理系统设计完成后,用户的使用体验度,以及管理员可以通过系统随时管理相关的数据信息,并且对于管理员、用户两个用户角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息的操作需求和管理员管理数据信息,对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以在系统的可操作性是完全可以的。本系统的操作使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。

3.6系统流程和逻辑

系统业务流程图如图所示:

 

图3-1登录流程图

 

图3-2添加信息流程图

 

图3-3注册信息流程图

4系统概要设计

4.1 概述

本系统基于Web服务模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示:

 

图4-1  系统工作原理图

4.2 系统结构

本系统架构网站,本系统的具体功能如下:

 

图4-2系统功能结构图

系统结构图,如图4-3所示:

 

图4-3系统结构

4.3 数据库设计

4.3.1 数据库实体

对于一个要开发的系统来说,E-R图可以让别人能更快更轻松的了解此系统的事务及它们之间的关系。根据系统分析阶段所得出的结论确定了在实验室管理信息平台中存在着多个实体分别是用普通用户、管理员、实验室、预约。

 

图4-5系统总体ER属性

4.3.2 数据库设计表

此系统需要后台数据库,下面介绍数据库中的各个表的详细信息。

表access_token (登陆访问时长)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

token_id

int

10

0

N

Y

临时访问牌ID

2

token

varchar

64

0

Y

N

临时访问牌

3

info

text

65535

0

Y

N

4

maxage

int

10

0

N

N

2

最大寿命:默认2小时

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

7

user_id

int

10

0

N

N

0

用户编号:

表auth (用户权限管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

auth_id

int

10

0

N

Y

授权ID:

2

user_group

varchar

64

0

Y

N

用户组:

3

mod_name

varchar

64

0

Y

N

模块名:

4

table_name

varchar

64

0

Y

N

表名:

5

page_title

varchar

255

0

Y

N

页面标题:

6

path

varchar

255

0

Y

N

路由路径:

7

position

varchar

32

0

Y

N

位置:

8

mode

varchar

32

0

N

N

_blank

跳转方式:

9

add

tinyint

3

0

N

N

1

是否可增加:

10

del

tinyint

3

0

N

N

1

是否可删除:

11

set

tinyint

3

0

N

N

1

是否可修改:

12

get

tinyint

3

0

N

N

1

是否可查看:

13

field_add

text

65535

0

Y

N

添加字段:

14

field_set

text

65535

0

Y

N

修改字段:

15

field_get

text

65535

0

Y

N

查询字段:

16

table_nav_name

varchar

500

0

Y

N

跨表导航名称:

17

table_nav

varchar

500

0

Y

N

跨表导航:

18

option

text

65535

0

Y

N

配置:

19

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表consumable_application (耗材申请)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

consumable_application_id

int

10

0

N

Y

耗材申请ID

2

application_number

varchar

64

0

Y

N

申请单号

3

equipment_number

varchar

64

0

Y

N

设备编号

4

device_name

varchar

64

0

Y

N

设备名称

5

equipment_type

varchar

64

0

Y

N

设备类型

6

appointment_quantity

varchar

64

0

Y

N

预约数量

7

user

int

10

0

Y

N

0

用户

8

full_name

varchar

64

0

Y

N

姓名

9

time_of_appointment

datetime

19

0

Y

N

预约时间

10

reason_for_application

text

65535

0

Y

N

申请原因

11

examine_state

varchar

16

0

N

N

未审核

审核状态

12

examine_reply

varchar

16

0

Y

N

审核回复

13

recommend

int

10

0

N

N

0

智能推荐

14

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

15

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表hits (用户点击)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

hits_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

表laboratory_appointment (实验室预约)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

laboratory_appointment_id

int

10

0

N

Y

实验室预约ID

2

appointment_number

varchar

64

0

Y

N

预约单号

3

laboratory_number

varchar

64

0

Y

N

实验室编号

4

laboratory_name

varchar

64

0

Y

N

实验室名称

5

user

int

10

0

Y

N

0

用户

6

full_name

varchar

64

0

Y

N

姓名

7

time_of_appointment

datetime

19

0

Y

N

预约时间

8

appointment_purpose

text

65535

0

Y

N

预约用途

9

examine_state

varchar

16

0

N

N

未审核

审核状态

10

examine_reply

varchar

16

0

Y

N

审核回复

11

recommend

int

10

0

N

N

0

智能推荐

12

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

13

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表laboratory_information (实验室信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

laboratory_information_id

int

10

0

N

Y

实验室信息ID

2

laboratory_number

varchar

64

0

Y

N

实验室编号

3

laboratory_name

varchar

64

0

Y

N

实验室名称

4

capacity

int

10

0

Y

N

0

可容纳人数

5

laboratory_equipment

text

65535

0

Y

N

实验室设备

6

laboratory_introduction

text

65535

0

Y

N

实验室介绍

7

recommend

int

10

0

N

N

0

智能推荐

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表notice_announcement (通知公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

notice_announcement_id

int

10

0

N

Y

通知公告ID

2

title

varchar

64

0

Y

N

标题

3

publisher

varchar

64

0

Y

N

发布人

4

published_on

date

10

0

Y

N

发布时间

5

relevant_attachments

varchar

255

0

Y

N

相关附件

6

content

text

65535

0

Y

N

内容

7

recommend

int

10

0

N

N

0

智能推荐

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表registered_users (注册用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

registered_users_id

int

10

0

N

Y

注册用户ID

2

full_name

varchar

64

0

Y

N

姓名

3

gender

varchar

64

0

Y

N

性别

4

age

varchar

64

0

Y

N

年龄

5

examine_state

varchar

16

0

N

N

已通过

审核状态

6

recommend

int

10

0

N

N

0

智能推荐

7

user_id

int

10

0

N

N

0

用户ID

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表supplies_information (耗材信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

supplies_information_id

int

10

0

N

Y

耗材信息ID

2

equipment_number

varchar

64

0

Y

N

设备编号

3

device_name

varchar

64

0

Y

N

设备名称

4

equipment_type

varchar

64

0

Y

N

设备类型

5

equipment_condition

varchar

64

0

Y

N

设备状况

6

quantity

int

10

0

Y

N

0

数量

7

equipment_introduction

varchar

64

0

Y

N

设备介绍

8

recommend

int

10

0

N

N

0

智能推荐

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表topic_information (课题信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

topic_information_id

int

10

0

N

Y

课题信息ID

2

topic_name

varchar

64

0

Y

N

课题名称

3

created_by

varchar

64

0

Y

N

创建人员

4

topic_type

varchar

64

0

Y

N

课题类型

5

state

varchar

64

0

Y

N

状态

6

project_introduction

text

65535

0

Y

N

课题简介

7

recommend

int

10

0

N

N

0

智能推荐

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表upload (文件上传)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

upload_id

int

10

0

N

Y

上传ID

2

name

varchar

64

0

Y

N

文件名

3

path

varchar

255

0

Y

N

访问路径

4

file

varchar

255

0

Y

N

文件路径

5

display

varchar

255

0

Y

N

显示顺序

6

father_id

int

10

0

Y

N

0

父级ID

7

dir

varchar

255

0

Y

N

文件夹

8

type

varchar

32

0

Y

N

文件类型

表user (用户账户:用于保存用户登录信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_id

mediumint

8

0

N

Y

用户ID:[0,8388607]用户获取其他与用户相关的数据

2

state

smallint

5

0

N

N

1

账户状态:[0,10](1可用|2异常|3已冻结|4已注销)

3

user_group

varchar

32

0

Y

N

所在用户组:[0,32767]决定用户身份和权限

4

login_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

上次登录时间:

5

phone

varchar

11

0

Y

N

手机号码:[0,11]用户的手机号码,用于找回密码时或登录时

6

phone_state

smallint

5

0

N

N

0

手机认证:[0,1](0未认证|1审核中|2已认证)

7

username

varchar

16

0

N

N

用户名:[0,16]用户登录时所用的账户名称

8

nickname

varchar

16

0

Y

N

昵称:[0,16]

9

password

varchar

64

0

N

N

密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成

10

email

varchar

64

0

Y

N

邮箱:[0,64]用户的邮箱,用于找回密码时或登录时

11

email_state

smallint

5

0

N

N

0

邮箱认证:[0,1](0未认证|1审核中|2已认证)

12

avatar

varchar

255

0

Y

N

头像地址:[0,255]

13

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

表user_group (用户组:用于用户前端身份和鉴权)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

group_id

mediumint

8

0

N

Y

用户组ID:[0,8388607]

2

display

smallint

5

0

N

N

100

显示顺序:[0,1000]

3

name

varchar

16

0

N

N

名称:[0,16]

4

description

varchar

255

0

Y

N

描述:[0,255]描述该用户组的特点或权限范围

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

register

smallint

5

0

Y

N

0

注册位置:

9

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表user_selected_topic (用户选题)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_selected_topic_id

int

10

0

N

Y

用户选题ID

2

topic_name

varchar

64

0

Y

N

课题名称

3

created_by

varchar

64

0

Y

N

创建人员

4

topic_type

varchar

64

0

Y

N

课题类型

5

state

varchar

64

0

Y

N

状态

6

user

int

10

0

Y

N

0

用户

7

full_name

varchar

64

0

Y

N

姓名

8

application_information

text

65535

0

Y

N

申请信息

9

examine_state

varchar

16

0

N

N

未审核

审核状态

10

examine_reply

varchar

16

0

Y

N

审核回复

11

recommend

int

10

0

N

N

0

智能推荐

12

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

13

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

5系统详细设计

本系统使用了javamysql结合的结构开发了开放实验室管理系统应用,系统中所有和数据库有关系的操作都通过一个通用类来实现,大大提高了代码的耦合性,当数据库类型等信息变化后直接修改类文件就可以了,不再需要每个页面都修改。另外本系统解决了中文的问题,也是在配置文件中添加了编码方式的形式解决的,本系统另外一个大的特点是系统对数据库的操作都单独的写在了一个类里,这样对系统的所有数据库操作都只访问这个类就可以了,不要每个页面都去写数据库的操作,提高了系统的集成性。

5.1管理员功能模块

管理员登录,在登录页面填写用户、密码权限以及验证码进行登录如图5-1所示。

 

图5-1管理员登录界面图

管理员登录到开放实验室管理系统可以查看系统首页、系统用户(管理员、学生用户)模块管理(实验室信息、实验室预约、耗材信息、耗材申请、课题信息、学生选题、通知公告)系统管理等内容,如图5-2所示

 

图5-2管理员功能界面图

通知公告通知公告页面可以查看标题、内容、发布人等信息,并可在公告查询页面进行编辑删除详细等操作,如图5-3所示。

 

图5-3通知公告界面图

学生管理,学生管理页面可以查看昵称、用户名、学生学号、学生姓名、性别、年龄、学院名称、专业名称、班级名称信息,并可根据需要对已有的用户进行编辑删除详细等操作,如图5-4所示

 

图5-4用户管理界面图

实验室预约管理,在实验室预约管理页面图可以对预约管理添加信息:实验室编号、实验室名称、用户、学生姓名、班级名称、预约时间等内容,并可在实验室预约管理查询页面对已有的实验室预约管理进行编辑、删除、详细等操作,如图5-5所示:

 

                                 图5-5实验室预约管理界面图

实验室管理,在实验室信息管理查询页面可以查看:实验室编号、实验室名称、可容纳人数、实验室设备、实验室介绍等内容,并可在该页面进行编辑删除详情等操作,如图5-6所示:

 

图5-6 实验室信息管理界面图

5.2系统用户功能模块

系统用户功能用户登录页面可操作首页、实验室信息、实验室预约、耗材信息、耗材申请、课题信息、学生选题、通知公告等信息,如图5-7所示

 

图5-7系统界面图

用户登录页面,在用户登录页面输入:用户名、密码、权限验证码等内容进行登,如图5-8所示

 

图5-8用户登录界面图

实验室信息,实验室信息页面可以查看实验室编号、实验室名称、可容纳人数、实验室设备、实验室介绍等信息并可根据需要进行预约等操作,如图5-9所示。

 

图5-9实验室信息界面图

课题信息课题信息页面可以查看课题名称、创建人员、课题类型、状态、课题简介等信息,如图5-10所示。

 

图5-10课题信息面图


  6 系统测试

6.1 测试理论

软件系统测试的目的是通过测试找出在程序中的存在的错误信息和阻碍程序正常运转的安全隐患。这同时也是每一个系统软件测试的主要的规定,软件系统的应用过程中,发现一个重要的错误也是极具有很大的影响力的,一个好的测试的方案就为发展程序中存在的重大问题的;同样,一个成功的测试方案也就发现了迄今为止尚未发现的一个重要错误的测试。

软件测试的主要的好处就是为了让软件的运行情况更好,让用户的使用的过程中更加的满意。在软件工程中,软件测试是一个十分重要环节,在交付用户使用最终的软件之前,软件测试就是一个检验的过程,主要针对的是软件的软件设计开发、需求分析、系统编码各阶段结果的一个检验过程。

软件测试应遵循的原则如下:

(1) 软件测试要尽快的进行并且整个测试部分要是在整个软件开发的各个过程和细节。在发现了错误的情况下,立刻处理,这样会大大的减少软件的开发成,提高软件的质量。

(2) 在关于软件的各种测试中,例如测试的过程中使用的计划、报告等等要做到妥善的处理和保管,主要目的就是为了方便将来的对系统的维护。

(3) 群集现象是应该得到高度重视的,在软件的整个测试的过程中。就是在整个测试的过程中发现了错误的主要地方很有可能是就很多的错误的聚集的地方,所以要对这样的部分给予特殊的照顾。

(4) 对于软件的测试要尽量不要软件的设计开发人员或是机构,而是要另一方来进行测试程序,这样也是为了保证软件的测试结果的客观性以及公平公正性。

(5) 对于整个测试计划要严格的按照一定的规则来进行软件测试。

(6) 关于软件测试的过程中的用例应该是预期结果以及之前输入的数据信息构成,输入条件中的要考虑的有合理和不合理的因素都要考虑到,这样也是为了更好的帮助开发的人员更多的发现软件中存在的错误。

(7) 对于整个的测试结果进行全面的检查,尽量避免出现重复的错误。

6.2 测试方法及用例

1、功能测试

用户的角度来看,测试时不了解新开发软件的内部结构,因此可以将系统与黑匣子进行比较,盲目输入后可以查看系统给出的反馈。这种测试属于黑盒测试,在测试中如果输入错误信息系统会报错。

2、性能测试

测试软件程序的整体状态(称为性能测试)通常使用自动化测试工具来检测系统的整体功能,在负载和压力测试之间进行划分,在某些情况下,将两者结合起来。虽然压力测试可以检测到系统可以提供的最高级别的服务,但是负载测试可以测试系统如何响应增加的负载。

在对系统进行测试的时候在找到问题的情况下必须在第一时间找到解决问题的办法,不要存在侥幸的心理,这样才能让系统开发的质量可以过关,并且开发的周期会大大缩短,还有就是在测试时,不要出现重复性的错误,遇到一个错误问题,要将整个系统开发所牵扯的该问题都必须一一解决,提高系统的安全性、稳定性。

白盒测试与黑盒测试是测试中比较常用的两种方法。

①结构测试俗称白盒测试:这种测试是在对程序的处理过程与结构都有详尽了解的前提下,顺从程序内部的逻辑而完成的系统测试,以确定系统中所有的通路都能够遵照设计要求正常工作,不出现任何偏差。

②功能测试又成黑盒测试:主要是针对程序功能能够按照设计正常实现的一种检测,在程序接口处进行,检测程序手法数据是否正常,与外部信息的交换是否完整。

测试用例:

表6.1 用户注册测试用例

用例编号

UC-TEST-001

测试名称

用户注册

前提条件

用户注册

步骤

操作描述

数据

期望结果

1

点击用户注册查看详情按钮

跳转到用户注册详情

2

点击添加按钮

跳转到添加页面

3

选中添加后按钮

跳转到用户注册页面

测试说明

用户未登录时到步骤3跳转到登录页面

测试结果

成功

测试人

表6.2 登录测试用例

情况

用户名输入

密码输入

期望结果

(1)

15546219225

1244566

提示“用户名或者密码错误,或账号未经审核

(2)

aaaaa

123456

提示“用户名或密码错误,或者账号未经审核

(3)

111

111

登陆成功

6.3测试结果

测试后得到的性能和用例,系统具有足够的正确性、可靠性、稳定性,并且可以对输入数据进行准确的点击操作处理和响应测试用户的体验也得到了很好的反馈和响应时间。合理的范围,可以兼容所有主流浏览器,设计所需的效果。


结论

开放实验室管理系统的设计,通过互联网来解决实现信息化的网站系统,通过我四年所学的所有专业知识整合一起,进行对开放实验室管理系统进行开发设计,当然在真正着手来做的时候遇到了很多问题,一个是网站的技术问题,一个是自己之前没有单独开发过程序,动手实践比较少,面对问题的同时,自己的自信心也受到了一些打击,不过我也是快速的调整自己的状态,老师与同学讨论的方法解决了所有的困难。

毕业设计是我们所学知识应用的最佳体现,也是在考核我们四年中所学的所有的专业知识及技术应用情况,通过这样毕业设计可以更好的得到锻炼及对所学知识的复习及运用,也是一种训练和实践。开放实验室管理系统的实现,不仅巩固了我以前的知识,还对学到的知识通过结合技术进行详细了解,还结合了对跨学科效果的深入理解。

在以后我的工作中,我仍然继续努力我的计算机方面的技术,让我在后期的平台开发中可以更好更快的实现需求功能。我相信自己可以胜任更多的好工作并在工作领域做出更大的贡献。

回顾毕业设计的整个过程,既付出了努力与汗水也收获了很多难以忘怀的美好经历。虽然在系统开发过程中经历了各种各样的困难,自己也在不断研究探索,可是系统的实现仍有许多不足之处。但是经过系统编程工作让我有了更多的信心,我相信在未来的路上,我会走的更好。

致 谢

毕业设计结束的同时也意味着四年的大学生活就要结束了。开放实验室管理系统的完成以及如何在系统运行过程中实现的更好,这其中付出了很大的努力,这段时光将会终身难忘。

在毕业设计的这一段时间里,离不开导师的细心指导,还有同学热情帮助,有时候几个同学在一起讨论系统中的某个功能模块如何实现,如何实现的更好,或是问题没得到有效的解决,没有心思做其他的事情,让我们对理想充满了动力。

在毕业设计即将结束之时首先要感谢我的指导老师,谢谢您在毕业设计和毕业论文中对我的指导。在您的细心指导下我才能快速的掌握系统的相关功能,在您的大力帮助下我才能将课本上的知识与自己的项目结合,真正的做到学以致用。感谢您经常牺牲自己的休息时间,利用其丰富的教学和项目经验对我进行指导。 课堂上,教会我们如何做人、教会我们新的知识,在课下,您又像朋友一样亲切,教会了我很多道理让我意识到先做人、后做事感谢所有教过我的老师,为我倾注了大量的心血,正是你们的谆谆教诲、严谨教学才使我能顺利的完成学业,再此向你们表示深深的感谢。感谢大学里教过我的每一位老师,真心祝福您们。

毕业在即,在今后的工作和生活中,我会铭记师长们的教诲、同学们的帮助,继续不懈努力和追求,来报答所有支持和帮助过我的人!

最后,耽误了老师的休息时间来对本文进行审阅,评议和参与论文答辩的各位老师表示深深的感谢。在此,衷心的谢谢您们!


参考文献

[1]郭凤香.智能管理系统在高校大数据实验室管理中的应用[J].办公自动化,2022,27(04):59-61+19.

[2]刘学玉.JAVA编程语言在计算机软件开发中的应用[J].电子技术与软件工程,2022(01):57-60.

[3]朱俊杰,李勇,郑志安,宁重阳,何明芳,黄海燕.基于信息深度融合的智慧型开放实验室管理系统[J].实验室研究与探索,2021,40(11):228-232.DOI:10.19927/j.cnki.syyt.2021.11.049.

[4]吴迪.Java编程语言在计算机软件开发中的应用[J].信息与电脑(理论版),2021,33(20):29-31.

[5]张翔.浅谈JAVA编程语言在计算机软件开发中的应用[J].电子元器件与信息技术,2021,5(10):204-205.DOI:10.19772/j.cnki.2096-4455.2021.10.095.

[6]王江霖,黄彩霞,樊旭龙.基于springboot框架的网络资源共享平台的研究与实现[J].电脑知识与技术,2021,17(28):76-78.DOI:10.14004/j.cnki.ckt.2021.2999.

[7]曹瑞燕.Java语言在软件开发中的应用[J].信息记录材料,2021,22(10):96-97.DOI:10.16009/j.cnki.cn13-1295/tq.2021.10.045.

[8]雷义伟,齐圣.基于C#.NET和springboot框架的通信台站动环监控系统实现技术[J].自动化技术与应用,2021,40(08):75-80.

[9]朱奎兵.基于信息化的开放实验室管理系统开发研究[J].数字技术与应用,2021,39(08):99-101.DOI:10.19695/j.cnki.cn12-1369.2021.08.33.

[10]刘苗.高校实验室管理中智能管理系统的实践应用[J].无线互联科技,2021,18(15):39-40.

[11]蔡俊豪,王桂荣.Java在互联网的应用分析[J].电子技术,2021,50(06):44-45.

[12]曹华山.springboot框架在Web应用开发中的设计与实现[J].无线互联科技,2021,18(11):108-109.

[13]王海,韦才寿.基于高校实验室管理的开放实验室系统的设计与规划[J].中国高新科技,2021(09):159-160.

[14]陈钊.springboot框架在Web应用开发中的设计与实现研究[J].电脑知识与技术,2021,17(10):226-227.DOI:10.14004/j.cnki.ckt.2021.1097.

[15]陈志强,李有志,张传津,魏秀丽.开放实验室管理系统中电子原始记录的设计实现[J].中国检验检测,2021,29(02):73-74.DOI:10.16428/j.cnki.cn10-1469/tb.2021.02.023.

[16]Siyi Liu. Explore Java Language and Android Mobile Software Development[J]. International Journal of Frontiers in Engineering Technology,2021,3.0(2.0).

[17]秦蓉.基于Java语言的安卓软件开发研究[J].电子技术与软件工程,2021(05):44-45.

[18]崔家敏.Web下开放性开放实验室管理系统设计与实现[J].电脑知识与技术,2021,17(06):66-67.DOI:10.14004/j.cnki.ckt.2021.0426.

[19]Kevin Kline. The Java Language Extension for SQL Server Is Now Open Source[J]. Database Trends and Applications,2020,34(4).

[20]Hu Xin,Yan Chaobing. Development and application of JAVA language development test evaluation system software[J]. Journal of Computational Methods in Sciences and Engineering,2020,20(4).

                                                 

免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/803017.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何挑选滚珠螺杆的润滑油脂?

滚珠螺杆在日常使用中,出现卡顿或者噪音等问题,不用担心,不是你的滚珠螺杆出了问题,而是润滑系统出了问题,提醒你应该更换润滑油了。那么,我们应该怎样挑选滚珠螺杆的润滑油呢? 一般建议用轴承润…

hive整合es,详细过程。

参考官网 Apache Hive integration | Elasticsearch for Apache Hadoop [7.17] | Elastic 官网的介绍很简单,我看了很多博客,写的也很简单,但是我搞了半天才勉强成功,分享下,免得各位多走弯路。 环境准备 官网也很…

K8S暴露pod内多个端口

K8S暴露pod内多个端口 一、背景 公司统一用的某个底包跑jar服务,只暴露了8080端口 二、需求 由于有些服务在启动jar服务后,会启动多个端口,除了8080端口,还有别的端口需要暴露,我这里就还需要暴露9999端口。 注&a…

mysql常用时间相关函数

在我们平常开发的工作中,我们在数据库中经常会用到时间相关的函数,比如格式化当前时间,求当前时间或者计算某个特定间隔后的时间,那么我们主要会用到哪些函数呢? 1:求当前时间: select now();…

Gradle build 失败后提示.lock文件,解决办法

在Gradle build失败之后时,有时候强制关闭AndroidStudio,再次打开build时,会提示各种.lock 文件问题,删除了一个还有下一个,而且路径不一样。 一般情况下是这两个文件夹下的lockfile影响继续build %GRADLE_HOME%/ca…

YoLoV7做图像分类/目标检测过程(附代码+详细操作说明)

一、准备数据 图像在my_1imgs中,一个是原图jpg,一个是用labelimg画的标签xml文件。(这个画的是一个矩形框) 把自己的数据集(原图和标签准备好后),这两个文件复制到VOCdevkit中,ImageSets为空。 …

EtherNet/IP转CAN网关can协议标准

生产管理设备中,会有设备与其他设备的协议不同,数据无法互通,让你的工作陷入困境。这时,一款神奇的产品出现了——远创智控YC-EIP-CAN通讯网关! 1, 这款通讯网关采用ETHERNET/IP从站功能,可以将各种CAN总线…

vue-simple-uploader的fileAdded方法不支持异步的解决办法,autoStart 设置

每日鸡汤:悲观者可能正确,但是乐观者往往成功 假设有一个需求,上传的pdf文档不得大于10M 使用 vue-simple-uploader 这个插件,我们需要在 fileAdded 事件里面进行校验,在1.0.0版本以后,如果想停止上传&…

如何快速用Python获取短信验证码

在Python中获取短信验证码需要通过调用短信服务接口或者使用短信网关来实现。具体实现方式取决于你使用的短信服务提供商或者短信网关的API。 一般来说,你需要以下步骤来获取短信验证码: 选择短信服务提供商或者短信网关 你需要选择一个合适的短信服务…

vue利用echarts简单实现具有中心节点的知识图谱

效果展示 边缘节点可拖动,其大小可以根据传入的值而变化(比如我更喜欢芒果,所以给了芒果更大的权值,在显示的时候芒果所在的节点显示的比例更大) 代码下载 https://download.csdn.net/download/David_house/881151…

汉明距离,两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目。

题记: 两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目。 给你两个整数 x 和 y,计算并返回它们之间的汉明距离。 示例 1: 输入:x 1, y 4 输出:2 解释: 1 (0 0 0 1) 4 (0 1 0 0…

家用取暖器北美UL 1278测试要求内容

取暖器是指用于取暖的设备,取暖设备根据加热介质不同、加热原不同,大体可以分为:燃气取暖设备、电加热取暖设备、锅炉取暖设备、电壁挂炉取暖。但一般这类产品要上架美国亚马逊平台都必须要办理UL1278测试报告。 适用产品范围: …

苍穹外卖-day02

苍穹外卖-day02 本项目学自黑马程序员的《苍穹外卖》项目,是瑞吉外卖的Plus版本 功能更多,更加丰富。 结合资料,和自己对学习过程中的一些看法和问题解决情况上传课件笔记 视频:https://www.bilibili.com/video/BV1TP411v7v6/?sp…

机器学习|分类入门

顾名思义,分类就是把事物“分类”成子类别的任务。但是,被一台机器!如果这听起来并不多,想象一下你的电脑能够区分你和陌生人。在土豆和西红柿之间。在A和F之间。现在听起来很有趣。分类是监督机器学习的一部分,我们将…

Linux内核中的链表、红黑树和KFIFO

lLinux内核代码中广泛使用了链表、红黑树和KFIFO。 一、 链表 linux内核代码大量使用了链表这种数据结构。链表是在解决数组不能动态扩展这个缺陷而产生的一种数据结构。链表所包含的元素可以动态创建并插入和删除。链表的每个元素都是离散存放的,因此不需要占用连…

红黑树深入剖析【C++】

目录 一、红黑树概念 二、红黑树节点结构设计 三、插入操作 处理情况1 处理情况2 处理情况3 插入总结: 四、插入操作源码 五、红黑树验证 一、红黑树概念 红黑树,是一种二叉搜索树,但在每个结点上增加一个存储位表示结点的颜色&#xff0…

备战秋招 | 笔试强训17

目录 一、选择题 二、编程题 三、选择题题解 四、编程题题解 一、选择题 1、假设A为抽象类,下列声明()是正确的 A. int fun(A); B. A Obj; C. A fun(int); D. A *p; 2、虚函数可不可以重载为内联? A. 可以 B. 不可以 C. 语法…

WEB 文件包含 /伪协议

首先谈谈什么是文件包含 WEB入门——文件包含漏洞与PHP伪协议_文件包含php伪协议_HasntStartIsOver的博客-CSDN博客 文件包含 程序员在编写的时候 可能写了自己的 函数 如果想多次调用 那么就需要 重新写在源代码中 太过于麻烦了只需要写入 funcation.php然后在需要引用的地…

【HarmonyOS】ArkTS 组件内转场动画,动画播放时颜色异常问题

【关键字】 HarmonyOS、ArkTS、组件内转场动画、颜色异常 【问题描述】 根据组件内转场动画文档中示例编写代码,使用动画转场组件button,并给button设置背景色让button透明度为0,实现动画转场时,会先出现默认蓝色button&#xf…