基于ssm的社区疫情返乡管控系统设计实现

2023-05-16

项目描述

临近学期结束,还是毕业设计,你还在做java程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。这里根据疫情当下,你想解决的问题,今天给大家介绍一篇基于ssm的社区疫情返乡管控系统设计实现。

功能需求

截止到目前,无论是国内还是国外新冠病毒仍在肆虐,社区疫情防控趋势化越来越明显,以社区为单位进行疫情防控,毫无疑问能够对疫情防控取到很好的作用。社区疫情防控系统方便对社区疫情的信息管理,对居民健康信息、行程、以及疫情防控所需的活动进行系统化、信息化管理。例如居民每日健康填报,核酸检测记录、发放防控物资等。社区疫情防控管理系统的设计需要考虑两种角色,用户和系统管理员。

具备以下功能:

前端用户模块:用户登录注册、忘记密码、首页、关于我们、疫情新闻、信息记录、健康打卡等功能。
后端管理员模块:管理员登录、人员管理、工作人员管理、返乡信息录入、健康打卡管理、网站管理配置、用户留言板留言管理、修改密码、退出系统。

部分效果图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

部分代码
	
 @RequestMapping({ "/user/register.html" })
    @ResponseBody
    public Map<String, Object> reg(@Validated final Member member, final BindingResult result, @RequestParam("gender") final String gender, @RequestParam("repassword") final String repassword) {
        final Map<String, Object> errorMap = new HashMap<String, Object>();
        final List<String> errorList = new ArrayList<String>();
        if (result.hasErrors() || !member.getMpassword().equals(repassword)) {
            errorMap.put("status", "0");
            if (!member.getMpassword().equals(repassword)) {
                errorList.add("\u4e24\u6b21\u8f93\u5165\u5bc6\u7801\u4e0d\u4e00\u81f4");
            }
            final FieldError nameError = result.getFieldError("mname");
            final FieldError mpasswordError = result.getFieldError("mpassword");
            final FieldError midnoError = result.getFieldError("midno");
            final FieldError mphoneError = result.getFieldError("mphone");
            final FieldError memailError = result.getFieldError("memail");
            if (nameError != null) {
                errorList.add(nameError.getDefaultMessage());
            }
            if (mpasswordError != null) {
                errorList.add(mpasswordError.getDefaultMessage());
            }
            if (midnoError != null) {
                errorList.add(midnoError.getDefaultMessage());
            }
            if (mphoneError != null) {
                errorList.add(mphoneError.getDefaultMessage());
            }
            if (memailError != null) {
                errorList.add(memailError.getDefaultMessage());
            }
            errorMap.put("errorList", errorList);
        }
        else {
            if (gender.equals("1")) {
                member.setMgender(1);
            }
            else {
                member.setMgender(0);
            }
            member.setMdate(new Date());
            this.memberService.addMember(member);
            errorMap.put("status", "1");
            errorMap.put("msg", "\u6ce8\u518c\u6210\u529f\uff0c\u8bf7\u524d\u5f80\u767b\u5f55\uff01");
        }
        return errorMap;
    }
    
    @RequestMapping({ "/user/verifyemailandphone.html" })
    @ResponseBody
    public Map<String, Object> verifyEmailAndPhone(final String memail, final String mphone) {
        final Map<String, Object> verifyMap = new HashMap<String, Object>();
        if (memail != null && !memail.equals(" ")) {
            final MemberExample memberExample1 = new MemberExample();
            final MemberExample.Criteria criteria = memberExample1.createCriteria();
            criteria.andMemailEqualTo(memail);
            final long memailCount = this.memberService.countByExample(memberExample1);
            if (memailCount > 0L) {
                verifyMap.put("status", 0);
                verifyMap.put("msg", "\u90ae\u7bb1\u5df2\u88ab\u6ce8\u518c");
                return verifyMap;
            }
        }
        if (mphone != null && !mphone.equals(" ")) {
            final MemberExample memberExample2 = new MemberExample();
            final MemberExample.Criteria criteria2 = memberExample2.createCriteria();
            criteria2.andMphoneEqualTo(mphone);
            final long mphoneCount = this.memberService.countByExample(memberExample2);
            if (mphoneCount > 0L) {
                verifyMap.put("status", 0);
                verifyMap.put("msg", "\u624b\u673a\u53f7\u5df2\u88ab\u6ce8\u518c");
                return verifyMap;
            }
        }
        verifyMap.put("status", 1);
        return verifyMap;
    }
    
    @RequestMapping({ "/login/captcha.html" })
    public void captcha(final HttpServletRequest request, final HttpServletResponse response) throws Exception {
        final String capText = this.kaptcha.createText();
        request.getSession().setAttribute("KAPTCHA_SESSION_KEY", (Object)capText);
        final BufferedImage bi = this.kaptcha.createImage(capText);
        final ServletOutputStream out = response.getOutputStream();
        ImageIO.write(bi, "jpg", (OutputStream)out);
        try {
            out.flush();
        }
        finally {
            out.close();
        }
        out.close();
    }
    
    @RequestMapping({ "/kaptchaverify.html" })
    @ResponseBody
    public Map<String, Object> verifyCode(final String code, final HttpServletResponse response, final HttpServletRequest request) {
        final Map<String, Object> verifyMap = new HashMap<String, Object>();
        final String codeText = (String)request.getSession().getAttribute("KAPTCHA_SESSION_KEY");
        if (codeText.equals(code)) {
            verifyMap.put("status", 1);
        }
        else {
            verifyMap.put("status", 0);
            verifyMap.put("msg", "\u9a8c\u8bc1\u7801\u9519\u8bef");
        }
        return verifyMap;
    }
    
    @RequestMapping({ "/user/resetpwd.html" })
    @ResponseBody
    public Map<String, Object> resetPwd(final String email) {
        final Map<String, Object> map = new HashMap<String, Object>();
        if (email != null && !email.equals(" ")) {
            final MemberExample memberExample = new MemberExample();
            final MemberExample.Criteria criteria = memberExample.createCriteria();
            criteria.andMemailEqualTo(email);
            final List<Member> members = this.memberService.selectByExample(memberExample);
            if (members.size() > 0) {
                if (SendMail.sendMail(email, members.get(0).getMname())) {
                    final String newPwd = Funcs.MD5("stern123456789");
                    members.get(0).setMpassword(newPwd);
                    this.memberService.updateByPrimaryKeySelective(members.get(0));
                    map.put("msg", "\u91cd\u7f6e\u6210\u529f\uff0c\u8bf7\u7528\u65b0\u5bc6\u7801\u767b\u5f55,\u5982\u679c\u6ca1\u6709\u67e5\u6536\u5230\u90ae\u4ef6\uff0c\u8bf7\u5230\u5783\u573e\u7bb1\u4e2d\u67e5\u770b\uff01");
                }
                else {
                    map.put("msg", "\u91cd\u7f6e\u5931\u8d25");
                }
            }
            else if (members.size() == 0) {
                map.put("msg", "\u8be5\u90ae\u7bb1\u6ca1\u6709\u88ab\u6ce8\u518c");
            }
        }
        else {
            map.put("msg", "\u8bf7\u8f93\u5165\u6b63\u786e\u7684\u90ae\u7bb1");
        }
        return map;
    }
    
    @RequestMapping({ "/login.html" })
    public String loginPage(final HttpServletRequest request, final Model model) throws IOException {
        final Cookie[] cookies = request.getCookies();
        String username = "";
        String pwd = "";
        if (cookies != null) {
            Cookie[] array;
            for (int length = (array = cookies).length, i = 0; i < length; ++i) {
                final Cookie cookie = array[i];
                if (cookie.getName().equals("user")) {
                    username = URLDecoder.decode(cookie.getValue().split("#")[0], "UTF-8");
                    pwd = cookie.getValue().split("#")[1];
                    break;
                }
            }
            model.addAttribute("mname", (Object)username);
            model.addAttribute("mpassword", (Object)pwd);
        }
        return "login";
    }
    
    @RequestMapping({ "/user/login.html" })
    @ResponseBody
    public Map<String, String> login(final String mname, final String mpassword, final HttpServletRequest request, final HttpServletResponse response) throws Exception {
        final Map<String, String> res = new HashMap<String, String>();
        final Member member = this.memberService.selectMemberByNameAndPwd(mname, mpassword);
        if (member != null) {
            res.put("status", "1");
            if (request.getParameter("isRemember") != null) {
                final Cookie cookie = new Cookie("user", String.valueOf(URLEncoder.encode(mname, "utf-8")) + "#" + mpassword);
                cookie.setPath("/");
                cookie.setMaxAge(604800);
                response.addCookie(cookie);
            }
            res.put("username", mname);
            request.getSession().setAttribute("member", (Object)member);
        }
        else {
            res.put("status", "0");
            res.put("msg", "\u7528\u6237\u540d\u6216\u8005\u5bc6\u7801\u9519\u8bef\uff01");
        }
        return res;
    }
    
    @RequestMapping({ "/member/loginout.html" })
    @ResponseBody
    public Map<String, Object> loginout(final HttpServletRequest request) {
        final Map<String, Object> loginoutMap = new HashMap<String, Object>();
        request.getSession().removeAttribute("member");
        request.getSession().invalidate();
        loginoutMap.put("status", 1);
        return loginoutMap;
    }
    
    @RequestMapping({ "admin/adminindex.html" })
    public Object admin(final HttpServletRequest request, final HttpServletResponse response, final Model model) throws IOException {
        final Member member = (Member)request.getSession().getAttribute("member");
        if (!member.getMname().equals("admin")) {
            response.setCharacterEncoding("utf-8");
            response.setContentType("text/html;charset=utf-8;");
            final PrintWriter writer = response.getWriter();
            writer.print("<script>alert('\u6ca1\u6709\u8bbf\u95ee\u6743\u9650\uff01');parent.location.href='" + request.getContextPath() + "/index.html'</script>");
            return false;
        }
        return String.valueOf(request.getContextPath()) + "/admin/adminindex";
    }
    
    @RequestMapping({ "/admin/memberlist.html" })
    public String memberlistPage() {
        return "admin/member/membermanage";
    }

