实验室仪器管理系统/基于微信小程序的实验室仪器管理系统

摘  要

    随着当今网络的发展,时代的进步,各行各业也在发生着变化,于是网络已经逐步进入人们的生活,给我们生活或者工作提供了新的方向新的可能  

本毕业设计的内容是设计实现一个实验室仪器管理系统使用微信开发者是以java语言进行开发,MYSQL为数据库开发平台,Tomcat网络信息服务作为应用服务器。实验室仪器管理系统的功能已基本实现,主要包括用户、实验室、实验室预约、器材类型、实验仪器、仪器借用、仪器归还功能微信小程序软件架构选择B/S模式,总体功能模块运用自顶向下的分层思想。再然后就是实现系统并进行代码编写实现功能。论文的最后章节总结一下自己完成本论文和开发本项目的心得和总结基本上实现了整个实验室预约过程。

键词:实验室仪器管理系统微信开发者;java语言Spring Boot框架


Abstract

With the development of today's network and the progress of the times, all walks of life are also changing, so the network has gradually entered people's life, providing new directions and new possibilities for our life or work.

The content of this graduation project is to design and implement a laboratory instrument management system. Wechat developers are developed in Java language, MySQL is the database development platform, and Tomcat network information service is the application server. The functions of laboratory instrument management system have been basically realized, mainly including user, laboratory, laboratory reservation, equipment type, experimental instrument, instrument borrowing, instrument return and other functions. The wechat applet software architecture selects B / S mode, and the overall function module adopts the top-down layered idea. Then it is to realize the system and code to realize the function. The last chapter of the paper summarizes the experience and summary of completing this paper and developing this project, which basically realizes the whole laboratory reservation process.

Key words: laboratory instrument management system; Wechat developer; Java language; Spring boot framework;

 

目 录 I

1 绪 论 1

1.1研究的背景

1.2研究的主要内容 3

1.3 本文主要工作 4

2 开发工具和技术 5

2.1 微信开发者工具 6

2.2 java语言 7

2.3 Spring Boot框架 8

2.4 MySQL环境配置 9

2.5 微信小程序框架 10

2.6 B/S架构 11

3 系统需求分析 12

3.1 系统可行性分析及目的 13

3.1.1经济可行性 14

3.1.2 法律可行性 15

3.1.3 技术可行性 16

3.1.4 操作可行性 17

3.2系统功能需求 18

3.3系统流程分析 19

3.3.1操作流程 20

3.3.2添加信息流程 21

3.3.3删除信息流程 21

4  系统总体设计 22

4.1 系统体系结构 23

4.2 数据库设计 24

4.2.1 数据库概念结构设计 25

4.2.2 数据库逻辑结构设计 26

5 系统详细设计

5.1用户功能模块(微信端)

5.2管理员功能模块服务端)

6 系统测试

总 结

心得体会

参考文献 3

致 谢

1  

1.1研究背景

如今网络的高速发展,为我们的生活增加了各种乐趣。实验室仪器管理系统让我们足不出户,就能查看实验仪器,再如各类新闻视频网站(例如优酷、新浪)让我们能坐在家里用手机就能了解全世界。不禁思考,是不是有网络的地方就能交流呢?  

根据上述讲解于是传统的实验室仪器管理需要对各类信息及时的进行记录、规整、更新,这是对数据信息统计管理的极大消耗,在其进行过程中,还会出现因信息的重复传递,出现本可以避免的出错问题,例如:前后数据不一致、种类纰漏以及备注不详细等等一系列问题。在信息告诉更替的时代,信息的准确性,经济可行性也无疑是众人关注的焦点。那么我们开发微信小程序的目的性也就很明确。采用MySQL相关数据信息管理与数据查询等诸多环节,使得数据信息的透明化,提高了信息管理效率。对于用户而言,也不受时间与环境的限制。这样就慢慢形成了一种全新的实验室仪器管理系统

1.2 研究的主要内容

如今,随着移动客户端的普及,微信因为其简单,方便,并且用户体验度好,所以被称为现在聊天沟通的新宠,同时也被应用到更多的企业做宣传推广。截至2017年底,微信用户数突破10亿,包括银行、证券、快递服务、电子商务等越来越多的公司在微信平台上推出相应的服务平台,以适应用户新的行为习惯。微信平台的科研社交网络平台已是势在必行。计算机技术在现代管理中的应用,能够有效的解决用户管理便捷化的问题,提高效率。用户提供最全面、最专业的数据管理信息,帮助他们了解最新详细信息,还有就是借助微信端,能够更好的满足用户的需求,为用户节省时间以达到省时又高效的目的。

