SpringBoot就业管理系统-计算机毕业设计源码96169

摘 要

在网络飞速发展的信息时代,各个行业都离不开信息的处理,在这种时代背景下,学校以学生的信息管理为导向,企业以学生的就业持续创新,根据这两点,为当前形势最重要的大学生就业信息设计一个就业信息管理系统就很有必要。

就业管理系统主要功能模块包括系统用户、企业信息管理、招聘信息管理、岗位类型管理、投递记录管理、面试通知管理、签约信息管理、解约信息管理、问卷信息管理、问卷填写管理、学校分析管理、学院分析管理、班级分析管理、系统管理、通知公告管理、交流管理等,采取面对对象的开发模式进行软件的开发和硬体的架设,能很好的满足实际使用的需求,完善了对应的软体架设以及程序编码的工作。本次软件设计中,以用户的实际操作流程作为整体开发的出发点,采用MVC设计模式,结合Java开发语言对软件开发原理,数据库采用目前流行的开源关系型数据库MySQL,使用SpringBoot框架技术整体开发源程序,最终实现一个就业管理系统。

本次报告,首先分析了研究的背景、作用、意义,为研究工作的合理性打下了基础。针对就业管理系统的各项需求以及技术问题进行分析,证明了系统的必要性和技术可行性,然后对设计系统需要使用的技术软件以及设计思想做了基本的介绍,最后来实现就业管理系统和部署运行使用它。

关键词:就业信息管理;SpringBoot框架;Java开发语言;MySQL数据库

SpringBoot Employment Management System

Abstract

In the rapidly developing information age of the internet, various industries cannot do without information processing. In this era, schools are guided by student information management, and enterprises are continuously innovating for student employment. Based on these two points, it is necessary to design an employment information management system for the most important employment information of college students in the current situation.

The main functional modules of the employment management system include system users, enterprise information management, recruitment information management, job type management, delivery record management, interview notification management, contract signing information management, termination information management, questionnaire information management, questionnaire filling management, school analysis management, college analysis management, class analysis management, system management, notification and announcement management, communication management, etc, Adopting an object-oriented development model for software development and hardware setup can effectively meet practical usage needs and improve the corresponding software setup and program coding work. In this software design, the actual user operation process is taken as the starting point for overall development. MVC design pattern is adopted, combined with Java development language for software development principles. The database adopts the popular open-source relational database MySQL, and the SpringBoot framework technology is used to develop the source program as a whole. Finally, an employment management system is implemented.

This report first analyzes the background, role, and significance of the research, laying the foundation for the rationality of the research work. An analysis was conducted on the various requirements and technical issues of the employment management system, demonstrating the necessity and feasibility of the system. Then, a basic introduction was made to the technical software and design ideas required for designing the system. Finally, the implementation and deployment of the employment management system were carried out.

Key words:Employment information management; SpringBoot framework; Java development language; MySQL database

目  录

第1章 绪论

1.1 研究背景与意义

1.2 开发现状

1.3 本文结构

第2章 系统分析

2.1 B/S结构

2.2 MySQL数据库

2.3 Java语言

2.4 SpringBoot框架

2.5 Tomcat开源服务器

第3章 系统分析

3.1 可行性分析

3.1.1 技术可行性分析

3.1.2 经济可行性分析

3.1.3 操作可行性分析

3.2 需求分析

3.2.1 功能性需求分析

3.2.2 非功能性分析

3.3 系统用例分析

3.4 系统业务流程分析

第4章 系统设计

4.1 系统功能模块设计

4.2 数据库设计

4.2.1 概念模型设计

4.2.2 逻辑结构设计

第5章 系统实现

5.1 前台用户模块的实现

5.1.1 用户首页模块

5.1.2 用户登录模块

5.1.3 个人资料模块

5.1.4 招聘信息模块

5.1.5 问卷信息模块

5.1.6 学生用户个人中心模块

5.2 后台管理模块的实现

5.2.1 企业用户后台管理模块

5.2.2 教师用户后台管理模块

5.2.3 管理员系统用户管理模块

5.2.4 系统管理模块

5.2.5 通知公告管理模块

5.2.6 交流管理模块

第6章 系统测试

6.1 测试目的

6.2 测试用例 

6.3 测试结果

第7章 结论

参考文献

致谢

  1. 绪论
    1. 研究背景与意义

当今网络普及,信息技术猛速的发展着,社会的各个领域都在紧跟时代的脚步不断创新,不断改革,已经发生了巨大的变化,从以往的人工手动来处理信息数据,到现在的计算机智能化处理信息数据,得到了质的改变,将繁琐、耗时大、易泄密、难保存等缺点改变成了操作快速、省时省力、高保密性、易保存等优点,这让社会的每一领域都受益。

在有限的时间里,招聘会是大多数企业使用的与大学生面对面的交流机会。虽然一些招聘会提前发布或者其他的宣传方式,但是仍然有很多企业和大学生擦肩而过,一些人不得不放弃一些重要的事情参加招聘会。由于参加招聘会的人数众多,整个流程的流动性,管理难度很大。将会有大量的招聘会和有限的展位。企业要一个接一个地与学生见面是非常困难的,所以不能更好地分配人力资源。现下全国很多企业都已经把自己企业内的软件朝着智能化的方向在转移,尤其是在朝着符合自己企业特色的网页端方向来扩展。在现实社会中,迫切需要第三方来弥补企业与人才的差距,弥补招聘中各种不足之处。在这种条件下,将网络优势与招聘紧密地结合起来,开发了就业管理系统。

    1. 开发现状

随着网络信息化时代的到来,在线招聘作为一种新的招聘形式迅速崛起,并很快得到了多数招聘会者和用人单位的支持和应用。在线招聘的优势,首先体现在为招聘会者和用人单位之间提供一个相互交流沟通的平台。在线招聘的兴起也是的招聘会和招聘的观念和方式较之以往发生了很大的变化。伴随着互联网的快速发展,中国网民数量的迅速增长,在线招聘的用户数量也随之增加。

前程无忧、中华英才和智联招聘被称为中国网络招聘三巨头。数据显示,这三大招聘网站的市场营收份额达61.6%。其他行业型、搜索型、社交型等网站数量及营收规模虽有所增加,但是短期内很难撼动这三巨头的网络招聘地位。

招聘企业的信息发布、品牌宣传、简历筛选、人员初试安排等需求,决定了细分招聘网站将是未来的发展趋势。

相比国外就业系统,其专业化营销和电话销售、个性简历的模板化处理、行业细分、地址簿的充分利用,本土化服务等等差距很大,国外通过这种专业化、本土化服务能够提供客户满意的增值服务,像Monster,其个人会员的收入甚至占到了总收入的三分之一,而国内的在线招聘公司完全可以从现有规模中挖掘潜力。

