mysql+jdbc+servlet+java实现的学生在校疫情信息打卡系统

news2024/10/6 18:27:11

摘 要 I
Abstract II
主 要 符 号 表 i
1 绪论 1
1.1 研究背景 1
1.2 研究目的与意义 2
1.3 国内外的研究情况 2
1.4 研究内容 2
2 系统的开发方法和关键技术 4
2.1 开发方法 4
2.1.1 结构化开发方法 4
2.1.2 面向对象方法 4
2.2 开发技术 4
2.2.1 小程序开发MINA框架 4
2.2.2 微信开发者工具 4
2.2.3 Java语言与JDK开发环境 5
2.2.4 MySQL数据库 5
2.2.5 HTML语言 5
2.2.6 JavaScript 5
3 系统分析 6
3.1 可行性分析 6
3.1.1技术可行性分析 6
3.1.2功能需求可行性分析 6

3.1.3信息安全需求可行性分析 6
3.1.4经济可行性分析 6
3.1.5法律可行性 6
3.1.6可行性分析结论 6
3.2 功能需求分析 6
3.2.1 用户功能 6
3.2.2 管理员功能 7
3.3 业务流程分析 8
3.4 数据流程分析 9
4 系统设计 11
4.1 系统架构设计 11
4.2 系统总体设计 11
4.3 系统功能设计 12
4.3.1.学生模块 12
4.3.2.管理员模块 12
4.4 数据库设计 13
4.4.1 数据需求分析 13
4.4.2 系统E-R图 13
4.4.3 数据库表设计 15
4.5 数据字典 17
5 系统实现 20
5.1 系统开发环境 20
5.2 功能模块的实现 20
5.2.1 用户模块功能 20
5.2.2 管理员功能 23
6 系统测试 27
6.1 测试目的 27

6.2 测试方案 27
6.3 功能模块测试及结果分析 27
6.3.1 注册登录模块测试 27
6.3.2 健康打卡模块测试 28
6.3.3 请假模块测试 29
6.3.4 学生管理模块测试 30
6.3.5 打卡记录管理 30
6.3.6 消息管理模块测试 31
6.3.7 请假审核模块测试 32
7 总结 33
致谢 34
毕业设计(论文)知识产权声明 35
毕业设计(论文)独创性声明 36
参考文献 37

1.绪论

1.1研究背景

自发现第一例新冠肺炎病例以来,疫情至今已经持续两年时间。全国防疫情况总体平稳,但由于外来输入、本土聚集等因素引起的局部地区疫情反复情况仍有发生。与之前爆发的SARS、埃博拉病毒相比,新冠病毒传染性强,潜伏期长,致病力强,具有严重的危害性。因此,在国内整体防疫情况平稳的情况下,新冠疫情监测仍是疫情管控的必要措施之一。高校作为社会的特殊组织,具有人口密度大,来源广泛,出行频率高,接触人员范围大的特点,出现交叉感染的概率极大。高校的疫情防控监测是新冠防疫工作的重中之重,及时了解校内学生的健康信息和位置信息对校内的新冠疫情防控而言尤为重要。
前期根据西安工业大学防疫要求,学生需要在指定软件上完成每日两次的体温健康登记以及位置信息报备的打卡任务。与微信小程序相比,指定软件打卡存在一些明显的不便之处,例如:需要安装软件、频繁登录身份认证、软件卸载,内存占用较大等。而且软件结构设计复杂容易出现运行卡顿、闪退等情况。相较于独立的软件应用程序,微信小程序提出了用完即走理念,旨在减少智能移动终端的软件安装数量,降低内存占用率,提高操作灵活度。微信小程序具有便于使用、运行状况稳定等优势。目前,西安工业大学将学生的每日打卡操作转移至微信小程序内进行,但当前使用的打卡小程序中仍存在一些问题,功能实现方面仍有改进空间。例如,在位置获取阶段,现行的操作只能将用户位置定位到区级别,无法提供更精准的位置信息。基于以上情况,如果能对现有小程序进行完善,添加位置微调功能,实现更加精准的定位信息,有利于学生方面进行健康登记,也便于学校防疫管理方面进行情况统计和监控,是具有现实意义的研究设计。

1.2 研究目的与意义