安装部署需求

eclipse、idea运行启动

系统部署

系统开发后,在生产环境配置项目运行环境,具体步骤如下:
安装linux或者windows10操作系统;
安装JDK1.8并配置环境变量;
安装MySQL5.7版本以上版本数据库,创建数据库并执行脚本创建表;
在eclipse中编辑进行打包;
下载并配置Tomcat8.0服务器,配置系统服务,上传项目打包文件

本项目用到的技术和框架

1.开发语言:Java
2.开发模式:B/S
3.数据库:MySQL
4.框架:jsp+SSM

本项目中的关键点

此系统的开发采用java语言开发,基于B/S结构,这些开发环境使系统更加完善。使用到的工具和技术都是开源免费的。

环境工具

开发工具 Eclipse/IDEA
语言 JDK1.8 、jsp、CSS、SSM
硬件:笔记本电脑;
软件:Tomcat8.0 Web服务器、Navicat数据库客户端、MySQL;
操作系统:Windows 10;
其它软件:截图工具、常用浏览器;
以上是本系统的部分功能展示,如果你的选题正好相符,那么可以做毕业设计或课程设计使用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于ssm的社区疫情返乡管控系统设计实现 的相关文章

  • Java线程池的一点总结

    主要用来做两件事 1 利用多核CPU的并发处理能力提高工作效率 2 避免线程的频繁创建和销毁带来的开销来提高工作效率 任务提交到线程池后的处理逻辑 1 提交任务到线程池 2 核心线程池是否已满 xff0c 没满则创建核心线程数个线程来处理任
  • 基于移动品台的产品追溯系统设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 今天给大家介绍一篇基于javaWeb的汽车订票系统的设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 在线考试系统

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 今天给大家介绍一篇基基于SSM超市管理系统的设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 大家介绍一篇学生选课系统的设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 健身中心健身管理系统的设计与实现(源码+数据脚本+论文+技术文档)

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 缘来交友网站的设计与实现(源码+数据库+论文+开题报告+说明文档)

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 基于SSM的药店管理系统

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • VirtualBox 网络连接一些坑

    virtualbox启动虚拟机报错Failed to open create the internal network 39 HostInterfaceNetworking VirtualBox Host 正确步骤 xff1a 先去掉Dri
  • 基于jsp的学生培训管理系统

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • C语言输出所有的水仙花数

    输出所有的 水仙花数 所谓 水仙花数 是指一个3位数 xff0c 其各位数字立方之和等于该数本身 例如 xff0c 153是一个水仙花数 xff0c 因为153 61 1 43 5 xff0b 3 解题思路 xff1a 水仙花数的解题思路是
  • python如何实现浪漫烟花代码(附源代码)

    这篇文章主要为大家详细介绍了python实现浪漫的烟花秀 xff0c 具有一定的参考价值 xff0c 感兴趣的小伙伴们可以参考一下 无意中看到一段用Tkinter库写的放烟花的程序 xff0c 就跟着跑了一遍 span class toke
  • java烟花代码_java代码放烟花(附源码)

    本文实例讲述了JavaScript实现的简单烟花特效代码 分享给大家供大家参考 xff0c 具体如下 xff1a 这是一款JavaScript烟花特效 xff0c 过年的时候放到你的网页上祝贺大家牛年大吉吧 xff0c 是不是很不错 xff
  • 基于JavaWeb的物流管理系统的设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 基于JavaWeb的校园故障报修系统(源码+数据脚本+论文+技术文档)

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 开发一个App大概要多少钱?只讲干货

    结合自己的各种采坑失败经验以及周边个别成功试水经验 xff0c 站在个人角度给出一些理解 APP制作有多种形式 xff0c 所以需要的成本差异较大 1 寻找外包公司 2 模板APP xff08 内行叫SAAS xff09 3 自己组建团队
  • 基于springboot的汽车租赁管理系统的设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 基于SSM的亲子活动平台的搭建与实现(源码+数据脚本+论文+技术文档)

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 基于ASP学生资助管理系统的设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做ASP程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情当