未来可以预见的是,在线招聘将会进一步细分,超越同质化竞争的一个有力武器就是找到细分市场做专业化服务。地方和行业这样细分的在线招聘公司将会有更大的机会,它们能够更加贴近用户,提供本土化服务。

    1. 本文结构

论文将分层次经行编排,除去论文摘要、目录、致谢、文献参考部分,正文部分还会对网站需求做出分析,以及阐述大体的设计和实现的功能,最后罗列部分调测记录,论文主要架构如下:

第1章 交代了项目的背景以及开发的实际目的。

第2章 对本系统的所采用的开发技术和环境进行介绍。

第3章 阐述了系统分析部分,包括系统总体需求描述、功能性角度分析系统需求、非功能性等各个方面分析系统是否可以实现。

第4章 阐明了系统的具体实现,介绍系统的各个模块的具体实现。

第5章 罗列了部分系统调试与测试的记录。

第6章 对系统进行了认真的总结,以此对未来有一个新的展望。

  1. 系统分析
    1. B/S结构

就业管理系统通过B/S架构进行实现,基于浏览器和服务器方式进行开发的系统架构,只有把应用程序部署到服务器端,客户端才可以借助导航网址进行系统访问[1]。

基于Java技术开发的B/S架构系统,需要借助Tomcat服务器应用程序进行部署运行。用户访问系统的时候,通过浏览器向应用程序服务器端发起访问请求,服务器端的程序在接到用户请求以后,服务器端应用程序对客户请求做出相应,在调用服务器端的业务逻辑程序完成和数据库端的交互,进一步生成相应的HTML/XML数据,最终把结果反馈给浏览器端用户[3]。

在该系统的开发中,开发模式采用B/S架构技术进行实现,通过部署服务器端应用程序,实现用户通过网站域名或者内网IP地址访问系统,实现系统中数据的动态化呈现和管理,加之页面效果的动态化呈现,不仅提升了页面的表现力,而且管理者可以随时更新系统中的各种信息,充分满足管理者和访问用户之间的信息交互[4]。

    1. MySQL数据库

无论是在个人学习中还是在企业办公中,MySQL数据库一直都是一种具有强大扩展性,强大功能的数据信息管理工具和处理工具[5]。由于MySQL数据库的存在,将Windows系统所拥有的优点展现的淋漓尽致,而且能够对Win进行图形化的管理,使得使用者在操作系统的过程中对项目能够做到一目了然;而其强大的储存功能更是为系统工程运作提供了保障。MySQL不仅仅是一种优秀的数据信息处理工具,更是一个拥有独立的,完整的数据库语言的管理平台[6]。

    1. Java语言

Java是一种面向对象的程序设计语言,类是Java程序的基本组成单元,类中又包含了属性和方法,在类中又可以创建无数个对象。类中包含的主要成员是字段和方法,字段是指一种数据变量,方法是指对字段进行操作的集合,包括给其他变量赋值、调用方法等[7]。

    1. SpringBoot框架

Spring框架是Java平台上的一种开源应用框架[8],提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。Spring框架具有面向切面编程(AOP)框架,SpringAOP框架基于代理模式,同时运行时可配置;AOP框架主要针对模块之间的交叉关注点进行模块化。Spring框架的AOP框架仅提供基本的AOP特性,虽无法与AspectJ框架相比,但通过与AspectJ的集成,也可以满足基本需求[9]。

    1. Tomcat开源服务器

Tomcat是Apache下的一个核心项目,最新的Servlet 和JSP 规范总是能在其中得到体现。本系统是采用Tomcat6来开发的,目前来说广大编程员都喜欢使用它,所以说现在Tomcat是比较流行的免费的开源Web 应用服务器。它不仅拥有底层技术先进、开发性能稳定、运行时所占系统资源又很小、扩展性好等系统常用的功能;而且它的底层代码是面向所有开发人员的就好像现在的Linux系统一样,编程人员可以自由地往其中加入新的功能,从而促使Tomcat一直处在不断完善和改进的过程中[10]。

  1. 系统分析
    1. 可行性分析

在软件开发的过程中,可行性分析是至关重要的,它旨在评估问题的可行性,以便尽可能快地解决,同时也要考虑到不同的解决方案的优势和劣势,以及实施这些方案所带来的经济效益。通过对就业管理系统的可行性分析,我们可以从技术、操作和经济三个方面来评估其可行性,从而为其提供有效的支持和保障。

      1. 技术可行性分析

所谓技术可行性,是指能否在有限的时间内实现预定的功能。在开发和设计中是否有未解决的问题。完成的项目能否很好地应用,如果有任何不足之处,后期的维护是否会有较大的困难。经过对该系统的评估,确定现有的技术可以达到目标。通过使用Java技术来创建动态的页面,采取低耦合的架构,搭载灵活的数据库,以及强劲的服务器,我们能够显著地改善系统的性能。这表明,我们不仅要追求理论上的目标,还要在实践中不断探索。

      1. 经济可行性分析

就业管理系统采用Java和MySQL技术,这样可以有效地降低软硬件的开发与维护费用,同时又能够让用户更加轻松地访问网站,从而提高服务质量。此外,该网站的推出,可以有效地降低运营者的劳动强度,为企业带来更多的经济效益。虽然就业西悉尼系统的构建并非特别困难,但由于它的投入相比较少,而且能够带来更高的效率,因此,我们认为这个系统的建立具有很强的可持续性,而且能够带来更高的经济效益,而且比起日常的维护与管理更具有价值。

      1. 操作可行性分析

就业管理系统的前台页面简洁易懂,无论是系统管理员还是学生用户,只要电脑连接到网络,就可以轻松访问网站,而且不需要任何操作指导,只要输入正确的URL地址,就可以轻松完成所有的操作。由于无需任何复杂的环境配置,这个系统非常简单,易于操作,因此它是一个非常实用的工具。

    1. 需求分析
      1. 功能性需求分析

就业管理系统我划分为了学生用户模块、企业用户模块、教师用户和管理员模块这四大部分。

学生用户管理模块:

(1)用户注册登录:游客可以随时进入到系统中,对系统中的信息浏览,但是想要实现投递简历、填写问卷等操作,就必须有这个系统的账号,如果没有账号的话,可以注册用户进行相关的操作,同时用户还可以通过“我的”这个按钮对个人信息以及操作的信息进行管控。

(2)查看就业管理系统的前台首页信息:就业管理系统的首页信息包含了首页、留言论坛、通知公告、招聘信息、问卷信息、我的账户、个人中心等。

