【Java毕设】基于SpringBoot实现新冠疫情统计系统(Idea+Navicat)
创始人
2024-02-05 09:18:57
0
在这里插入图片描述

推荐学习专栏:

  • Java基础学习专栏:java基础知识学习
  • Java进阶学习专栏:java编程进阶学习


在这里插入图片描述

前言

疫情在我们的生活中反反复复,为了方便我们更直观的清楚新冠疫情数据,通过Java编程可以统计疫情信息,更好管控。本文给大家分享一个基于SpringBoot实现的新冠疫情统计系统,本文也适合计科专业毕业设计,也符合当前社会的需求。(文末附源码)


文章目录

  • 前言
    • 1、系统功能
      • ①系统首页
      • ②打卡功能
      • ③用户管理
      • ④疫情信息
      • ⑤疫情人员
    • 2、系统部署
      • ①创建数据库
      • ②运行代码
      • ③打开浏览器
    • 3、系统使用
    • 4、代码展示
    • 5、资源获取
  • 总结


注:系统使用步骤可直接跳到【系统部署】

1、系统功能

功能介绍:有用户管理、新冠症状管理、新冠防疫管理、疫情数据管理、管理员管理、系统管理等功能

①系统首页

实现了动态的曲线图和饼图 记录每天疫情人员的数量变化
在这里插入图片描述

②打卡功能

该功能实现用户的每日打卡,可实现用户信息和状态的增,删,改,查,方便单位的管理。
在这里插入图片描述这里是打卡列表
在这里插入图片描述

③用户管理

该功能实现对使用此系统的信息管理,查看用户信息并且增设管理员

在这里插入图片描述

④疫情信息

有三个方面的功能——疫苗接种、核酸检测、防疫物资
在这里插入图片描述

  • 疫苗接种:根据定位推荐接种点,以及接种须知的说明
    在这里插入图片描述

  • 核酸检测:介绍核酸及核酸检测的相关知识,让用户对核酸检测有更清晰的认识
    在这里插入图片描述

  • 防疫物资:对防疫知识作出详细的科普
    在这里插入图片描述

⑤疫情人员

实现了对疫情人员的管理。实现密切接触者、确诊人员、治愈病例人员和死亡人员信息的增,删,改,查
在这里插入图片描述

2、系统部署

需要项目源码的伙伴可在文末下载,这里将整个实现步骤演示一遍

①创建数据库

打开Navicat(Navicat的安装需要激活的可私信),然后右击local点 打开连接,复制资源包中的文件名,即coronavirus,再次右击local点 新建数据库,创建数据库。
在这里插入图片描述在这里插入图片描述
然后双击选中新建的数据库,右键运行SQL文件
在这里插入图片描述
点击开始运行,等待数据导入,然后选中数据库,按F5刷新,到此项目中所有的数据库表便全部导入成功
在这里插入图片描述
接下来开始运行代码

②运行代码

找到资料文件夹中的源码,将名为 coronavirus 的项目拖入 IDEA,等待项目加载它的依赖jar包,加载完毕之后,这里有两个地方需要修改,具体修改内容如图所示。
在这里插入图片描述

修改完找到启动类,右键运行(run)运行
在这里插入图片描述
可以看出无报错就OK了
在这里插入图片描述

③打开浏览器

最后一步,打开浏览器,在搜索框输入访问路径 localhost:8083,无报错,就可以进入系统的主页面了
在这里插入图片描述

3、系统使用

使用该系统需要登录,随便点击首页选项就可以进入登录页面
在这里插入图片描述
账号和密码可在数据库user中找到,选择第一个,账号和密码都为admin
在这里插入图片描述
系统的功能参照前文

4、代码展示

  • CheckOutController