使用实验室仪器管理系统相对传统的实验室仪器管理方式具备很多优点:首先可以大幅提高实验室仪器管理信息检索,只需输入实验室仪器相关信息就能在数秒内反馈想要的结果;其次可存储大量的实验室仪器管理信息,同时实验室仪器管理系统全性有更高的保障;实验室仪器管理系统更节省空间人力资源。这些优点大大提高管理者的工作效率并节省实验室成本。因此,开发实验室仪器管理系统实验室进行有效的管理是很必要的

1.3 本文主要工作

本文主要是对微信小程序项目的设计与实现,整篇文章包括了整个项目的软件开发过程。

首先是前期的准备工作,从选题的背景出发,深刻了解研究内容,并且对实验室有一定的认知;然后针对课题,对相关所需要的技术进行准备,并且对于这个项目所需要的算法进行相关的研究,最后对微信小程序进行需求分析

中期主要是小程序实现的研究,是对小程序详细的设计以及系统的实现。其中包括了对小程序总体架构的研究,小程序各个功能模块的划分。小程序的详细设计是对划分的模块在进行详细的设计,是各个模块得到实现。

后期的小程序测试阶段。后期测试是对小程序的各个模块以及整个系统进行测试,输出测试结果,对这些结果进行分析并提出修正和优化的建议。

最后,总结整个项目得开发经验,并且对未来做出规划与展望。


2 开发工具和技术

2.1微信开发者工具

微信开发者工具现在已经被小程序开发团队开发运行,目前微信开发者工具任然在不断的完善中,在开发小程序时经常要不断的更新。可以使用微信扫码登陆开发者工具,开发者工具将使用这个微信帐号的信息进行小程序的开发和调试。

机型选择:小程序智能手机的屏幕尺寸为设计标准,进行切图。

预览界面:写好视图布局后点击编译,用来刷新视图界面

控制台:方便调试打印输出信息

上传代码:上传到腾讯服务器,提交审核必经步骤。上传代码时可以填写版本号和备注信息

资源文件:一般可以在资源文件进行对应项目的文件目录断点调试

显示远程调试:手机端和PC端开发工具联调用户而言是非常实用

本地数据存储:显示的是本地存储的数据

视图调试:标组件以子父层级结构呈现,方便调试。

微信限制2M 以内代码体积开发中一般不校验合法域名信息;小程序后台要做配置服务器域名

以上就是在开发过程中微信开发者工具常用到的功能,微信开发者工具也在不断的完善

2.2 Java语言

Java语言是一个面向对象的程序开发语言。Java语言在某些方面与C,C++相同的传统,使得熟悉C++,C程序员可以很容易的进行Java编程。另一方面,Java已经抛弃了C++和C许多不合理的内容,实现简单,鲁棒性和安全性。

作为一种程序语言,它简单、面向对象、不依赖于机械的布局、拥有可移植性、鲁棒性、安全性,而且提供了并发的机制,具备很高的机能。此外,通过使用Java充足的类库,程序员可以便捷的创建自身的系统。

2.3 Spring Boot框架

Spring Boot是Pivotal团队的一个新框架,旨在简化新Spring应用程序的初始设置和开发。该框架使用特定的配置方法,无需开发人员定义样板配置。通过这种方式,Spring Boot旨在成为蓬勃发展的快速应用程序开发领域的领导者。
Spring Boot特点:
1、创建一个单独的Spring应用程序;
2、嵌入式Tomcat,无需部署WAR文件;
3、简化Maven配置;
4、自动配置Spring;
5、提供生产就绪功能,如指标,健康检查和外部配置;
6、绝对没有代码生成和XML的配置要求;
  安装步骤:
   最基本的是,Spring Boot是一个可以被任何项目的构建系统使用的库集合。 为简单起见,该框架还提供了一个命令行界面,可用于运行和测试Boot应用程序。 可以从Spring存储库手动下载和安装框架的已发布版本,包括集成的CLI(命令行界面)。 更简单的方法是使用Groovy enVironment Manager(GVM),它负责处理Boot版本的安装和管理。 可以从GVM命令行GVM install springboot安装Boot及其CLI。 在OS X上安装Boot时可以使用Homebrew包管理器。要完成安装,首先使用brew tap pivotal / tap切换到pivotal存储库,然后执行brew install springboot命令。