随机推荐

  • LevelDb 资料整理

    z 2014 08 29 09 46 17 L 124 39 51223 BG57IV3 64 XCL T161676003 K F4029401865 T6 L94 R5 V74 leveldb介绍 http code google co
  • 网上预约挂号系统的设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 基于SSM的学籍证明打印系统设计与实现。

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 开心公寓房屋出租管理系统的设计与实现(系统源码+技术文档+论文)

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 基于ssm的旅游网站的设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 保健品销售网站

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 基于SSM的医院医疗管理系统的设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 学生选课系统

    项目描述 通过项目背景的分析以及了解到现在学校面临的问题 xff0c 特别需要一个选课管理系统保证学生信息以及各种课程成绩的准确性和实效性 xff0c 通过利用计算机的高速计算和快速的统计分析 xff0c 保证学生信息的最新记录 从教职工的
  • 基于Java Web的传智播客crm企业管理系统的设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 校园论坛网站设计设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 基于springboot信用分析管理系统设计与实现。

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • ubuntu 查询 修改 时间

    ubuntu 查询 修改 时间 date 用法 xff1a date 选项 43 格式 或 xff1a date u utc universal MMDDhhmm CC YY ss 以给定的格式显示当前时间 xff0c 或是设置系统日期 d
  • 基于ssm的小区物业管理系统

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 基于springboot的家装平台设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 基于C#的公交充值管理系统的设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做C 程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情当下
  • 基于ssm的宠物商城网站设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 基于JSP网上书城的设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 基于springboot的作业管理系统设计与实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 基于springboot的鲜花销售商城网站

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情
  • 基于ssm的社区疫情返乡管控系统设计实现

    项目描述 临近学期结束 xff0c 还是毕业设计 xff0c 你还在做java程序网络编程 xff0c 期末作业 xff0c 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 这里根据疫情