(3)留言论坛:用户点击“留言论坛”菜单显示所有的留言论坛信息,可以按照分类查看帖子信息,或者输入关键词进行局部搜索,点击可以进入帖子的详细展示界面,在此界面用户可以点赞、收藏、评论,也可以点击“发布内容”输入帖子信息进行发帖。

(4)通知公告:当用户点击“通知公告”这一菜单按钮,会显示管理员在后台发布的所有的通知公告,可以查看详情。

(5)招聘信息:用户可以查看所有的招聘信息,包括企业名称、企业用户、招聘岗位、岗位类型、岗位要求、薪资待遇等。支持通过搜索关键词的方式对招聘信息进行查询,在查询到自己想要了解的招聘信息的时候,可以进入查看详细的介绍,在招聘信息详情这个界面,同时支持用户对喜欢的招聘信息进行投递简历、点赞、收藏以及评论的功能。

(6)问卷信息:用户可以查看所有的问卷信息,包括问卷标题、发布日期、问卷附件、教师用户、内容详情等。支持通过搜索关键字对问卷信息进行查询,在查询到自己想要了解的问卷信息的时候,可以进入查看详细的介绍,在问卷信息详情这个界面,同时支持用户对问卷信息进行填写问卷、点赞、收藏、评论的功能。

(7)我的账户:在前台点击“我的”下面的“我的账户”可以对个人资料+密码修改进行管控。

(8)个人中心:学生用户点击右上角的“用户名”,然后点击“个人中心”可查看个人首页、投递记录、面试通知、签约信息、解约信息、问卷填写和自己收藏的信息并对其进行管理。

企业用户管理模块:

(1)登录:企业用户通过管理员添加的账号密码登录系统后台。

(2)企业信息管理:企业用户点击“企业信息管理”可以查看所有的企业信息,点击可以查看详情,支持增删改查。

(3)招聘信息管理:企业用户点击“招聘信息管理”列表,可以对前台展示的招聘信息进行增删改查。

(4)投递记录管理:企业用户点击“投递记录管理”可以查看学生用户所有的投递信息,点击详情进行审核回复,发起面试通知。

(3)签约信息管理:企业用户点击“签约信息管理”可以查看所有的签约信息,支持增删改查。

(4)解约信息管理:企业用户点击“解约信息管理”可以查看所有的解约信息,支持增删改查。

教师用户管理模块:

(1)登录:教师用户通过管理员添加的账号密码登录系统后台。

(2)系统用户:教师用户可以对系统的学生用户进行信息管理。

(3)签约信息管理:教师用户点击“签约信息管理”可以查看所有的签约信息,支持增删改查。

(4)解约信息管理:教师用户点击“解约信息管理”可以查看所有的解约信息,支持增删改查。

(5)问卷信息管理:教师用户点击“问卷信息管理”列表,可以对前台展示的问卷信息进行增删改查。

(6)问卷填写管理:教师用户点击“问卷填写管理”列表,可以对前台学生用户提交的问卷填写信息进行增删改查。

管理员管理模块:系统用户、企业信息管理、招聘信息管理、岗位类型管理、投递记录管理、面试通知管理、签约信息管理、解约信息管理、问卷信息管理、问卷填写管理、学校分析管理、学院分析管理、班级分析管理、系统管理、通知公告管理、交流管理

(1)登录:管理员在后台可以输入用户名+密码进行登录,管理员的用户名和密码是在数据库中直接设定好的。

(2)系统用户:管理员可以对就业管理系统中的管理员、学生用户、教师用户和企业用户进行增删改查。

(3)企业信息管理:管理员点击“企业信息管理”会显示出所有的企业信息,支持增删改查。

(4)招聘信息管理:管理员点击“招聘信息管理”会显示出所有的招聘信息,支持增删改查。

(5)岗位类型管理:管理员可以对招聘岗位所属的类型进行添加、修改。

(6)投递记录管理:管理员点击“投递记录管理”会显示出系统所有的投递记录信息,支持增删改查。

(7)面试通知管理:管理员点击“面试通知管理”会显示出系统所有的面试通知信息,支持增删改查。

(8)签约信息管理:管理员点击“签约信息管理”会显示出系统所有的签约信息,支持增删改查。

(9)解约信息管理:管理员点击“解约信息管理”会显示出系统所有的解约信息,支持增删改查。

(10)问卷信息管理:管理员点击“问卷信息管理”会显示出所有的问卷信息问卷信息,支持租赁编号、租赁时间或审核状态对问卷信息信息进行查询,如果想要添加新的问卷信息信息,点击“添加”按钮,输入详细信息,点击“提交”按钮就可以添加了,同时可以选择某一条问卷信息信息,点击“删除”进行删除。

(11)问卷填写管理:管理员点击“问卷填写管理”会显示出系统所有用户的问卷填写信息,支持增删改查。

(12)学校分析管理:管理员点击“学校分析管理”会显示出所有的学校分析数据统计图,支持增删改查。

(13)学院分析管理:管理员点击“学院分析管理”会显示出所有的学院分析数据统计图,支持增删改查。

(14)班级分析管理:管理员点击“班级分析管理”会显示出所有的班级分析数据统计图,支持增删改查

(15)系统管理:管理员点击“系统管理”菜单可以对首页展示的轮播图进行管理。

(16)通知公告管理:管理员点击“通知公告管理”菜单可以查看到系统中的所有通知公告信息,对已经存在的通知公告,管理员可以修改,也可以添加新的通知公告或者删除通知公告。

17)交流管理:管理员可以对系统前台展示的留言论坛以及留言论坛所属的分类进行管控。

3.2.2 非功能性分析

就业管理系统的非功能性需求,比如就业管理系统的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如3-1表格中:

3-1就业管理系统非功能需求表

安全性

主要指就业管理系统数据库的安装,数据库的使用和密码的设定必须合乎规范。

可靠性

可靠性是指就业管理系统能够按照用户提交的指示进行操作,经过测试,可靠性90%以上。

性能

性能是影响就业管理系统占据市场的必要条件,所以性能最好要佳才好。

可扩展性

比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。

易用性

用户只要跟着就业管理系统的页面展示内容进行操作,就可以了。

可维护性

就业管理系统开发的可维护性是非常重要的,经过测试,可维护性没有问题。

    1. 系统用例分析

就业管理系统的完整UML用例图分别是图3-1、图3-2、图3-3和图3-4。

图3-1就是学生用户角色的用例展示。

图3-1 就业管理系统学生用户角色用例图

图3-2就是教师用户角色的用例展示。

图3-2 就业管理系统教师用户角色用例图

图3-3就是企业用户角色的用例展示。

图3-3 就业管理系统企业用户角色用例图

图3-4就是管理员角色的用例展示。

图3-4就业管理系统管理员角色用例图

    1. 系统业务流程分析