2.4 MySQL环境配置

本系统的数据使用的是MySQL,所以要将MySQL安装到指定目录,如果下载的是非安装的MySQL压缩包,直接解压到指定目录就可以了。然后点击C:\Program Files\MySQL\bin\winMySQLadmin.exe这个文件其中C:\Program Files\MySQL是MySQL安装目录。输入winMySQLadmin的初始用户、密码(注:这不是MySQL里的用户、密码)随便填不必在意,确定之后右下角任务的启动栏会出现一个红绿灯的图标,红灯亮代表服务停止,绿灯亮代表服务正常,左击这个图标->winnt->install the service 安装此服务,再左击这个图标->winnt->start the service 启动MySQL服务。

修改MySQL数据库的root密码。用cmd进入命令行模式输入如下命令:

cd C:\Program Files\MySQL\bin

MySQLadmin -u root -p password 123

回车出现Enter password: ,这是要输入原密码. 刚安装时密码为空,所以直接回车,此时MySQL 中账号 root 的密码被改为 123 安装完毕。

2.5微信小程序框架

微信小程序的开发框架是微信所独有的一套框架,分为View视图层和App Service逻辑层两部分。框架提供了一种类似于Web中html语言的wxml语言,作为视图层的标签语言,用于构造页面的布局。另外提供了一种类似Web中css语言的WXSS语言,作为视图层的标签样式语言,用于表述页面的显示。而在逻辑层的框架,则同样使用了JS语言。微信小程序为了使开发者专注在代码的逻辑层面和数据处理上,还专门提供了两种解决方案,一种是事件,一种是数据的传输。这两种方案都位于小程序框架的视图层和逻辑层之间。用户在视图层进行交互之后,传递到逻辑层对数据进行处理,并返回数据到视图层向用户反馈。对于微信小程序视图层的开发设计,小程序官方提供了一系列的组件,这些基本组件可以极大的帮助开发者完成视图层的开发。同时,对于逻辑层的开发,小程序官方提供了一系列API来方便开发者请求一些额外功能。

2.6  B/S架构 

B/S的系统是通过能上网的电脑就可以使用,它最大的优点是不需要安装专门的软件,首先浏览器向服务器发出请求,然后服务器处理请求把信息返回给浏览器。不需要再次对数据进行存取与计算数据,只要负责显示数据来降低要求,如果说用户端像个“瘦子”,而服务器会越来越“胖”B/S体系结构与C/S体系结构相比,最大的不同是:B/S体系的应用软件使用网络浏览器作为与用户交互的平台,而C/S则需要开发专用的应用程序。

3 系统需求分析

3.1 系统可行性分析及目的

3.1.1经济可行性

首先就开发技术来说,开发小程序所借助的开发环境都是全部免费的,所以在开发的过程中并不需要额外的成本去使用其他的一些开发技术。其次,此微信小程序需要的手机都是很普遍的,用户、管理员都具有手机,所以不需要额外佩备;网络可以使用当地的无线网络或者手机的数据流量,所以成本较低,是可以接受的。实验室仪器管理系统的开发不仅可以节约实验室所需要的花费,节约资源,还可以更好的管理人员。

3.1.2 法律可行性

微信小程序的设计与开发与国家政策法规之间不存在冲突。此外,平台的设计和开发采用的操作和工作模式符合用户的日常习惯,操作方便、灵活、易于管理,具有较高的实用性。开发过程中所采用的数据均来自开源代码,不存在知识产权的争议,在法律上也是行的通的。

3.1.3 技术可行性

小程序开发选择java语言,它被研究的目的就是在于能够为网页创建等可以看到的信息。随着移动互联网技术的不断发展和创新java语言已成为下一代互联网的Web标准。java在网页制作中各方面的优势都较明显,网页前端开发者更倾向于将它与CSS3整合一起,这种整合将会促进交互性良好的网页产生。java的开发存在很多优势如:绘制图形、多媒体、页面结构优化、处理方式优化以及几个api拖放元素等。CSS是级联样式表,它的作用是控制页面里每一个元素的表现形式,比如字体样式、背景、排列方式、区域尺寸、边框等。所以服务端设计选择使用MYSQL,数据库主要用来的建立和维护信息。对于微信端开发要求应具备功能完善、易于操作等优点,服务端数据库的要求则是能够建立和维护数据信息的统一性和完整性。

