博主介绍:✌公司项目主程、全网粉丝20W+,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,CSDN博客之星TOP100、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业设计✌
文末获取联系
精彩专栏推荐
java项目精品实战案例《100套》https://blog.csdn.net/weixin_39709134/category_11128297.html
前言介绍:
2020年新冠肺炎疫情已席卷全国。人民战争的防疫和控制,全国各级人员,干部的中国共产党,中国共产党,以及年轻的中国共产党,中国共产党,迅速行动,抗击疫情给人民的力量,充分发挥坚决遏制疫情蔓延,打赢疫情防控阻击战。
大学生也参与了疫情联防联控。此时疫情防控机构应运而生,以政府为主,实施疫情防控技术管理,疾病预防控制和公共卫生服务,控制单位,具有典型的公益性,它的主要使命是在全社会范围内传播疾病、流行疾病、预防伤害,积极开展疾病预防控制工作,不仅有利于创造健康的生活环境,对促进人民健康起着重要作用,维护社会稳定,维护国家安全。我国已进入经济高速发展阶段,“选择更加严酷,后果更加严重”的启动,“中国梦”的社会建设理念,提高人民的健康水平,减少灾害的爆发风险,结合我国公共卫生事业发展的现状,“非典”疫情发生后,政府部门加快疾病预防控制机构建设,为预防和控制疫情应急管理体系应运而生。
以往的社区疫情防控管理平台系统相关信息管理,都是工作人员手工统计。这种方式不但时效性低,而且需要查找和变更的时候很不方便。随着科学的进步,技术的成熟,计算机信息化也日新月异的发展,如今计算机已经进入了人类社会发展的各个领域,并且发挥着十分重要的作用。本系统充分利用网络的便捷,在工作效率上,得到极大地提高,延伸至服务水平也会有好的收获,有了网络,社区疫情防控管理平台系统的各方面的管理更加科学和系统,更加规范和简便。
系统设计:
用户进入社区疫情防控管理平台系统社区疫情后,使用账号信息和密码信息信息进行登录,登录角色选择普通用户。如果账号信息存在,并且密码信息正确则提示登陆成功,跳转首页,否则提示账号或密码信息不正确。用户登录后可以在个人中心模块修改个人信息,轮播图查看、可以进行返乡报备管理、外出报备管理、投诉信息管理、体温上报管理、商品代买管理、商品配送管理、以及退出和注册账户信息等。
修改个人信息:用户可以进行密码信息的修改,需要手动输入原密码信息和新密码信息,修改密码信息采用二次验证密码信息;可以修改用户相关信息等。
查看疫情公告信息:首先根据登录进入到社区疫情防控管理平台,点击首页详情可查看疫情公告相关内容信息等操作
体温上报管理:用户可以录入自己的体温信息以及查看体温上报信息等。
返乡报备信息管理:用户可以进行外出报备信息(出发地点、返乡时间、体温、身体状态、近15天轨迹、核酸报告、经过疫区、报备时间、用户姓名、姓名、用户手机、详细住址、是否审核、审核回复)以及查看返乡报备信息等。
投诉信息管理:用户可以添加投诉信息信息(标题名称、名称、类型、图片信息、投诉内容、投诉日期、用户姓名、姓名、用户手机、详细住址、是否审核、审核回复)等数据进行录入。
系统架构图属于系统设计阶段,系统架构图只是这个阶段一个产物,系统的总体架构决定了整个系统的模式,是系统的基础。系统不仅要求功能完善,而且还要界面友好,因此,对于一个成功的系统设计,功能模块的设计是关键。由于本系统可执行的是一般性质的社区疫情管理工作,本系统具有一般适用性,其所实现的功能满足社区对日常社区疫情管控工作的管理,方便用户之间的沟通。系统设计的图像的数据流分析阶段的需要结构化设计的概要说明的基础上,根据映射到软件体系结构的某些程序。首先,整个系统分成几个小的模块,小的问题,然后,进一步细分模块,添加细节。据社区疫情防控管理平台系统的需求分析,确定此系统分为前台显示和后台管理两类。前台显示模块分为社区疫情浏览、社区疫情搜索、留言板等几个模块,主要功能模块为:首页、个人中心、用户管理、返乡报备管理、外出报备管理、投诉信息管理、体温上报管理、商品代买管理、商品配送管理、社区论坛、系统管理等几个模块的操作、社区疫情防控管理平台系统的整体结构设计如图所示。
功能截图:
用户输入进入到系统首页可以查看首页、社区论坛、社区公告、个人中心、后台管理等内容进行操作,系统首页不用登录。
点击社区论坛可以查看列表、发布帖子以及评论帖子和查看详情等操作。
点击查看详情以及评论操作
在个人中心页面中输入用户姓名、密码、姓名、上传图片信息、性别、年龄、详细住址、用户手机、邮箱、身份证等内容进行信息更新操作
用户登录进入社区疫情防控系后台统可以查看首页、个人中心、返乡报备管理、外出报备管理、投诉信息管理、体温上报管理、商品代买管理、商品配送管理等内容进行详细操作
在返乡报备管理页面可以对出发地点、返乡时间、体温、身体状态、近15天轨迹、核酸报告、经过疫区、报备时间、用户姓名、姓名、用户手机、详细住址、审核回复、审核状态等信息进行详情,修改或删除等操作
在体温上报管理页面可以对用户姓名、姓名、性别、年龄、体温、健康码、是否咳嗽、是否腹泻、是否乏力、是否就医、其他情况、上报时间等信息进行详情,修改或删除等操作
在商品代买管理页面可以对用户姓名、姓名、用户手机、详细住址、申请时间、备注、审核回复、审核状态等信息进行详情,修改或删除等操作
管理员登录进入社区疫情防控管理平台系统可以查看首页、个人中心、用户管理、返乡报备管理、外出报备管理、投诉信息管理、体温上报管理、商品代买管理、商品配送管理、社区论坛、系统管理等内容进行详细操作。
在用户管理页面可以对用户姓名、姓名、头像、性别、年龄、详细住址、用户手机、邮箱、身份证等信息进行详情,修改或删除等操作
在返乡报备管理页面可以对出发地点、返乡时间、体温、身体状态、近15天轨迹、核酸报告、经过疫区、报备时间、用户姓名、姓名、用户手机、详细住址、审核回复、审核状态、审核等信息进行详情,修改或删除等操作
在投诉信息管理页面可以对标题名称名称、类型、图片信息、投诉日期、用户姓名、姓名、用户手机、详细住址、审核回复、审核状态、审核等信息进行详情,修改或删除等操作
在体温上报管理页面可以对用户姓名、姓名、性别、年龄、体温、健康码、是否咳嗽、是否腹泻、是否乏力、是否就医、其他情况、上报时间等信息进行详情,修改或删除等操作
在商品代买管理页面可以对用户姓名、姓名、用户手机、详细住址、申请时间、备注、审核回复、审核状态、审核等信息进行详情,修改或删除等操作
在商品配送管理页面可以对用户姓名、姓名、用户手机、地址、商品金额、配送状态、更新时间、是否支付等信息进行详情、修改或删除等操作
数据设计:
学习java语言编程,大家都知道程序的数据库设计是基于整个社区疫情防控管理平台系统功能设计的需要。我们需要建立一个社区疫情防控管理平台系统对应的数据库关系模型来存储系统的数据信息。因此,当我们在程序设计中时,我们不需要向程序中添加数据页来提高系统的效率。数据库存储了大量的数据信息,可以说是数据库存储信息管理是系统的核心和基础。数据库还提供添加、删除、修改和检查等功能操作,使系统能够快速找到所需要的的数据信息,而不是在程序代码中进行数据保存。这样的话磁盘效率和速度不行、数据库中信息表的每一部分都按照一定的关系被准确地组合、排列和组合成一个数据表。目前,数据库使用mysql5.7标准版本,符合数据库设计的三种范式。代码为utf8—UTF-8 Unicode,排序规则为utf8\uGeneral\uCI
采用实体-关系(E-R)模型设计编码模式和数据库概念结构。E-R模型方法的组成部分是实体、属性和连接。E-R模型用E-R图表示,提醒用户工作环境中涉及的事物,属性是实体特征的具体描述。数据库在系统设计中起着决定性的作用。
逻辑结构设计是把概念结构设计阶段画好的数据库ER图转换为关系模型。该系统的关系模型的逻辑结构是由主要一下关系模式组成,具体的关系模式如下:
(1)用户信息(主键id、用户id、用户姓名、表名、角色、密码、新增时间、过期时间)
(2)疫情社区论坛信息(主键id、创建日期、帖子标题名称、帖子内容、父节点id、用户id、用户姓名、状态)
(3)返乡报备(主键id、创建日期、出发地点、返乡时间、体温、身体状态、近15天轨迹、核酸报告、经过疫区、报备时间、用户姓名、姓名、用户手机、详细住址、是否审核、审核回复)
(4)用户信息(主键id、创建日期、用户姓名、密码、姓名、头像、性别、年龄、详细住址、用户手机、邮箱、身份证)
(5)外出报备(主键id、创建日期、外出事由、外出地点、经过疫区、外出时间、返回时间、外出报备出行方式、随行人员、用户姓名、姓名、用户手机、详细住址、是否审核、审核回复)
(6投诉信息(主键id、创建日期、标题名称、名称、类型、图片信息、投诉内容、投诉日期、用户姓名、姓名、用户手机、详细住址、是否审核、审核回复)
(7)体温上报信息(主键id、创建日期、用户姓名、姓名、性别、年龄、体温、健康码、是否咳嗽、是否腹泻、是否乏力、是否就医、其他情况、上报时间)
(8)商品配送信息(主键id、创建日期、用户姓名、姓名、用户手机、详细住址、商品金额、配送状态、更新时间、是否支付)
(9)社区疫情公告信息(主键id、创建日期、标题名称、简介、图片信息内容)
代码实现:
# Tomcat
server:
tomcat:
uri-encoding: UTF-8
port: 8080
servlet:
context-path: /springboot0t8ql
spring:
datasource:
driverClassName: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/springboot0t8ql?useUnicode=true&characterEncoding=utf-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8
username: root
password: 123456
# driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
# url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=springboot0t8ql
# username: sa
# password: 123456
servlet:
multipart:
max-file-size: 10MB
max-request-size: 10MB
resources:
static-locations: classpath:/testStatic/,classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/
#mybatis
mybatis-plus:
mapper-locations: classpath*:mapper/*.xml
#实体扫描,多个package用逗号或者分号分隔
typeAliasesPackage: com.entity
global-config:
#主键类型 0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";
id-type: 1
#字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断"
field-strategy: 2
#驼峰下划线转换
db-column-underline: true
#刷新mapper 调试神器
refresh-mapper: true
#逻辑删除配置
logic-delete-value: -1
logic-not-delete-value: 0
#自定义SQL注入器
sql-injector: com.baomidou.mybatisplus.mapper.LogicSqlInjector
configuration:
map-underscore-to-camel-case: true
cache-enabled: false
call-setters-on-nulls: true
#springboot 项目mybatis plus 设置 jdbcTypeForNull (oracle数据库需配置JdbcType.NULL, 默认是Other)
jdbc-type-for-null: 'null'
项目总结:
此时项目已经完成,即使实施的时间不是很长,但是在这个过程中需要准备很长的一段时间去对系统设计开发所实际用到的技术进行学习和巩固。在学习的过程中,我逐渐认识到了我自身存在的一些不足。对于一些控制是必要的应用技能,能够理解,整个过程中仅仅是掌握了常用的性能和控制方法,我觉得还是相对来说挺容易的。从该系统中,系统的分析和设计的调查数据,已经经历了几个月,并且努力了几个月,该系统现在已经完成。很显然,该系统仍有很多不成熟的地方,在系统设计过程中有许多技术缺陷存在。在设计的过程中也涉及到了很多自己无法解决的问题,主要通过找专业的社区疫情和论坛来解决这些问题,对于圆满完成我的毕业设计,他们也贡献了很大一部分力量。
系统的开发环境和配置都是可以自行安装的,系统使用SPRING BOOT开发工具,使用比较成熟的Mysql5.7版本数据库进行对系统前台及后台的数据交互,根据技术语言结合需求对数据库进行修改维护,可以使得系统运行更具有稳定性和安全性,从而完成实现系统的开发。
在设计社区疫情防控管理平台系统的过程中还遇到了一些棘手的问题,那就是自己的英语水平还有待提高,很多关于社区疫情技术开发的资料文献都是英文版的,关键词语以及技术性词汇不能很好的理解。只有在借助翻译软件的实时性翻译功能的辅助下才勉强看懂。显然英语水平的高低直接影响到系统的开发过程。还有一些错误信息、比如用户空指针异常、还有MYSQL5.7版本数据库版本5.5和5.7不一致的问题、会导致SQL语句无法正常运行、还要就是管理员用户姓名设置的时候,后台没有判断好、在输入错误用户密码的的时候还是可以登录。这样的错原则上是不能发生的,在返回代码检查的情况下发现是在管理员信息与数据库的DAO类代码里出现了错误,代码和数据库之间没有建立好连接。还有比如管理员添加用户的时候报java.lang.NullPointException、解决的方法:查看控制台打印信息、发现添加的时候未填写相关信息、报java.lang.NullPointException、通过断电调试发现、用户信息为空的数据项、在前端保存的时候、必须填写用户完整相关信息、或者数据库设置字段可以为空都可以解决。经过本次测试,我会更加的对代码和数据库的操作上更加细心,不再出现这种原则上的错误。
源码获取:
大家点赞、收藏、关注、评论啦 、查看获取联系方式
打卡 文章 更新 308/ 365天
精彩专栏推荐订阅:在下方专栏
Java项目精品实战案例《100套》https://blog.csdn.net/weixin_39709134/category_11128297.html