管理员权限下的工作流程主要为:管理员通过系统界面提供登录按钮并点击,转入管理员登录界面,并在界面上填入相应的管理员账户和管理员密码,进入管理员权限下的后台系统,并且在系统左侧导航条设置了相应的操作功能。

用户权限下的工作流程主要为:用户通过管理员添加的登录信息功能,在登录界面进行个人身份验证,并且进入用户的个人后台界面,并进行相应的操作。

就业管理系统的业务流程如下图所示。

图3-5 系统业务流程图

  1. 系统设计
    1. 系统功能模块设计

在上一章节中主要对系统的功能性需求和非功能性需求进行分析,并且根据需求分析了本就业管理系统中的用例。那么接下来就要开始对本就业管理系统的架构、主要功能和数据库开始进行设计。就业管理系统根据前面章节的需求分析得出,其总体设计模块图如图4-1所示。

图4-1 系统功能结构图

    1. 数据库设计
      1. 概念模型设计

借助目前的UML建模软件,ER图使其他用户可以快速轻松地了解系统的功能以及他们之间的关系。根据就业信息的系统分析结果,结合系统的功能模块设计,设计出符合系统的各信息实体。

系统的主要实体间关系E-R图如下图所示。

图4-2 系统E-R图

      1. 逻辑结构设计

数据库是就业管理系统的数据处理的基础,也是为界面数据的展示与存储的关键。就业管理系统的数据库表如下。

表access_token (登陆访问时长)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

token_id

int

10

0

N

Y

临时访问牌ID

2

token

varchar

64

0

Y

N

临时访问牌

3

info

text

65535

0

Y

N

4

maxage

int

10

0

N

N

2

最大寿命:默认2小时

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

7

user_id

int

10

0

N

N

0

用户编号:

表auth (用户权限管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

auth_id

int

10

0

N

Y

授权ID:

2

user_group

varchar

64

0

Y

N

用户组:

3

mod_name

varchar

64

0

Y

N

模块名:

4

table_name

varchar

64

0

Y

N

表名:

5

page_title

varchar

255

0

Y

N

页面标题:

6

path

varchar

255

0

Y

N

路由路径:

7

position

varchar

32

0

Y

N

位置:

8

mode

varchar

32

0

N

N

_blank

跳转方式:

9

add

tinyint

3

0

N

N

1

是否可增加:

10

del

tinyint

3

0

N

N

1

是否可删除:

11

set

tinyint

3

0

N

N

1

是否可修改:

12

get

tinyint

3

0

N

N

1

是否可查看:

13

field_add

text

65535

0

Y

N

添加字段:

14

field_set

text

65535

0

Y

N

修改字段:

15

field_get

text

65535

0

Y

N

查询字段:

16

table_nav_name

varchar

500

0

Y

N

跨表导航名称:

17

table_nav

varchar

500

0

Y

N

跨表导航:

18

option

text

65535

0

Y

N

配置:

19

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表class_analysis (班级分析)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

class_analysis_id

int

10

0

N

Y

班级分析ID

2

analysis_title

varchar

64

0

Y

N

分析标题

3

class_name

varchar

64

0

Y

N

班级名称

4

employment_numbers

int

10

0

Y

N

0

就业人数

5

analysis_remarks

text

65535

0

Y

N

分析备注

6

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表collect (收藏)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

collect_id

int

10

0

N

Y

收藏ID:

2

user_id

int

10

0

N

N

0

收藏人ID:

3

source_table

varchar

255

0

Y

N

来源表:

4

source_field

varchar

255

0

Y

N

来源字段:

5

source_id

int

10

0

N

N

0

来源ID:

6

title

varchar

255

0

Y

N

标题:

7

img

varchar

255

0

Y

N

封面:

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表college_analysis (学院分析)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

college_analysis_id

int

10

0

N

Y

学院分析ID

2

analysis_title

varchar

64

0

Y

N

分析标题

3

college_name

varchar

64

0

Y

N

学院名称

4

employment_numbers

int

10

0

Y

N

0

就业人数

5

analysis_remarks

text

65535

0

Y

N

分析备注

6

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表comment (评论)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

comment_id

int

10

0

N

Y

评论ID:

2

user_id

int

10

0

N

N

0

评论人ID:

3

reply_to_id

int

10

0

N

N

0

回复评论ID:空为0

4

content

longtext

2147483647

0

Y

N

内容:

5

nickname

varchar

255

0

Y

N

昵称:

6

avatar

varchar

255

0

Y

N

头像地址:[0,255]

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

9

source_table

varchar

255

0

Y

N

来源表:

10

source_field

varchar

255

0

Y

N

来源字段:

11

source_id

int

10

0

N

N

0

来源ID:

表delivery_records (投递记录)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

delivery_records_id

int

10

0

N

Y

投递记录ID

2

enterprise_name

varchar

64

0

Y

N

企业名称

3

enterprise_users

int

10

0

Y

N

0

企业用户

4

recruitment_positions

varchar

64

0

Y

N

招聘岗位

5

job_type

varchar

64

0

Y

N

岗位类型

6

student_users

int

10

0

Y

N

0

学生用户

7

student_name

varchar

64

0

Y

N

学生姓名

8

student_gender

varchar

64

0

Y

N

学生性别

9

student_phone_number

varchar

64

0

Y

N

学生电话

10

teacher_users

int

10

0

Y

N

0

教师用户

11

resume_file

varchar

255

0

Y

N

简历文件

12

delivery_notes

text

65535

0

Y

N

投递备注

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表enterprise_information (企业信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

enterprise_information_id

int

10

0

N

Y

企业信息ID

2

enterprise_name

varchar

64

0

Y

N

企业名称

3

enterprise_users

int

10

0

Y

N

0

企业用户

4

user_name

varchar

64

0

Y

N

用户姓名

5

contact_phone_number

varchar

64

0

Y

N

联系电话

6

enterprise_scale

varchar

64

0

Y

N

企业规模

7

enterprise_address

text

65535

0

Y

N

企业地址

8

enterprise_introduction

text

65535

0

Y

N

企业介绍

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表enterprise_users (企业用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

enterprise_users_id

int

10

0

N

Y

企业用户ID

2

enterprise_name

varchar

64

0

Y

N

企业名称

3

user_name

varchar

64

0

Y

N

用户姓名

4

user_gender

varchar

64

0

Y

N

用户性别

5

contact_phone_number

varchar

16

0

Y

N

联系电话

6

examine_state

varchar

16

0

N

N

未审核

审核状态

7

user_id

int

10

0

N

N

0

用户ID

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表forum (论坛)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

forum_id

mediumint

8

0

N

Y

论坛id

2

display

smallint

5

0

N

N

100

排序

3

user_id

mediumint

8

0

N

N

0

用户ID

4

nickname

varchar

16

0

Y

N

昵称:[0,16]

5

praise_len

int

10

0

Y

N

0

点赞数

6

hits

int

10

0

N

N

0

访问数

7

title

varchar

125

0

N

N

标题

8

keywords

varchar

125

0

Y

N

关键词

9

description

varchar

255

0

Y

N

描述

10

url

varchar

255

0

Y

N

来源地址

11

tag

varchar

255

0

Y

N

标签

12

img

text

65535

0

Y

N

封面图

13

content

longtext

2147483647

0

Y

N

正文

14

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

15

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

16

avatar

varchar

255

0

Y

N

发帖人头像:

17

type

varchar

64

0

N

N

0

论坛分类:[0,1000]用来搜索指定类型的论坛帖

表forum_type (论坛分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

type_id

smallint

5

0

N

Y

分类ID:[0,10000]

2

name

varchar

16

0

N

N

分类名称:[2,16]

3

description

varchar

255

0

Y

N

描述:[0,255]描述该分类的作用

4

url

varchar

255

0

Y

N

外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置

5

father_id

smallint

5

0

N

N

0

上级分类ID:[0,32767]

6

icon

varchar

255

0

Y

N

分类图标:

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表hits (用户点击)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

hits_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

表interview_notification (面试通知)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

interview_notification_id

int

10

0

N

Y

面试通知ID

2

enterprise_name

varchar

64

0

Y

N

企业名称

3

enterprise_users

int

10

0

Y

N

0

企业用户

4

recruitment_positions

varchar

64

0

Y

N

招聘岗位

5

job_type

varchar

64

0

Y

N

岗位类型

6

student_users

int

10

0

Y

N

0

学生用户

7

student_name

varchar

64

0

Y

N

学生姓名

8

student_gender

varchar

64

0

Y

N

学生性别

9

student_phone_number

varchar

64

0

Y

N

学生电话

10

teacher_users

int

10

0

Y

N

0

教师用户

11

interview_date

date

10

0

Y

N

面试日期

12

interview_location

varchar

64

0

Y

N

面试地点

13

notification_content

text

65535

0

Y

N

通知内容

14

interview_results

varchar

64

0

Y

N

面试结果

15

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

16

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表job_type (岗位类型)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

job_type_id

int

10

0

N

Y

岗位类型ID

2

job_type

varchar

64

0

Y

N

岗位类型

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表notice (公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

notice_id

mediumint

8

0

N

Y

公告id:

2

title

varchar

125

0

N

N

标题:

3

content

longtext

2147483647

0

Y

N

正文:

4

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

5

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表praise (点赞)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

praise_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

status

bit

1

0

N

N

1

点赞状态:1为点赞,0已取消

表questionnaire_filling (问卷填写)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

questionnaire_filling_id

int

10

0

N

Y

问卷填写ID

2

questionnaire_title

varchar

64

0

Y

N

问卷标题

3

teacher_users

int

10

0

Y

N

0

教师用户

4

student_users

int

10

0

Y

N

0

学生用户

5

student_name

varchar

64

0

Y

N

学生姓名

6

student_attachments

varchar

255

0

Y

N

学生附件

7

questionnaire_notes

text

65535

0

Y

N

问卷备注

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表questionnaire_information (问卷信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

questionnaire_information_id

int

10

0

N

Y

问卷信息ID

2

questionnaire_title

varchar

64

0

Y

N

问卷标题

3

release_date

date

10

0

Y

N

发布日期

4

questionnaire_attachment

varchar

255

0

Y

N

问卷附件

5

teacher_users

int

10

0

Y

N

0

教师用户

6

cover_photo

varchar

255

0

Y

N

封面图片

7

content_details

longtext

2147483647

0

Y

N

内容详情

8

praise_len

int

10

0

N

N

0

点赞数

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表recruitment_information (招聘信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

recruitment_information_id

int

10

0

N

Y

招聘信息ID

2

enterprise_name

varchar

64

0

Y

N

企业名称

3

enterprise_users

int

10

0

Y

N

0

企业用户

4

recruitment_positions

varchar

64

0

Y

N

招聘岗位

5

job_type

varchar

64

0

Y

N

岗位类型

6

job_requirements

varchar

64

0

Y

N

岗位要求

7

salary_and_benefits

varchar

64

0

Y

N

薪资待遇

8

cover_photo

varchar

255

0

Y

N

封面图片

9

content_details

longtext

2147483647

0

Y

N

内容详情

10

hits

int

10

0

N

N

0

点击数

11

praise_len

int

10

0

N

N

0

点赞数

12

recommend

int

10

0

N

N

0

智能推荐

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表school_analysis (学校分析)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

school_analysis_id

int

10

0

N

Y

学校分析ID

2

analysis_title

varchar

64

0

Y

N

分析标题

3

school_name

varchar

64

0

Y

N

学校名称

4

employment_numbers

int

10

0

Y

N

0

就业人数

5

analysis_remarks

text

65535

0

Y

N

分析备注

6

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表sensitive_vocabulary (敏感词汇)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

sensitive_vocabulary_id

int

10

0

N

Y

敏感词汇ID

2

sensitive_vocabulary

varchar

64

0

Y

N

敏感词汇

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表slides (轮播图)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

slides_id

int

10

0

N

Y

轮播图ID:

2

title

varchar

64

0

Y

N

标题:

3

content

varchar

255

0

Y

N

内容:

4

url

varchar

255

0

Y

N

链接:

5

img

varchar

255

0

Y

N

轮播图:

6

hits

int

10

0

N

N

0

点击量:

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表student_users (学生用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

student_users_id

int

10

0

N

Y

学生用户ID

2

school_name

varchar

64

0

Y

N

学校名称

3

college_name

varchar

64

0

Y

N

学院名称

4

class_name

varchar

64

0

Y

N

班级名称

5

student_name

varchar

64

0

Y

N

学生姓名

6

student_gender

varchar

64

0

Y

N

学生性别

7

student_phone_number

varchar

16

0

Y

N

学生电话

8

examine_state

varchar

16

0

N

N

已通过

审核状态

9

user_id

int

10

0

N

N

0

用户ID

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表subscription_information (签约信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

subscription_information_id

int

10

0

N

Y

签约信息ID

2

enterprise_name

varchar

64

0

Y

N

企业名称

3

enterprise_users

int

10

0

Y

N

0

企业用户

4

recruitment_positions

varchar

64

0

Y

N

招聘岗位

5

job_type

varchar

64

0

Y

N

岗位类型

6

student_users

int

10

0

Y

N

0

学生用户

7

student_name

varchar

64

0

Y

N

学生姓名

8

student_gender

varchar

64

0

Y

N

学生性别

9

student_phone_number

varchar

64

0

Y

N

学生电话

10

teacher_users

int

10

0

Y

N

0

教师用户

11

contract_documents

varchar

255

0

Y

N

合约文件

12

contract_remarks

text

65535

0

Y

N

合约备注

13

signing_review

varchar

64

0

Y

N

签约审核

14

review_response

text

65535

0

Y

N

审核回复

15

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

16

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表teacher_users (教师用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

teacher_users_id

int

10

0

N

Y

教师用户ID

2

teachers_name

varchar

64

0

Y

N

教师姓名

3

teacher_gender

varchar

64

0

Y

N

教师性别

4

teachers_phone_number

varchar

16

0

Y

N

教师电话

5

examine_state

varchar

16

0

N

N

已通过

审核状态

6

user_id

int

10

0

N

N

0

用户ID

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表termination_information (解约信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

termination_information_id

int

10

0

N

Y

解约信息ID

2

enterprise_name

varchar

64

0

Y

N

企业名称

3

enterprise_users

int

10

0

Y

N

0

企业用户

4

recruitment_positions

varchar

64

0

Y

N

招聘岗位

5

job_type

varchar

64

0

Y

N

岗位类型

6

student_users

int

10

0

Y

N

0

学生用户

7

student_name

varchar

64

0

Y

N

学生姓名

8

student_gender

varchar

64

0

Y

N

学生性别

9

student_phone_number

varchar

64

0

Y

N

学生电话

10

teacher_users

int

10

0

Y

N

0

教师用户

11

contract_documents

varchar

255

0

Y

N

合约文件

12

termination_content

text

65535

0

Y

N

解约内容

13

termination_review

varchar

64

0

Y

N

解约审核

14

teachers_reply

text

65535

0

Y

N

教师回复

15

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

16

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表upload (文件上传)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

upload_id

int

10

0

N

Y

上传ID

2

name

varchar

64

0

Y

N

文件名

3

path

varchar

255

0

Y

N

访问路径

4

file

varchar

255

0

Y

N

文件路径

5

display

varchar

255

0

Y

N

显示顺序

6

father_id

int

10

0

Y

N

0

父级ID

7

dir

varchar

255

0

Y

N

文件夹

8

type

varchar

32

0

Y

N

文件类型

表user (用户账户:用于保存用户登录信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_id

mediumint

8

0

N

Y

用户ID:[0,8388607]用户获取其他与用户相关的数据

2

state

smallint

5

0

N

N

1

账户状态:[0,10](1可用|2异常|3已冻结|4已注销)

3

user_group

varchar

32

0

Y

N

所在用户组:[0,32767]决定用户身份和权限

4

login_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

上次登录时间:

5

phone

varchar

11

0

Y

N

手机号码:[0,11]用户的手机号码,用于找回密码时或登录时

6

phone_state

smallint

5

0

N

N

0

手机认证:[0,1](0未认证|1审核中|2已认证)

7

username

varchar

16

0

N

N

用户名:[0,16]用户登录时所用的账户名称

8

nickname

varchar

16

0

Y

N

昵称:[0,16]

9

password

varchar

64

0

N

N

密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成

10

email

varchar

64

0

Y

N

邮箱:[0,64]用户的邮箱,用于找回密码时或登录时

11

email_state

smallint

5

0

N

N

0

邮箱认证:[0,1](0未认证|1审核中|2已认证)

12

avatar

varchar

255

0

Y

N

头像地址:[0,255]

13

open_id

varchar

255

0

Y

N

针对获取用户信息字段

14

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

15

vip_level

varchar

255

0

Y

N

会员等级

16

vip_discount

double

11

2

Y

N

0.00

会员折扣

表user_group (用户组:用于用户前端身份和鉴权)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

group_id

mediumint

8

0

N

Y

用户组ID:[0,8388607]

2

display

smallint

5

0

N

N

100

显示顺序:[0,1000]

3

name

varchar

16

0

N

N

名称:[0,16]

4

description

varchar

255

0

Y

N

描述:[0,255]描述该用户组的特点或权限范围

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

register

smallint

5

0

Y

N

0

注册位置:

9

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

  1. 系统实现
    1. 前台用户模块的实现
      1. 用户首页模块

首页主要分别展示各个模块的最新动态,浏览者可以很清楚地看到不同模块的最新更新内容。并且系统首页每个部分可以跳转到相对应的模块,方便浏览者选择感兴趣的地方。

前端首页载入流程图如下所示。

5-1 首页载入流程

前端首页如下图所示。

图5-2 首页界面

      1. 用户登录模块

在登录界面中输入用户名+密码,然后选择相应的角色,点击“登录”按钮,系统会在用户数据库表中匹配相应用户的帐户,如果用户名+密码正确,则会登录到系统中每个用户的主管理界面,否则会提示相应的信息,如果是忘记了密码,请返回登录界面。

用户登录流程图如下所示。

图5-3登录流程图

系统登录界面如下所示。

图5-4系统登录界面

登录的逻辑代码如下所示。

/**

     * 登录

     * @param data

     * @param httpServletRequest

     * @return

     */

    @PostMapping("login")

    public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {

        log.info("[执行登录接口]");

        String username = data.get("username");

        String email = data.get("email");

        String phone = data.get("phone");

        String password = data.get("password");

        List resultList = null;

        Map<String, String> map = new HashMap<>();

        if(username != null && "".equals(username) == false){

            map.put("username", username);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }

        else if(email != null && "".equals(email) == false){

            map.put("email", email);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }

        else if(phone != null && "".equals(phone) == false){

            map.put("phone", phone);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }else{

            return error(30000, "账号或密码不能为空");

        }

        if (resultList == null || password == null) {

            return error(30000, "账号或密码不能为空");

        }

        //判断是否有这个用户

        if (resultList.size()<=0){

            return error(30000,"用户不存在");

        }

        User byUsername = (User) resultList.get(0);

        Map<String, String> groupMap = new HashMap<>();

        groupMap.put("name",byUsername.getUserGroup());

        List groupList = userGroupService.select(groupMap, new HashMap<>()).getResultList();

        if (groupList.size()<1){

            return error(30000,"用户组不存在");

        }

        UserGroup userGroup = (UserGroup) groupList.get(0);

        //查询用户审核状态

        if (!StringUtils.isEmpty(userGroup.getSourceTable())){

            String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();

            String res = String.valueOf(service.runCountSql(sql).getSingleResult());

            if (res==null){

                return error(30000,"用户不存在");

            }

            if (!res.equals("已通过")){

                return error(30000,"该用户审核未通过");

            }

        }

        //查询用户状态

        if (byUsername.getState()!=1){

            return error(30000,"用户非可用状态,不能登录");

        }

        String md5password = service.encryption(password);

        if (byUsername.getPassword().equals(md5password)) {

            // 存储Token到数据库

            AccessToken accessToken = new AccessToken();

            accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));

            accessToken.setUser_id(byUsername.getUserId());

            tokenService.save(accessToken);

            // 返回用户信息

            JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));

            user.put("token", accessToken.getToken());

            JSONObject ret = new JSONObject();

            ret.put("obj",user);

            return success(ret);

        } else {

            return error(30000, "账号或密码不正确");

        }

}

      1. 个人资料模块

当您完成/注册操作,您就能够更新您的个人资料。您需要确保您的inputname值能够和您所属的实体类型的参数完全对应。当您更新您的个人资料时,您的账号密码应当保持完整,不能出现任何错误。您需要确保您的账号密码是唯一的,才能继续使用。

密码修改流程图如下所示。

图5-5密码修改流程图

密码修改界面如下所示。

图5-6密码修改界面

密码修改的逻辑代码如下所示。

  /**

     * 修改密码

     * @param data

     * @param request

     * @return

     */

    @PostMapping("change_password")

    public Map<String, Object> change_password(@RequestBody Map<String, String> data, HttpServletRequest request){

        // 根据Token获取UserId

        String token = request.getHeader("x-auth-token");

        Integer userId = tokenGetUserId(token);

        // 根据UserId和旧密码获取用户

        Map<String, String> query = new HashMap<>();

        String o_password = data.get("o_password");

        query.put("user_id" ,String.valueOf(userId));

        query.put("password" ,service.encryption(o_password));

        int count = service.selectBaseCount(service.count(query, service.readConfig(request)));

        if(count > 0){

            // 修改密码

            Map<String,Object> form = new HashMap<>();

            form.put("password",service.encryption(data.get("password")));

            service.update(query,service.readConfig(request),form);

            return success(1);

        }

        return error(10000,"密码修改失败!");

    }

      1. 招聘信息模块

当前台学生用户点击养老院信息管理系统中导航栏上的“招聘信息”后将会进入到“招聘信息”列表的界面,然后选择想要查看的招聘信息,点击进入到详细界面,在详细界面可以查看包括企业名称、企业用户、招聘岗位、岗位类型、岗位要求、薪资待遇等信息,学生用户可以进行投递简历、点赞、收藏、评论等操作,招聘信息详情界面如下图所示。

图5-7招聘信息详情界面

投递简历界面如下图所示。

图5-8投递简历界面

      1. 问卷信息模块

问卷信息填写功能整体流程:用户浏览问卷信息时,同时会显示问卷信息的状态,系统会在其显示详细信息的页面时便会判断问卷信息的状态,若问卷信息状态为可填写,则会显示填写的链接按钮。在用户点击填写按钮时,会先通过拦截器判断用户是否登录,若未登录,会跳转至登录页面,提示用户先登录,若为登录用户就会跳转至填写填写信息的页面,填写好填写信息之后,点击提交按钮,填写成功之后返回提示信息,告知用户填写成功。

问卷信息填写流程图如下图所示。

图5-9问卷信息填写流程图

问卷信息详情界面如下图所示。

图5-10问卷信息详情界面

问卷填写界面如下图所示。

图5-11问卷填写界面

      1. 学生用户个人中心模块

前台用户点击右上角“个人中心”模块,可以查看和管理个人相关的信息和任务,包括个人首页、投递记录、面试通知、签约信息、解约信息、问卷填写和收藏功能模块。学生用户个人中心界面如下图所示。

图5-12学生用户个人中心界面

    1. 后台管理模块的实现
      1. 企业用户后台管理模块

企业用户在后台可以对企业信息管理、招聘信息管理、投递记录管理、面试通知管理、签约信息管理、解约信息管理等模块进行信息管理。企业用户后台管理界面如下图所示。

图5-13企业用户后台管理界面

      1. 教师用户后台管理模块

教师用户在后台可以对系统用户、签约信息管理、解约信息管理、问卷信息管理、问卷填写管理等模块进行信息管理。教师用户后台管理界面如下图所示。

图5-14教师用户后台管理界面

      1. 管理员系统用户管理模块

后台管理员在“系统用户”这一菜单中可以对学生用户、教师用户、企业用户和管理人员的账号信息进行添加管控。管理员系统用户管理界面如下图所示。

图5-15管理员系统用户管理界面

      1. 系统管理模块

管理员点击“系统管理”菜单可以对系统的轮播图进行管理,查看到系统中的所有轮播图信息,对已经存在的轮播图,管理员可以修改,也可以发布新的轮播图信息。轮播图管理界面如下所示。

图5-16 轮播图管理界面

      1. 通知公告管理模块

管理员点击“通知公告管理”菜单可以对系统的公告信息进行管理,查看到系统中的所有通知公告信息,对已经存在的通知公告,管理员可以修改,也可以发布新的通知公告信息。通知公告管理界面如下所示。

图5-17通知公告管理界面

      1. 交流管理模块

管理员点击“交流管理”菜单能够对就业管理系统内的留言论坛帖子及其所属论坛分类信息进行增删改查。交流管理界面如下所示。

图5-18交流管理界面

  1. 系统测试
    1. 测试目的

系统开发的最后一个步骤就是系统测试,系统测试也是整个系统十分重要的一个环节,测试的好坏关系到产品的发展。客户对软件的质量、性能和可靠性等需求就要通过测试来实现。测试过程要必须遵循严谨性、完善性、规范性的原则,测试的主要目的就是看看在系统运行中,是否会出现bug,然后对出现的bug进行调试,直到程序完美运行。但是软件的测试只能尽可能的减少bug,理论上来说是无法达到消除bug。但是bug越少,系统出错的几率就越低,用户使用起来也更方便、更安全。

    1. 测试用例 

系统测试包括:用户登录功能测试、留言论坛展示查看功能测试、问卷信息添加、招聘信息搜索、密码修改功能测试,如表6-1、6-2、6-3、6-4、6-5所示:

用户登录功能测试:

表6-1 用户登录功能测试表

用例名称

用户登录系统

目的

测试用户通过正确的用户名和密码可否登录功能

前提

未登录的情况下

测试流程

1) 进入登录页面

2) 输入正确的用户名和密码

预期结果

用户名和密码正确的时候,跳转到登录成功界面,反之则显示错误信息,提示重新输入

实际结果

实际结果与预期结果一致

留言论坛查看功能测试:

表6-2 留言论坛查看功能测试表

用例名称

留言论坛查看

目的

测试留言论坛查看功能

前提

用户登录

测试流程

点击留言论坛列表

预期结果

可以查看到所有留言论坛信息

实际结果

实际结果与预期结果一致

教师添加问卷信息界面测试:

表6-3 教师添加问卷信息界面测试表

用例名称

添加问卷信息测试用例

目的

测试问卷信息添加功能

前提

教师正常登录情况下

测试流程

1)教师点击问卷信息管理,然后点击添加后并填写信息。

2)点击进行提交。

预期结果

提交以后,页面首页会显示新的问卷信息 

实际结果

实际结果与预期结果一致

招聘信息搜索功能测试:

表6-4招聘信息搜索功能测试表

用例名称

招聘信息搜索测试

目的

测试招聘信息搜索功能

前提

测试流程

1)在搜索框填入搜索关键字。

2)点击搜索按钮。

预期结果

页面显示包含有搜索关键字的招聘信息

实际结果

实际结果与预期结果一致

密码修改搜索功能测试:

表6-5 密码修改功能测试表

用例名称

密码修改测试用例

目的

测试管理员密码修改功能

前提

管理员用户正常登录情况下

测试流程

1)管理员密码修改并完成填写。

2)点击进行提交。