本课题的研究目的是设计并实现针对学生每日打卡需求的微信小程序。计划实现全体在校学生每日体温登记、位置信息报备等功能,同时,为学校管理人员提供收集查看学生的位置动向和健康状况的功能。这是一款具有公益性质的产品,操作灵活便捷,并且对所有用户完全免费,能更大程度地提高校内防疫管理效率,节约人力与时间成本。
本课题中微信小程序系统计划由两个部分组成,一部分针对学生群体的日常需求,学生用户角色登录后,可以实现消息通知查阅、打卡签到,请假申请,离校报备等多个功能;另一部分是针对管理人员群体的工作需求,管理人员角色登录时,能够看所管理职责范围内班级的签到率以及未签到的学生信息,同时支持信息发布等管理操作。
疫情防控阶段及时掌握学生健康信息对于高校的防疫管理工作十分重要。尤其在假

期期间,学生日常打卡信息收集有利于高校精准掌握学生健康和心理情况,以便开展具针对性的帮扶工作。利用“每日打卡”采集数据也有利于掌握全体学生的实时动态,以便相关管理部门进行研判,制定相应的防控政策。本课题计划完成的疫情打卡小程序针对现行程序中存在问题进行改进,提高了操作的便捷性,灵活性,以及信息准确性,更有适用于西安工业大学目前的防疫管控需求,有利于提高防疫管理工作效率,具有重要的实践意义。此外,对于其他高校的防疫工作实施,也有一定的借鉴意义。

1.3 国内外的研究情况

新型冠状病毒肺炎是新中国建立后,继非典爆发后,再一次在全国范围内快速蔓延、范围宽广、防控难度大的一次全球性公共卫生事件,关乎全世界人类的健康问题。面对爆发的新型冠状病毒疫情,我国采取了联防联控的防控措施,通过应用大数据算法来实现疫情防控机制,要求出入场所的人员必须查看其行程码和健康码等信息,实现多元主体联防联控、有效监督执政行为,并精准定位潜在感染人员的作用,将其进行隔离,以防止潜在感染人员传染其他人,并且国家积极研发对抗新冠肺炎的特效药以及预防新冠肺炎的疫苗,尽量减少新冠肺炎带来的人员死亡率。
疫情期间,国内疫情管理软件主要有两类:一种是针对预防疫情专门研发设计的小程序,如:健康码,行程码,疫情动态软件以及各类微信疫情小程序;另一种是在已有的新闻类、医疗类、支付类和搜索类等软件产品中加入“抗击肺炎”功能模块(如凤凰新闻,丁香医生,支付宝,UC,百度等)。针对疫情的特点,专门为疫情防控而设计开发的软件主要应用于各种高校以及企业,另一种在已经存在的软件产品中新增疫情防控模块,极大方便了使用这些软件的广大群体,用户不需要额外注册及下载,即可及时掌握各地疫情状况及国内外的扩散传播情况,包括新增感染人数、分布地区、治疗进展、专家预防措施、疫情科普等大家比较关注的问题,用户可以通过锁定城市来关注疫情信息。
在当前地疫情时期,很多企业都在研发针对员工的情防控体系。例如,青岛海尔公司使用了企业员工健康状况上报和信息管理的系统,研发了温度自动采集分析、上报的系统功能,针对性的解决了传统人工测温带来的高成本、低效率、信息上报不及时等问题。

1.4 研究内容

本论文总体上分为七个部分,如下表1.1本文研究内容所示:
表1.1 本文研究内容
编号 论文结构 论文内容
1 绪论 课题研究背景、研究目的与意义、国内外研究现状、研究内容
2 相关技术 系统开发方法和开发技术
3 系统分析 系统的可行性分析、可行性分析、功能需求分析、业务流程分析、数据流程分析、数据字典
4 系统设计 系统架构分析、系统总体设计、系统功能设计、数据库设计
5 系统实现 系统开发环境、功能模块的实现
6 系统测试 测试目的、测试方案和功能模块的测试

2. 系统的开发方法和关键技术

2.1 开发方法

2.1.1 结构化开发方法

结构化方法适用于解决数据处理领域的问题,但不适用于开发大规模的、复杂度高、变化性强的工程。结构化开发方法有以下特点:树立以用户为中心的观点,强化调查研究与系统分析,逻辑设计和物理设计各自展开,采用结构化与模块化相结合的方法,严格按照工作阶段划分工作内容,将工作文件进行规范化文献化等。

2.1.2 面向对象方法

面向对象开发方法是一种新型的编程方式,它的基本思想是利用和Java语言中类似的概念,如对象、继承、封装、类等基本概念来进行程序设计。本系统后端开发语言使用的是Java编程语言,Java语言编程的特点就是面对对象,将现实世界中所有事物进行抽象,封装成一个类,在其他模块中进行调用,并且通过Java语言的继承可以大大提高代码的复用率,极大地减少了代码冗余。

2.2 开发技术

2.2.1 小程序开发MINA框架