3.1.4 操作可行性

现在随着科技的飞速发展,计算机早已经进入了人们的日常生活中,人们的工作环境也不像以前有那么多的要求,这使得人们的工作效益有了很大的提高。操作的多样性也变高了。因此,管理的计算机化,智能化是社会发展而带来的必然趋势,各种智能的软件层出不穷,不同的软件能完成用户不同的需求,提高了工作效率。本系统不仅界面简洁明了还采用可视化界面,用户只要用鼠标和键盘就可以完成对相关信息的修改,删除,添加等操作。因为这个小程序的操作十分简单,方便上手,对于第一次使用小程序的人,只需要很少的时间就可以上手操作。由此可见,本小程序在操作上是可行的。

3.2系统功能需求

功能需求分析的任务是通过详细调查实验室仪器管理系统要处理的所有对象,通过充分了解实验室仪器管理系统的工作流程,明确使用者的各种需求,充分思考之后可能扩充和改变的情况,然后在这个基础上来设计数据库。

3.2.1 用户微信端模块
   用户注册、登录之后,进入微信端,可以查看到首页、实验室、实验仪器、我的等。用户用例图如图3-1所示:

 

 

 

 

 

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【机器学习】主成分分析实现案例 (PCA)

一、说明 这篇文章的目的是提供主成分分析(PCA)的完整和简化的解释。我们将逐步介绍它是如何工作的,这样每个人都可以理解并使用它,即使是那些没有强大数学背景的人。 PCA是网络上广泛覆盖的机器学习方法,并且有一些关…

3.Hive SQL数据定义语言(DDL)