预期结果

使用新的密码可以登录

实际结果

实际结果与预期结果一致

    1. 测试结果

通过编写就业管理系统的测试用例,已经检测完毕用户登录功能测试、留言论坛展示查看功能测试、问卷信息添加、招聘信息搜索、密码修改功能测试,通过这5大模块为就业管理系统的后期推广运营提供了强力的技术支撑。

  1. 结论

本文描述了就业管理系统设计与实现的原理和开发过程,该系统是通过SpringBoot框架来搭建系统后台的开发,中间件使用的是Tomcat服务器,配合Java开发语言数据库管理平台采用开源的MySQL,配合HTML页面展示技术。 

在开发前做了许多的准备,在本系统的设计和开发过程中阅览和学习了许多文献资料,从开发这个就业管理系统的过程中我也收获了许许多多宝贵的方法以及设计思路,对系统的开发也起到了很重要的作用,系统的开发技术选用的都是自己比较熟悉的,比如Web、Java、SpringBoot、MySQL,这些技术都是在以前的学习中学到了,其中许多的设计思路和方法都是在以前不断地学习中摸索出来的经验,其实对于我们来说工作量还是比较大的,但是正是由于之前的积累与准备,才能顺利的完成这个项目,由此看来,积累经验跟做好准备是十分重要的事情。