微信小程序的MINA框架与淘宝Weex、Vue框架相似,其官方以数据响应系统为核心,为用户提供了一整套的JavaScript API供用户进行调用,如:定位系统、通讯系统、数据安全等。小程序开发框架的应用目的是帮助开发人员高效的完成高质量代码编译,实现功能模块的开发。
整个小程序框架主要由应用层与视图层两个部分所构成。小程序开发提供的视图层描述语言为WXML与WXSS,用来对开发的小程序界面进行排版;逻辑层框架为JavaScript编写实现。并且,在视图层和逻辑层中间还设置了数据与事件处理。当要进行数据更改时,若只在逻辑层面更改,那么视图层面就会做出相应的更改。通过小MAIN框架就能够使开发人员能够更加专心于数据和逻辑,从而大大提高了开发人员地开发的工作效率。

2.2.2 微信开发者工具

微信开发者工具是微信开发平台开发的编程工具,用于安卓等客户端的开发人员进行开发使用,其集中了开发、调试、预览、上传等功能,易于操作。启动工具的时候,
开发者需要使用已经在登录微信官方公众号上成功绑定的微信号扫描登录开发工具进行登录以及开发,功能开发完成之后会使用此绑定成功的appid来进行小程序的发布。

2.2.3 Java语言与JDK开发环境

Java语言是一种面向对象编程的程序设计语言。C++语言的使用过程中,常因内存管理和指针使用不当导致编译错误,Java语言在这些方面有较大改善,学习和使用起来更简单方便。Java语言还具有强健壮性、可靠性、低成本、安全性等特点。Java在面向对象技术上的充分支持,以及Java平台上嵌入API,如使用开发工具IDEA开发的时候,开发人员可以在类中调用需要的相关方法API进行开发,极大地减少应用系统开发的时间,减少成本。 Java语言跨平台的特点,让其可以在几个平台间传输信息,只需要在平台上安装虚拟机,就可以运行程序,让用户使用流程更加顺畅。 本次开发选用JDK版本为JDK1.8。

2.2.4 MySQL数据库

MySQL是一种可以将数据存储在不同表中的关系型数据库。相较于其他数据库,MySQL数据库具有安全性,体积小,跨平台等特性,深受各种学习者和企业的青睐, MySQL数据库场被用于大规模数据存储的开发流程中,便于用户进行检索访问。除此之外,用户下载和使用MySQL数据库不需要支付额外费用,对于普通学习者或者非企业的个体而言,MySQL数据库非常友好。

业务流程图
数据流程图
功能结构图
小程序端
管理后台

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

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

相关文章

[Spring]事务相关

事务隔离级别 Spring 提供了以下五种事务隔离级别,用于控制多个事务之间的相互影响: DEFAULT(默认隔离级别): 使用底层数据库的默认隔离级别。通常为数据库的默认隔离级别,如 MySQL 是 REPEATABLE READ&am…

逆向退货售后设计

一,项目背景 退货售后流程:涉及订单,票,款 二,方案一 三,方案二

残差网络实现

代码中涉及的图片实验数据下载地址:https://download.csdn.net/download/m0_37567738/88235543?spm1001.2014.3001.5501 代码: import torch import torch.nn as nn import torch.nn.functional as F #from utils import load_data,get_accur,train i…

只需5分钟,了解常见的四种限流算法

一、计数器算法 在指定周期内累加访问次数,当访问次数达到设定的阈值时,触发限流策略,当进入下一个时间周期时进行访问次数的清零。如图所示,我们要求3秒内的请求不要超过150次: 但是,貌似看似很“完美”的…

[mysql系列] mysql 数据库如何实现事务回滚

这里写自定义目录标题 一、事务回滚二、mysql InnoDB引擎如何实现回滚操作2.1 InnoDB引擎的 undo log2.2 具体实现2.2.1 insert 操作2.2.2 delete 操作2.2.3 update 操作 主要参考资料为:《Mysql 是怎样运行的》 一、事务回滚 根据原子性的定义,一个事务…

MySQL MVCC的详解之Read View

文章目录 概要一、基于UNDO LOG的版本链1.1、行记录结构1.2、了解UNDO LOG1.3、版本链 二、Read View2.1、判定机制 三、参考 概要 在上文中,我们提到了MVCC(Multi-Version Concurrency Control)多版本并发控制,是通过undo log来实现的。那具…

MATLAB | 七夕节用MATLAB画个玫瑰花束叭

Hey又是一年七夕节要到了,每年一次直男审美MATLAB绘图大赛开始hiahiahia,真的这些代码越写越不知道咋写,又不想每年把之前的代码翻出来再发一遍,于是今年又对我之前写的老代码进行了点优化组合,整了个花球变花束&#…