@Controller
public class CheckOutController {@AutowiredCheckOutService checkOutService;//打卡@RequestMapping(value = "/checkOut/toAdd")public String toAdd() {return "checkOutAdd";}//打卡@RequestMapping(value = "/checkOut/add", method = RequestMethod.POST)public String addCheckOut(@RequestParam("currentPosition") String currentPosition, @RequestParam("bodyTemperature") Double bodyTemperature,@RequestParam("healthState") String healthState, @RequestParam("isToHighArea") String isToHighArea,@RequestParam("isTouch") String isTouch, @RequestParam("remarks") String remarks,@RequestParam("name") String name, @RequestParam("checkOutDate") Date checkOutDate) {CheckOut checkOut = new CheckOut().setCurrentPosition(currentPosition).setBodyTemperature(bodyTemperature).setHealthState(healthState).setIsToHighArea(isToHighArea).setIsTouch(isTouch).setRemarks(remarks).setName(name).setCheckOutDate(checkOutDate);checkOutService.add(checkOut);return "redirect:/checkOut/list";}@InitBinderpublic void initBinder(WebDataBinder binder, WebRequest request) {//转换日期 注意这里的转化要和传进来的字符串的格式一直 如2015-9-9 就应该为yyyy-MM-ddDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd");binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, true));// CustomDateEditor为自定义日期编辑器}@RequestMapping(value = "/checkOut/list", method = RequestMethod.GET)public String list(Model model, @RequestParam(name="page",required = true,defaultValue = "1")int page, @RequestParam(name="size",required=true,defaultValue = "25")int size){java.util.List checkOuts = checkOutService.findAll(page,size);PageInfo pageInfo=new PageInfo(checkOuts);model.addAttribute("pageInfo",pageInfo);return "checkOutList";}@RequestMapping(value = "/checkOut/listByCheckOutName")public String listByCureName(Model model, @RequestParam(name = "name", required = true) String name) {java.util.List checkOut = checkOutService.findByName(name);PageInfo pageInfo = new PageInfo(checkOut);model.addAttribute("pageInfo", pageInfo);return "checkOutList";}
}
  • CureController
@Controller
public class CureController {@AutowiredCureService service;//所有治愈者@RequestMapping(value = "cure/list",method = RequestMethod.GET)public String list(Model model, @RequestParam(name="page",required = true,defaultValue = "1")int page, @RequestParam(name="size",required=true,defaultValue = "25")int size){List cures = service.findAll(page,size);PageInfo pageInfo=new PageInfo(cures);model.addAttribute("pageInfo",pageInfo);return "list";}//根据id查找治愈者@RequestMapping(value = "cure/info/{id}",method = RequestMethod.GET)public String info(@PathVariable("id")int id,Model model){Cure cure = service.get(id);model.addAttribute("cure",cure);return "cureInfo";}//更新或插入治愈者的现状@RequestMapping(value = "cure/update",method = RequestMethod.GET)public String update(int baseId,String current){service.update(baseId,current);System.out.println(baseId+current);return "redirect:/cure/info/"+baseId;}@RequestMapping(value = "cure/listByCureName")public String listByCureName(Model model, @RequestParam(name = "name", required = true) String name) {List cures = service.findByName(name);System.out.println(cures);PageInfo pageInfo = new PageInfo<>(cures);model.addAttribute("pageInfo", pageInfo);return "list";}
}
  • UserController
@Controller
public class UserController {@AutowiredUserService userService;@RequestMapping(value = "/manager/list" ,method = RequestMethod.GET)public String list(Model model, @RequestParam(name="page",required = true,defaultValue = "1")int page, @RequestParam(name="size",required=true,defaultValue = "25") int size){List users = userService.findAll(page, size);PageInfo pageInfo=new PageInfo(users);model.addAttribute("pageInfo",pageInfo);return "managerlist";}//跳转添加页面@RequestMapping(value = "/manager/toAdd")public String toAdd(){return "managerAdd";}//添加管理员功能@RequestMapping(value = "/manager/add",method = RequestMethod.POST)public String add(@RequestParam("username")String username, @RequestParam("name")String name,@RequestParam("password")String password, @RequestParam("unit")String unit,@RequestParam("phone") BigInteger phone, @RequestParam("supermanager")char supermanager){BCryptPasswordEncoder bCryptPasswordEncoder = new BCryptPasswordEncoder();//加密密码String pwd=bCryptPasswordEncoder.encode(password);User user=new User().setName(name).setPassword(pwd).setUsername(username).setPhone(phone).setUnit(unit);System.out.println(user);//添加用户userService.addUser(user);//找到idint id = userService.findByUsername(user.getUsername()).getId();//添加普通权限userService.addUserRole(id);//添加超级管理员权限if ("是".equals(supermanager)){userService.addAdminRole(id);}return "redirect:/manager/list";}//升级权限@RequestMapping("/manager/toSuper/{id}")public String toSuper(@PathVariable("id")int id){userService.addAdminRole(id);return "redirect:/manager/list";}//删除用户@RequestMapping("/manager/delete/{id}")public String delete(@PathVariable("id")int id){userService.deleteUser(id);return "redirect:/manager/list";}}

5、资源获取

  • CSDN获取
    https://download.csdn.net/download/CSDN_anhl/87097686

总结

项目介绍就到这里,学习的过程就是认识自己的过程,在开发中不断补充自己的知识,增加自己的理解,弥补不足,对系统的开发环境、配置和开发软件也能更加熟练地掌握,我能明显感觉到自己的英语水平有待提升,调试的过程虽然很烦躁,但沉下心处理也是一种享受。欢迎订阅下边博主专栏,跟博主一起学习!后期将更新更多精彩文章!感觉还不错的话点个赞吧!

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...