当然在该系统的设计与实现的过程中也离不开老师以及同学们的帮助,正是因为他们的指导与帮助,我才能够成功的在预期内完成了这个系统。同时在这个过程当中我也收获了很多东西,此系统也有需要改进的地方,但是由于专业知识的浅薄,并不能做到十分完美,希望以后有机会可以让其真正的投入到使用之中。

参考文献

[1]刘小丹.C++与Java程序设计语言的特征研究[J].电脑编程技巧与维护,2023,(10):52-54.

[2]尹应荆.JAVA编程语言在计算机软件开发中的应用[J].石河子科技,2023,(05):45-47.

[3]冯翊.基于深度学习框架的大学生大学生就业创业系统[J].信息技术,2023,(08):107-111.

[4]贾欢;李鏐洋;朱红涛.本科生的困惑及应对策略——以信息管理与信息系统专业为例[J].管理工程师,2023,28(03):66-70.

[5]黄晖.基于Web技术的大学生就业创业系统的设计[J].信息记录材料,2023,24(06):197-199.

[6]王志亮;纪松波.基于SpringBoot的Web前端与数据库的接口设计[J].工业控制计算机,2023,36(03):51-53.

[7]陈琛;郑亦菲;杨洁;刘小云.后疫情时代高校智能就业信息系统的设计和实现[J].电脑知识与技术,2023,19(09):25-27.