1. 数据定义语言概述 1.1 常见的开发方式 (1) Hive CLI、Beeline CLI Hive自带的命令行客户端 优点:不需要额外安装 缺点:编写SQL环境恶劣,无有效提示,无语法高亮,误操作率高 (2&…

LangChain大型语言模型(LLM)应用开发(一):Models, Prompts and Output Parsers

LangChain是一个基于大语言模型(如ChatGPT)用于构建端到端语言模型应用的 Python 框架。它提供了一套工具、组件和接口,可简化创建由大型语言模型 (LLM) 和聊天模型提供支持的应用程序的过程。LangChain 可以轻松管理与语言模型的交互&#x…

ipad手写笔一定要买苹果的吗?苹果平板平替电容笔排行

苹果原装Pencil,无疑是一个性能很出色的电容笔,但是,由于其的价格也很高,如果丢失了,或者弄坏,那就太可惜了。而且购买如此昂贵的苹果原装电容笔,仅仅只用于书写笔记方面,显得有点浪…

【开发问题】sqlserver怎么开启cdc

怎么开启 执行sql1、创建cdc​2.如上执行完毕之后&#xff0c;会在<database_name>数据库下的“系统表”中创建如下六个系统表&#xff1a;3.验证SQLServer库级别CDC是否启用4.启用SQLServer表级别CDC功能&#xff08;针对某一张表&#xff09;5、验证SQLServer表级别是否…

本地部署开源大模型的完整教程:LangChain + Streamlit+ Llama

在过去的几个月里&#xff0c;大型语言模型(llm)获得了极大的关注&#xff0c;这些模型创造了令人兴奋的前景&#xff0c;特别是对于从事聊天机器人、个人助理和内容创作的开发人员。 大型语言模型(llm)是指能够生成与人类语言非常相似的文本并以自然方式理解提示的机器学习模型…

【STM32智能车】小车状态

【STM32智能车】小车状态 搭建智能车 65MM轮径小车所选材料安装说明直行测试智能车可能存在的状态 智能车功能丰富&#xff0c;我们从最基础的开始&#xff0c;先来搭建一个智能车吧~。 搭建智能车 我们之前用了一个测试板子去学习调试电机&#xff0c;是时候拼装一个简单的车来…

Leetcode-每日一题【92.反转链表Ⅱ】

题目 给你单链表的头指针 head 和两个整数 left 和 right &#xff0c;其中 left < right 。请你反转从位置 left 到位置 right 的链表节点&#xff0c;返回 反转后的链表 。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], left 2, right 4输出&#xff1a;…

详细解释lvs的工作原理

vsl用于集群中的直接路由它的原理如下 如果在公司并发太高了怎么解决 1.加配置cpu 内存 带宽 ssd高效硬盘 2.加服务器 为用户提供服务 横向扩展 集群是什么 由的多台主机构成,相当于一台大型计算机,只提供一个访问入口(域名与ip地址) 集群用在那个场景 高并发场景 vrrp是…

服务无法注册进Eureka

相同的配置&#xff0c;在demo里能注册&#xff0c;在自己项目的无法注册&#xff0c;眼睛都快盯出老花眼了&#xff0c;还是不行&#xff0c;果然出现的问题只有在发现问题以后才觉得简单&#xff08;虽然确实是小问题&#xff0c;但是排查了一整天&#xff0c;值得记录一下&a…

论文阅读:Segment Anything之阅读笔记

目录 引言整体结构介绍论文问答代码仓库中&#xff0c;模型哪部分转换为了ONNX格式&#xff1f;以及如何转的&#xff1f;Mask decoder部分 Transformer decoder block?如何整合image_embedding&#xff0c;image_pe, sparse_prompt_embedding和dense_prompt_embedding的&…

ue4:Dota总结—HUD篇

1.绘制ui&#xff1a; DrawMoney&#xff1a; DrawPower&#xff1a; 点击ui响应事件&#xff1a; 点击响应显示对应的模型&#xff1a; 点击ui拖动模型跟随鼠标移动&#xff1a; 显示ui&#xff1a;PlayerContrler&#xff1a;

内网IP怎么用域名让外网访问,域名动态解析和静态区别?

域名解析是将域名与公网IP进行对应关系&#xff0c;实现访问域名即访问到对应IP应用的方式。域名解析分静态域名解析和动态域名解析的区别&#xff0c;它们的区别在哪&#xff1f;内网IP服务器怎么用域名让外网连接访问&#xff1f;这些都是需要我们有所了解掌握的。 这里不但…

如何基于GeoToolKit/INT实现矢量流线的聚集动画效果示例

继续在上一篇文章的基础上&#xff0c;利用相同的数据处理方法统一了不同年代地层的数据格式&#xff08;目前js解析支持的格式有ZMap、TS、XYZ和XYZA等&#xff09;&#xff0c;本文主要基于GeoToolKit/INT组件&#xff0c;针对地质研究经常在二维等值线基础上模拟计算地层中物…

Quiz 14_2-2: Using Web Services | Python for Everybody 配套练习_解题记录

文章目录 Python for Everybody课程简介Quiz 14_2-2: Using Web Services单选题&#xff08;1-15&#xff09;操作题Autograder 1: Extract Data from JSONAutograder 2: Calling a JSON API Python for Everybody 课程简介 Python for Everybody 零基础程序设计&#xff08;P…

NSS [NSSCTF 2022 Spring Recruit]ezgame

NSS [NSSCTF 2022 Spring Recruit]ezgame 前端小游戏&#xff0c;乐。

Spring源码整体脉络介绍及源码编译

需完成的任务 类------------------------------------------BeanFactory----------------------------------------->Bean【BeanFactory调用getBean()生产出来的】 BeanFactory Spring顶层核心接口&#xff0c;使用了简单工厂模式【根据名字&#xff0c;生产出不同的Bean…

C#:AES的加密解密,用于明文加密

大白话理解&#xff1a;将明眼能看到的字符给用另一种读不懂的语言给翻译&#xff0c;就像是摩斯密码……就像base64加密&#xff0c;都有异曲同工之妙。 建一个新的类&#xff08;这里放了aes加密解密的方法&#xff09; public static class AesPassword{/// <summary&g…

大屏项目也不难

项目环境搭建 使用create-vue初始化项目 npm init vuelatest准备utils模块 业务背景&#xff1a;大屏项目属于后台项目的一个子项目&#xff0c;用户的token是共享的 后台项目 - token - cookie 大屏项目要以同样的方式把token获取到&#xff0c;然后拼接到axios的请求头中…

rain-nowcasting-using-deep-learning github:使用深度学习进行临近降水预报

来源 github地址 是什么 本资料库旨在阐述 "在应用于降雨预报的深度学习模型中合并雷达雨量图像和风速预测 "&#xff08; “Merging radar rain images and wind predictions in a deep learning model applied to rain nowcasting”&#xff09;一文中提出的深度…