计算机网络-物理层(三)-信道的极限容量

计算机网络-物理层(三)-信道的极限容量 当信号在信道中传输失真不严重时,在信道的输出端,这些信号可以被识别 当信号在信道中,传输失真严重时,在信道的输出端就难以识别 造成失真的因素 码元传输速率信号传输距离噪声干扰传输媒…

8.4.tensorRT高级(3)封装系列-infer推理封装,输入输出tensor的关联

目录 前言1. infer封装总结 前言 杜老师推出的 tensorRT从零起步高性能部署 课程,之前有看过一遍,但是没有做笔记,很多东西也忘了。这次重新撸一遍,顺便记记笔记。 本次课程学习 tensorRT 高级-infer推理封装,输入输出…

思维进化算法(MEA)优化BP神经网络

随着计算机科学的发展,人们借助适者生存这一进化规则,将计算机科学和生物进化结合起来,逐渐发展形成一类启发式随机搜索算法,这类算法被称为进化算法(Evolutionary Com-putation, EC)。最著名的进化算法有:遗传算法、进化策略、进化规划。与传统算法相比,进化算法的特点是群体搜…

嵌入式设备应用开发(boost库应用)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 嵌入式开发过程中不可避免在很多情况下,需要使用到posix的api函数。一方面,这些api函数确实可以帮助我们解决一些问题;但是另外一方面,因为平台的差异,如果一段时间不做嵌入式…

Java集合利器 Map Set

Map & Set 一、概念二、Map三、Set下期预告 一、概念 Map和Set是一种专门用来进行搜索的数据结构,其搜索的效率与其具体的实例化子类有关。它们分别定义了两种不同的数据结构和特点: Map(映射) :Map是一种键值对&…

Spring高手之路13——BeanFactoryPostProcessor与BeanDefinitionRegistryPostProcessor解析

文章目录 1. BeanFactoryPostProcessor 概览1.1 解读 BeanFactoryPostProcessor1.2. 如何使用 BeanFactoryPostProcessor 2. BeanDefinitionRegistryPostProcessor 深入探究2.1 解读 BeanDefinitionRegistryPostProcessor2.2 BeanDefinitionRegistryPostProcessor 的执行时机2.…

Redis+SpringBoot企业版集群实战------【华为云版】

目录 安装 复制及集群 bgsave rdb aof SpringBoot+Redis操作

斯特林近似(Stirling‘s approximation)

斯特林公式(Stirling’s approximation)是一条用来取n的阶乘的近似值的数学公式。一般来说,阶乘的计算复杂度为线性。当要为某些极大的n求阶乘时,常见的方法复杂度不可接受。斯特林公式能够将求解阶乘的复杂度降低到对数级。而且&…

在云服务器上安装Jenkins

说明:Jenkins是一个部署项目的平台,通过Jenkins可以省去从项目开发–>部署项目之间的所有流程,做到代码提交即上线。本文介绍在云服务CentOS上安装Jenkins。 前提 安装Jenkins之前,先要在云服务上安装JDK、Maven、Git&#x…

SpringAOP原理:手写动态代理实现

0、基础知识 AOP我们知道,是在不修改源代码的情况下,为代码添加一些新功能的技术。通过动态代理,可以在不修改原始类代码的前提下,对方法进行拦截和增强。 动态代理常用于在不改变原有业务逻辑的情况下,对方法…

Dockerfile部署LNMP

文章目录 一、项目模拟1. 项目环境2. 服务器环境3. 任务需求 二、Linux 系统基础镜像三、Nginx1. 建立工作目录2. 编写 Dockerfile 脚本3. 准备 nginx.conf 配置文件4. 生成镜像5. 创建自定义网络6. 启动镜像容器7. 验证 nginx 三、Mysql1. 建立工作目录2. 编写 Dockerfile3. 准…

CompletableFuture总结和实践

CompletableFuture被设计在Java中进行异步编程。异步编程意味着在主线程之外创建一个独立的线程,与主线程分隔开,并在上面运行一个非阻塞的任务,然后通知主线程进展,成功或者失败。 一、概述 1.CompletableFuture和Future的区别&…

Centos7查看磁盘和CUP统计信息iostat命令

Centos7查看磁盘和CUP统计信息iostat命令 Centos7内存高|查看占用内存命令 docker实战(一):centos7 yum安装docker docker实战(二):基础命令篇 docker实战(三):docker网络模式(超详细) docker实战(四):docker架构原理 docker实战(五):docker镜像及仓库配置 docker实战(六…