[8]杨宇;刘昉.基于大数据技术的数据分析处理平台设计与实现[J].电脑与电信,2023,(Z1):81-85.

[9]戴华秀.基于大数据的高职院校大学生就业信息系统的应用分析[J].信息与电脑(理论版),2022,34(24):134-136.

[10]Yang Y .Design and Implementation of Student Information Management System Based on SpringBoot[J].Advances in Computer, Signals and Systems,2022,6(6):

[11]何瑾.数据挖掘技术在高校学生大学生就业创业系统中的应用研究[J].黑龙江人力资源和社会保障,2022,(13):79-81.

[12]嵇海波;王凯.大数据背景下高职院校大学生就业系统应用分析[J].信息与电脑(理论版),2022,34(09):104-107.

[13]董如福;杨福华;刘红杏.用户画像在精准就业推荐服务的应用研究[J].电子世界,2022,(01):84-86.

[14]Hejing W .Commerce Middle Office Management System Based on SpringBoot[J].International Journal of Advanced Network, Monitoring and Controls,2022,7(2):32-45.

[15]王龙;杨敬旗;田思雨.基于学生行为分析的就业信息推荐服务[J].沈阳师范大学学报(自然科学版),2021,39(04):353-358.

[16]Arfyanti;Rajiansyah I .Design and Development Employee Payroll Information Systems in Indeks Media Teknologi Inc.[J].International Journal of Information Engineering and Electronic Business(IJIEEB),2021,13(3):1-12.

[17]张玉竹.基于高校学生就业网络服务信息系统设计[J].自动化技术与应用,2021,40(03):153-157.

[18]桂海霞;薛菁;王向前.大数据下信息管理与信息系统专业就业能力评价及培养研究[J].西昌学院学报(自然科学版),2021,35(01):116-119+128.

[19]Ibrahim M I .Iterative and Incremental Development Analysis Study of Vocational Career Information Systems[J].International Journal of Software Engineering amp; Applications,2020,11(5):13-24.

[20]Information Technology - Data Systems; Findings from University of Oregon in the Area of Data Systems Reported (Outcomes of Career Information System Utilization Among First-year High School Students)[J].Information Technology Newsweekly,2020.

致谢

这篇文章的完成经历了多个日日夜夜的努力,终于在今天得以完成。这篇文章的创作过程实为不易,但在老师和同学的辛勤帮助下顺利渡过。让我在设计过程中举步维艰时,非常感谢我的导师不耐其烦的帮助我解决问题,给予了我许多指导意见。也感谢所有为我授业解惑的老师!

另外,本文的完成也参考借鉴了许多国内外在SpringBoot技术上的著作,如果没有著作原作的辛勤付出和科研成果,我也很难完成本论文。感谢在本论文中关联到的学者们!也感谢Google等公司,感谢他们强大的搜索引擎,让我的资料查阅省事简单。

感谢之余也还有几句话要说,虽大学学习四年,怎奈何本人才疏学浅,本文的完成已为尽力,但文中不免有些不当和错误之处,诚挚真切的请求各位老师对本文的批评改正,感谢百忙之中费心审阅我论文的老师。

免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~

  • 9
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值