springboot高职院校毕业生信息管理系统-计算机毕业设计源码27889

摘 要

基于Java语言开发的高职院校毕业生信息管理系统旨在提供一个便捷、高效的方式来管理毕业生的相关信息。系统包括学生基本信息管理、成绩管理、就业信息管理等模块,通过界面友好、操作简单的设计,方便管理员快速查询和更新学生信息。系统还提供数据统计分析功能,帮助学校了解毕业生的就业情况和发展趋势。总体而言,该系统旨在为高职院校提供一套完喲的毕业生信息管理解决方案,促进毕业生管理工作的规范化和便捷化。

关键词:毕业生信息管理系统; Java; MySQL 

Abstract

The information management system for higher vocational college graduates developed based on Java language aims to provide a convenient and efficient way to manage the relevant information of graduates. The system includes student basic information management, performance management, employment information management and other modules. Through the friendly interface and simple operation design, it is convenient for administrators to quickly query and update student information. The system also provides data statistical analysis function to help the school understand the employment situation and development trend of graduates. In general, the system aims to provide higher vocational colleges with a set of graduate information management solutions, to promote the standardization and convenience of graduate management work.

Key words: graduate information management system; Java; MySQL

目录

第1章 绪论

1.1 研究背景

1.2 研究现状

1.3 研究内容

第2章 相关技术介绍

2.1 MySQL描述

2.2 Vue主要功能

2.3 Java语言与JDK开发环境

2.4 Springboot框架

第3章 系统分析

3.1 可行性分析

3.1.1 技术可行性

3.1.2 经济可行性

3.1.3 操作可行性

3.2 功能需求分析

3.3 非功能需求分析

3.3.1 数据安全性

3.3.2 时间特性

3.3.3 稳定性

3.4 业务流程分析

第4章 系统设计

4.1 系统架构设计

4.2 系统总体设计

4.3 系统功能设计

4.4 数据库设计

4.4.1 数据库概念设计

4.4.2 数据库表设计

第5章 系统实现

5.1 学生用户功能模块(前端)

5.2 管理员功能模块(后端)

5.3 企业用户功能模块(后端)

第6章 系统测试

6.1 测试目的

6.2 功能测试

6.3 系统评价

第7章 全文总结

参考文献

致 谢

  1. 绪论
    1. 研究背景

随着高职教育的普及和发展,高职院校毕业生人数不断增加,如何有效管理和利用这些毕业生的信息成为当前高职院校面临的重要问题。传统的毕业生信息管理主要依赖于人工录入和存储,存在信息不及时、不准确、难以查询和统计等问题。为了提高毕业生信息管理的效率和质量,需要利用现代信息技术开发相应的信息管理系统。

近年来,Java作为一种功能强大且广泛应用的编程语言,在信息系统开发领域得到了广泛的应用。基于Java的开发工具和框架丰富,具有良好的可移植性、跨平台性和易维护性等优势,能够帮助开发人员快速构建稳定、高效的信息管理系统。高职院校毕业生信息管理系统是一种基于网络环境的信息系统,其主要功能包括学生档案管理、就业信息管理、实习信息管理、校友关系管理等,通过对毕业生的信息进行全面、动态的管理和统计,为学校提供重要的数据支持,同时也方便毕业生查询个人信息和就业情况。因此,开发一套基于Java的高职院校毕业生信息管理系统具有重要的实际意义和应用前景。

通过本论文的研究与实现,将有助于高职院校提高毕业生信息管理的效率和水平,促进学校和毕业生之间的有效沟通与联系,进一步推动高职教育的发展。

    1. 研究现状

目前关于Java高职院校毕业生信息管理系统的研究主要集中在功能设计、数据安全、系统性能优化、用户界面设计和数据分析等方面。研究内容涵盖了系统功能的全面性和高效性设计、数据安全性和隐私保护、系统性能优化、用户友好界面设计以及数据分析和挖掘技术的应用,为高校毕业生信息管理系统的发展提供了多方面的支持和信息。

    1. 研究内容

开发和实施基于Java的毕业生信息管理系统的实现,需要完成以下任务:

(1)首先是确定选题,确定好所要做的系统,并对系统的背景及现在面临的一些问题等进行系统的初步确认。

(2)在系统ACK完成之后,我们将根据系统开发的要求,选择springboot技术来构建毕业生信息管理系统,并对其中的数据库进行搭建和开发,以确保该系统能够有效地实现其功能。此外,我们还将对所选择的技术进行详细的技术分析,以确保系统的可行性和安全性。

(3)在基于Java的毕业生信息管理系统的实现中,首先要确定系统的技术,然后进行在线确认,以确定系统的用户角色,并根据这些角色划分出相应的功能模块。系统的设计主要将用户分为管理员、学生用户、企业用户,每个角色都有其独特的特点,而且每个功能模块都有其特定的功能,但是系统的数据库都是交互式的,学生用户可以随时根据自身的需求查看互动论坛,招聘公告,职业指导,招聘信息,简历中心,校园宣传会等,管理员可以快速收集用户的详细信息,并能够在第一时间响应用户的需求。

(4)经过精心设计的系统功能模块已经ACK完毕,接下来就是程序和界面的开发。为了检验程序的完整性,我们会采取多种测试方法,让不同的用户编写和提交相关内容,并定期检查程序中的缺陷,一旦发现问题,立即采取在线解决措施,直至系统运行稳定,才可以将其上传至正式使用。

  1. 相关技术介绍
    1. MySQL描述

MySQL数据库已经成为网络上的一种强大的工具,它能够支持多个用户,并且能够根据客户端和服务端的需求进行调整,从而满足不同的需求。在这里,服务端和客户端只是一种软件上的概念,而我们所使用的计算机硬件则没有必要完全相互匹配[1]。

MySQL作为一种备受推崇的关联性DBMS,其卓越的性能和易于操作的特性,以及其在多种操作环境中的灵活性,让其成为了最受青睐的应用之选。此外,MySQL还具有良好的跨平台性,让软件开发人员更加满意。与传统的关联式数据库系统形式大相径庭,MySQL拥有一套完善的数据库管理策略,以确保用户的安全、稳健、安全。MySQL具备良好的容错、安全、快速、稳健的特点,使得mysql成为一款相当流行的数据库管理工具[2]。

MySQL拥有一种独特的权限分配机制,可以根据用户的身份和业务逻辑,为用户提供更多的选择,从而大大提高了MySQL的安全性和完整性,远超过其他关系型数据库。

MySQL具有强大的功能,能够处理各种数据类型,包括动态、静态、多种语言,从而使用户能够轻松访问多种数据。

MySQL具有多种功能[3],它能够支持多种平台的开发,并且支持多种编程语言[4],使得用户能够轻松访问和使用MySQL数据库。

    1. Vue主要功能

Vue(读音/vjuː/,相似于view)是一种具有高度灵活性的JavaScript架构,能够从基础到顶级,从低到高地实现多种功能,从而创造出一个完整的、高效的用户体验。Vue的核心库专注于视觉表示,它的操作简单,并且可以轻松地将其与其他第三方库和已存在的项目进行集成。此外,Vue可以通过搭配先进的工具和多样的支撑性库,来实现对复杂的网站(SPA)的高效管理。

Vue.Vue作为一种逐步改善的用户体验的框架,具备了独特的优势:首先,它的基础结构更加简单,而且可以轻松地被更多的人使用,而Vue的核心库则更加专注于视觉层,可以轻松地被更多的人使用,也可以被更多的库和现成的项目所使用。Vue 具备强大的功能,可以利用其内置的多个文档组件以及其强大的生态系统,来实现更加精简、高效的单页应用。

Vue.js 旨在通过最少的 API ,实现对数据的有效绑定,并将其转换为多种形式的视图组件。

Vue.js 虽然不是一个完美的框架,但它可以帮助我们更好地理解和实现复杂的页面应用。它的视图层特性使得它更容易学习,并且可以与其他库或已有项目进行整合,从而提高效率。

    1. Java语言与JDK开发环境 

sun公司的java编写的编译器可以跨越各种不同的操作系统,它的高度可靠的兼容性使它成为当今最受欢迎的编译器之一,它的强大功能使它成为了当今数据中心、个人PC和高端科技电脑的首选编译器,并且拥有一支规模宏大的编译器团队。[5]

sun公司推出的java开发工具JDK,具有极大的功能,如果没有它,java程序将无法正常运行,从而影响到用户的使用体验。[6]

    1. Springboot框架

Java框架的出现,极大地改变了Java的运行方式,因为它不仅可以支持复杂的框架结构,而且还可以支持多种复杂的操纵,从而极大地改善了Java的效率和可靠性。此外,Java框架也被广泛地用来取代EJB(EnterpriseJavaBeans),成为一种更加强大的框架。Spring框架可以有效地支撑多种AP的开发,其中包括:基于控制反向的核心功能,可以将对象的生命周期变得更加可视,采取面向切面的编程语言,以及采取多种可靠的长效技术,以及支撑多种Web框架,以满足不同的AP的需求。Spring框架拥有强大的控制反馈(IOC)功能,使得Java对象的配置与管理变得更加简单高效。该框架采取Java的反馈机制,允许使用者根据XML文件、类别及其相关的Java注释等信息,自由地调整Java对象的使用,从而实现更加高效的编程。Spring框架拥有一种独特的AOP框架,它能够将复杂的任务分解为多个独立的部分,并且能够根据用户的不同需求,调整每个部分的功能。它的AOP框架不仅能够支持复杂的任务分解,而且还能够支持多个独立的部分,从而使得用户能够更好地完成任务。

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

在软件开发的过程中,可行性分析是至关重要的,它旨在评估问题的可行性,以便尽可能快地解决,同时也要考虑到不同的解决方案的优势和劣势,以及实施这些方案所带来的经济效益。通过对技术、操作和经济因素的综合考量,我们可以更好地评估基于Java的毕业生信息管理系统的可行性,具体表现在:

      1. 技术可行性

Java编程语言为基础,结合Springboot、Vue等模型,数据库则使用当前最先进的MySQL数据库,这样,基于Java的毕业生信息管理系统就能够将其内容完整地保留下来,同时,为提高用户的使用效率,我们还引入Ajax的异步操作,它能够实现对特定数据的快速更改,从而节省服务器的时间,提升用户的使用感受。这个系统的设计非常容易,所以无须进行额外的调整。它使用了Java语言、MySQL存储,并且使用了H5作为前端界面的展现。

      1. 经济可行性

通过采用Java和MySQL的架构,基于Java的毕业生信息管理系统的开发与维护费用虽然较低,但一旦正式推出,将会带来巨大的收益:既能够让用户更加轻松地获取信息,又能够有效地提高QoS,同时降低运营者的负担。虽然毕业生信息管理系统并非特别复杂,但它的制作费用相比较低,而且耗费的时间更少,因为它能够带来更高的效率,而且比起日常的维护与管理,它的收入要更高,因此,它的制作完全符合市场的需求。

      1. 操作可行性

这款基于Java的毕业生信息管理系统是一款基于浏览器和服务器的软件,它的前台页面简洁易懂,无论是系统管理员、企业用户还是学生用户,只要有网络,只要打开浏览器,就可以轻松访问,而且不需要任何操作指导。由于无需任何复杂的环境配置,这个系统既简单又易于操作,因此它具有极高的实用性和可靠性。

    1. 功能需求分析

当前,B/S架构的系统提供了一种便捷的数据访问模式:只需点击一下网站,即可获取系统的信息,而且,该信息会被存储,并且会被及时地转交给服务器,从而实现快速、准确的信息交换。毕业生信息管理系统由三个层次组成:视觉-模拟-决策。其中,视觉层负责将用户的需求从服务器上转发到用户,同时也负责将用户的需求转化成可执行的行动。而决策层则负责执行与用户需求有关的决策,以及将用户的需求转化成可执行的行动。

学生用户用例图如图3-1所示。

图3-1 学生用户用例图

管理员用例图如图3-2所示。

图3-2管理员用例图

企业用户用例图如图3-3所示。

图3-3企业用户用例图

    1. 非功能需求分析
      1. 数据安全性

基于Java的毕业生信息管理系统的实现是一个集众多用户信息且长时间持续运转的系统,它储存了大量的信息,所以需要保证数据不会出现泄露、损坏等情况。只有良好的数据安全才可以保证系统对班级管理信息的管理。

      1. 时间特性

由于本系统具有招聘信息管理性质,涉及职业指导管理,招聘信息管理,岗位类别管理,应聘申请管理,面试通知管理,应聘录用管理,简历中心管理,企业邀请管理,同意邀请管理,邀请录用管理,就业信息管理,校园宣传管理等及时性较强的功能,所以,为了提高用户体验,需要及时反映操作的准确性以及有效性,预计需要控制系统响应时间在3s内,数据传输在50ms以内。

      1. 稳定性

本系统集信息收集与管理功能于一身,除涉及大量信息数据外,还需满足用户和管理员访问。可以预见,这种访问通常是集中的、突发性的访问,这种访问很容易导致服务器满载、迟缓,最终崩溃。所以这要求在软件以及硬件部分均需要拥有应对短时间内大量数据吞吐的能力。在系统设计方面,我们通过减少不必要的信息提交量等方法来提高系统在特殊情况下的稳定性能。

    1. 业务流程分析

经过对系统功能的分析,调查,研究,总结出基于Java的毕业生信息管理系统主要实现的是对职业指导管理,招聘信息管理,岗位类别管理,应聘申请管理,面试通知管理,应聘录用管理,简历中心管理,企业邀请管理,同意邀请管理,邀请录用管理,就业信息管理,校园宣传管理功能。这样,可以对该系统绘制业务流程图。

如下为业务流程图图例。

3-4业务流程图图例

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

图3-5系统业务流程图

  1. 系统设计
    1. 系统架构设计

目前B/S体系的系统主要的数据访问方式是:通过浏览器页面用户可以进入系统,系统可以自动对用户向服务器发送的请求进行处理,处理请求是在系统后台中进行的,用户在浏览器页面上进行相应操作,就能够看到服务端传递的处理结果。毕业生信息管理系统主要分为视图-模型-控制三层架构设计。在视图层中,主要是操作在服务器端向客户端反馈并显示的数据,在模型层中,主要处理相关的业务逻辑、数据整合等,最后的控制层它介于视图和模型之间,主要是调整两层之间的关系,最终落实数据的传递。

系统架构图如图4-1所示。

图4-1系统架构图

    1. 系统总体设计

在这个毕业生信息管理系统上,我们将会发现一个由两个部门组成的系统。

虽然两个模块看起来各自独立,但它们所使用的数据库却是一致的。这些模块的功能都是经过精心设计和分析,并结合了大量的资料和信息,才得以实现的。

综上所述,系统功能结构图如图4-2所示。

图4-2 系统功能结构图

    1. 系统功能设计

登录模块:使用基于Java的毕业生信息管理系统的实现必须要先在登录页面进行注册,注册之后登录注册账户开始使用本系统。本系统的主要用户分为学生用户、企业用户以及管理员三种,根据用户以及权限的不同,分别打开不同的操作界面。该部分主要利用boot脚本确定网页中CSS样式,从而实现页面的设计,通过调用controller文件进行逻辑判断后,调用dao 层中的方法匹配datab试,集成测试。ase中的数据完成登录操作。当数据库匹配失败时,返回相应提示。注册部分设计与登录类似,只需数据库不存在相同账户信息就可实现注册功能。

该系统包括三个主要模块:浏览、检索和维护。管理员拥有维护这些信息的权限,并能够发布最新的互动论坛,招聘公告,职业指导,招聘信息,简历中心,校园宣传会和更新已有的信息。

学生用户模块:

(1)首页:展示系统最新动态、重要信息以及快捷入口。

(2)互动论坛:让学生进行交流讨论、分享经验或提出问题。

(3)招聘公告:提供最新的招聘信息,让学生及时获取就业机会。

(4)职业指导:提供求职技巧、职业规划等相关资讯,帮助学生提升就业竞争力。

(5)招聘信息:详细列出各个企业的招聘信息,方便学生查看。

(6)简历中心:学生可以上传、管理个人简历,方便投递。

(7)校园宣传会:介绍校内举办的就业宣讲会、招聘会等活动信息。

(8)个人首页:展示学生个人信息、就业意向及求职进度等。

(9)面试通知:提醒学生有关面试的时间、地点等信息。

(10)同意邀请:学生同意企业或平台邀请参加面试等活动。

(11)应聘申请:学生主动申请感兴趣的职位。

(12)应聘录用:显示学生已获得的录用信息。

(13)企业邀请:企业向学生发出参加面试等活动的邀请。

(14)邀请录用:企业确认录用学生并发送录用通知。

(15)收藏:学生可以收藏感兴趣的招聘信息。

后台管理员管理模块:

(1)系统用户管理:管理员可以管理系统的用户账号、权限分配等。

(2)职业指导管理:提供职业指导相关内容的管理,包括发布、编辑、删除等。

(3)招聘信息管理:管理员可以发布、编辑和删除招聘信息,确保信息的准确性和及时性。

(4)岗位类别管理:管理不同岗位的类别信息,方便学生查找和筛选。

(5)应聘申请管理:管理学生的应聘申请信息,包括查看申请记录、审核申请等功能。

(6)面试通知管理:管理员可以管理面试通知的发送、审核以及通知记录。

(7)应聘录用管理:管理学生的录用情况,包括录用结果确认、录用通知发送等。

(8)简历中心管理:管理员可以管理学生上传的简历,包括审核、删除等功能。

(9)企业邀请管理:管理企业向学生发送的面试邀请,包括审批、发送通知等。

(10)同意邀请管理:管理学生对企业邀请的处理情况,包括审核、通知等。

(11)邀请录用管理:管理企业发出的录用邀请,确认录用结果、发送通知等。

(12)就业信息管理:管理系统的就业信息内容,包括发布、编辑、删除等操作。

(13)校园宣传管理:管理校园内举办活动的宣传信息,包括发布活动、审核、删除等功能。

企业用户管理模块:

(1)首页:企业用户登录后的系统首页,展示个性化信息、快速导航等。

(2)互动论坛:参与讨论与其他企业用户的互动交流。

(3)招聘公告:发布企业的招聘公告信息,吸引学生应聘。

(4)职业指导:获取关于职业发展方面的指导和建议。

(5)招聘信息:管理企业发布的招聘信息,包括发布、编辑和删除。

(6)简历中心:查看学生上传的简历,筛选符合条件的应聘者。

(7)校园宣传会:参与线上或线下的校园宣传活动,提升企业知名度。

(8)个人首页:企业用户的个人信息页面,包括修改密码、查看个人信息等。

(9)应聘申请:查看学生提交的应聘申请记录。

(10)应聘录用:管理学生的录用情况,确认录用并发送通知。

(11)同意邀请:处理学生对企业发送的邀请的处理情况。

(12)论坛列表:查看或搜索论坛的主题列表,参与讨论。

(13)面试通知:管理发送给学生的面试通知,查看通知记录。

(14)企业邀请:邀请学生参加企业的面试或宣讲会,审批邀请发送给学生。

(15)邀请录用:录用学生后的录用通知管理,确认录用结果并发送通知。

(16)收藏:收藏感兴趣的学生简历或招聘信息,便于后续查看和操作。

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

数据库概念设计是指对于某个具体应用的数据模型(数据结构),进行抽象和设计,以便在后续的数据库实现阶段中进行数据库逻辑设计和物理结构设计。概念结构本身特性就是其能表现来自用户的各类需求。

系统ER图如图4-3所示。

图4-3 系统ER图

      1. 数据库表设计

基于Java的毕业生信息管理系统的实现所拥有的数据表有以下:用户信息表,招聘信息表,班级活动信息表,学生信息表等。

    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

用户编号:

    1. 表agree_to_invite (同意邀请)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

agree_to_invite_id

int

10

0

N

Y

同意邀请ID

2

invitation_number

varchar

64

0

N

N

邀请号

3

job_seeking_users

int

10

0

Y

N

0

求职用户

4

name

varchar

64

0

Y

N

姓名

5

gender

varchar

64

0

Y

N

性别

6

graduation_school

varchar

64

0

Y

N

毕业学校

7

major

varchar

64

0

Y

N

专业

8

mobile_phone_number

varchar

64

0

Y

N

手机号码

9

students_hometown

varchar

64

0

Y

N

学生籍贯

10

personal_photos

varchar

255

0

Y

N

个人照片

11

job_category

varchar

64

0

Y

N

岗位类别

12

student_resume

varchar

255

0

Y

N

学生简历

13

enterprise_users

int

10

0

Y

N

0

企业用户

14

enterprise_name

varchar

64

0

Y

N

企业名称

15

enterprise_phone

varchar

64

0

Y

N

企业电话

16

enterprise_address

varchar

64

0

Y

N

企业地址

17

reason_for_invitation

text

65535

0

Y

N

邀请原因

18

confirmation_date

date

10

0

Y

N

确认日期

19

condition_content

text

65535

0

Y

N

条件内容

20

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

21

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

    1. 表application_and_recruitment (应聘录用)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

application_and_recruitment_id

int

10

0

N

Y

应聘录用ID

2

application_number

varchar

64

0

N

N

应聘号

3

recruitment_title

varchar

64

0

Y

N

招聘标题

4

job_category

varchar

64

0

Y

N

岗位类别

5

position_salary

varchar

64

0

Y

N

岗位薪资

6

job_requirements

varchar

64

0

Y

N

工作要求

7

recruiting_companies

int

10

0

Y

N

0

招聘企业

8

enterprise_name

varchar

64

0

Y

N

企业名称

9

enterprise_phone

varchar

64

0

Y

N

企业电话

10

enterprise_address

varchar

64

0

Y

N

企业地址

11

applicants

int

10

0

Y

N

0

应聘用户

12

name

varchar

64

0

Y

N

姓名

13

gender

varchar

64

0

Y

N

性别

14

graduation_school

varchar

64

0

Y

N

毕业学校

15

major

varchar

64

0

Y

N

专业

16

mobile_phone_number

varchar

16

0

Y

N

手机号码

17

self_introduction

text

65535

0

Y

N

自我介绍

18

personal_resume

varchar

255

0

Y

N

个人简历

19

employment_date

date

10

0

Y

N

录用日期

20

count_the_number_of_people

varchar

64

0

Y

N

统计人数

21

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

22

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

    1. 表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

更新时间:

    1. 表campus_promotion_meeting (校园宣传会)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

campus_promotion_meeting_id

int

10

0

N

Y

校园宣传会ID

2

title

varchar

64

0

Y

N

标题

3

cover

varchar

255

0

Y

N

封面

4

time

varchar

64

0

Y

N

时间

5

place

varchar

64

0

Y

N

地点

6

link

varchar

255

0

Y

N

链接

7

details

longtext

2147483647

0

Y

N

详情内容

8

hits

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

更新时间

    1. 表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

更新时间:

    1. 表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:

    1. 表employment_information (就业信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

employment_information_id

int

10

0

N

Y

就业信息ID

2

job_category

varchar

64

0

Y

N

岗位类别

3

total_number_of_recruits

int

10

0

Y

N

0

招聘总人数

4

total_number_of_admissions

int

10

0

Y

N

0

录取总人数

5

acceptance_rate

varchar

64

0

Y

N

录取率

6

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

    1. 表enterprise_invitation (企业邀请)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

enterprise_invitation_id

int

10

0

N

Y

企业邀请ID

2

invitation_number

varchar

64

0

Y

N

邀请号

3

job_seeking_users

int

10

0

Y

N

0

求职用户

4

name

varchar

64

0

Y

N

姓名

5

gender

varchar

64

0

Y

N

性别

6

graduation_school

varchar

64

0

Y

N

毕业学校

7

major

varchar

64

0

Y

N

专业

8

mobile_phone_number

varchar

64

0

Y

N

手机号码

9

students_hometown

varchar

64

0

Y

N

学生籍贯

10

personal_photos

varchar

255

0

Y

N

个人照片

11

job_category

varchar

64

0

Y

N

岗位类别

12

student_resume

varchar

255

0

Y

N

学生简历

13

invitation_date

date

10

0

Y

N

邀请日期

14

enterprise_users

int

10

0

Y

N

0

企业用户

15

enterprise_name

varchar

64

0

Y

N

企业名称

16

enterprise_phone

varchar

64

0

Y

N

企业电话

17

enterprise_address

varchar

64

0

Y

N

企业地址

18

reason_for_invitation

text

65535

0

Y

N

邀请原因

19

examine_state

varchar

16

0

N

N

未审核

审核状态

20

examine_reply

varchar

16

0

Y

N

审核回复

21

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

22

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

    1. 表enterprise_users (企业用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

enterprise_users_id

int

10

0

N

Y

企业用户ID

2

enterprise_name

varchar

64

0

N

N

企业名称

3

enterprise_phone

varchar

64

0

Y

N

企业电话

4

enterprise_address

varchar

64

0

Y

N

企业地址

5

business_license

varchar

255

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

更新时间

    1. 表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]用来搜索指定类型的论坛帖

    1. 表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

更新时间:

    1. 表graduate (毕业生)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

graduate_id

int

10

0

N

Y

毕业生ID

2

name

varchar

64

0

Y

N

姓名

3

gender

varchar

64

0

Y

N

性别

4

graduation_school

varchar

64

0

Y

N

毕业学校

5

major

varchar

64

0

Y

N

专业

6

mobile_phone_number

varchar

16

0

Y

N

手机号码

7

examine_state

varchar

16

0

N

N

已通过

审核状态

8

user_id

int

10

0

N

N

0

用户ID

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

    1. 表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:

    1. 表interview_notification (面试通知)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

interview_notification_id

int

10

0

N

Y

面试通知ID

2

application_number

varchar

64

0

N

N

应聘号

3

recruitment_title

varchar

64

0

Y

N

招聘标题

4

job_category

varchar

64

0

Y

N

岗位类别

5

position_salary

varchar

64

0

Y

N

岗位薪资

6

job_requirements

varchar

64

0

Y

N

工作要求

7

recruiting_companies

int

10

0

Y

N

0

招聘企业

8

enterprise_name

varchar

64

0

Y

N

企业名称

9

enterprise_phone

varchar

64

0

Y

N

企业电话

10

enterprise_address

varchar

64

0

Y

N

企业地址

11

applicants

int

10

0

Y

N

0

应聘用户

12

name

varchar

64

0

Y

N

姓名

13

gender

varchar

64

0

Y

N

性别

14

graduation_school

varchar

64

0

Y

N

毕业学校

15

major

varchar

64

0

Y

N

专业

16

mobile_phone_number

varchar

16

0

Y

N

手机号码

17

self_introduction

text

65535

0

Y

N

自我介绍

18

personal_resume

varchar

255

0

Y

N

个人简历

19

interview_date

date

10

0

Y

N

面试日期

20

item_description

text

65535

0

Y

N

事项说明

21

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

22

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

    1. 表invitation_for_employment (邀请录用)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

invitation_for_employment_id

int

10

0

N

Y

邀请录用ID

2

invitation_number

varchar

64

0

N

N

邀请号

3

job_seeking_users

int

10

0

Y

N

0

求职用户

4

name

varchar

64

0

Y

N

姓名

5

gender

varchar

64

0

Y

N

性别

6

graduation_school

varchar

64

0

Y

N

毕业学校

7

major

varchar

64

0

Y

N

专业

8

mobile_phone_number

varchar

64

0

Y

N

手机号码

9

students_hometown

varchar

64

0

Y

N

学生籍贯

10

personal_photos

varchar

255

0

Y

N

个人照片

11

job_category

varchar

64

0

Y

N

岗位类别

12

student_resume

varchar

255

0

Y

N

学生简历

13

enterprise_users

int

10

0

Y

N

0

企业用户

14

enterprise_name

varchar

64

0

Y

N

企业名称

15

enterprise_phone

varchar

64

0

Y

N

企业电话

16

enterprise_address

varchar

64

0

Y

N

企业地址

17

reason_for_invitation

text

65535

0

Y

N

邀请原因

18

condition_content

text

65535

0

Y

N

条件内容

19

employment_date

date

10

0

Y

N

录用日期

20

count_the_number_of_people

varchar

64

0

Y

N

统计人数

21

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

22

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

    1. 表job_application (应聘申请)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

job_application_id

int

10

0

N

Y

应聘申请ID

2

application_number

varchar

64

0

Y

N

应聘号

3

recruitment_title

varchar

64

0

Y

N

招聘标题

4

job_category

varchar

64

0

Y

N

岗位类别

5

position_salary

varchar

64

0

Y

N

岗位薪资

6

job_requirements

varchar

64

0

Y

N

工作要求

7

recruiting_companies

int

10

0

Y

N

0

招聘企业

8

enterprise_name

varchar

64

0

Y

N

企业名称

9

enterprise_phone

varchar

64

0

Y

N

企业电话

10

enterprise_address

varchar

64

0

Y

N

企业地址

11

throwing_date

date

10

0

Y

N

投掷日期

12

applicants

int

10

0

Y

N

0

应聘用户

13

name

varchar

64

0

Y

N

姓名

14

gender

varchar

64

0

Y

N

性别

15

graduation_school

varchar

64

0

Y

N

毕业学校

16

major

varchar

64

0

Y

N

专业

17

mobile_phone_number

varchar

16

0

Y

N

手机号码

18

self_introduction

text

65535

0

Y

N

自我介绍

19

personal_resume

varchar

255

0

Y

N

个人简历

20

examine_state

varchar

16

0

N

N

未审核

审核状态

21

examine_reply

varchar

16

0

Y

N

审核回复

22

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

23

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

    1. 表job_category (岗位类别)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

job_category_id

int

10

0

N

Y

岗位类别ID

2

job_category

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

更新时间

    1. 表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

更新时间:

    1. 表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已取消

    1. 表recruitment_information (招聘信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

recruitment_information_id

int

10

0

N

Y

招聘信息ID

2

recruitment_title

varchar

64

0

Y

N

招聘标题

3

job_category

varchar

64

0

Y

N

岗位类别

4

cover

varchar

255

0

Y

N

封面

5

position_salary

varchar

64

0

Y

N

岗位薪资

6

recruitment_number

int

10

0

Y

N

0

招聘人数

7

job_requirements

varchar

64

0

Y

N

工作要求

8

job_description

text

65535

0

Y

N

职位描述

9

recruiting_companies

int

10

0

Y

N

0

招聘企业

10

enterprise_name

varchar

64

0

Y

N

企业名称

11

enterprise_phone

varchar

64

0

Y

N

企业电话

12

enterprise_address

varchar

64

0

Y

N

企业地址

13

details_introduction

longtext

2147483647

0

Y

N

详情介绍

14

hits

int

10

0

N

N

0

点击数

15

recommend

int

10

0

N

N

0

智能推荐

16

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

17

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

    1. 表resume_center (简历中心)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

resume_center_id

int

10

0

N

Y

简历中心ID

2

job_seeking_users

int

10

0

Y

N

0

求职用户

3

name

varchar

64

0

Y

N

姓名

4

gender

varchar

64

0

Y

N

性别

5

graduation_school

varchar

64

0

Y

N

毕业学校

6

major

varchar

64

0

Y

N

专业

7

mobile_phone_number

varchar

64

0

Y

N

手机号码

8

students_hometown

varchar

64

0

Y

N

学生籍贯

9

personal_photos

varchar

255

0

Y

N

个人照片

10

job_category

varchar

64

0

Y

N

岗位类别

11

student_resume

varchar

255

0

Y

N

学生简历

12

personal_introduction

longtext

2147483647

0

Y

N

个人介绍

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

    1. 表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

更新时间:

    1. 表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

文件类型

    1. 表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

会员折扣

    1. 表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. 表vocational_guidance (职业指导)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

vocational_guidance_id

int

10

0

N

Y

职业指导ID

2

career_name

varchar

64

0

Y

N

职业名称

3

cover

varchar

255

0

Y

N

封面

4

planning_suggestions

text

65535

0

Y

N

规划建议

5

job_search_skills

text

65535

0

Y

N

求职技巧

6

interview_preparation

text

65535

0

Y

N

面试准备

7

hits

int

10

0

N

N

0

点击数

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间


  1. 系统实现
    1. 学生用户功能模块(前端) 

在基于Java的毕业生信息管理系统的实现中,用户可以通过输入账号、密码和其他信息来完成登录,如图5-1所示。

图5-1登录界面图

登录页,首先传入"username"、"email"、"phone"、"password",用户可通过用户名、邮箱、手机号进行登陆,通过判断resultList来确定查询结果,然后执行查询用户组UserGroup,用户组里面不存在,依然报“用户不存在”,执行完以上代码,最后涉及到用户带有“审核”的,会查询examine_state(用户的审核状态),数据库表user_group中含有source_table和source_field进行查询,以上步骤完成,对输入的密码进行存储Token到数据库,匹对账号和密码,数据库中的AccessToken为令牌,用于身份认证,其代码如下:

 /**

     * 登录

     * @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.selectBaseList(service.select(map, new HashMap<>()));

        }

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

            map.put("email", email);

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

        }

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

            map.put("phone", phone);

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

        }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.selectBaseList(userGroupService.select(groupMap, new HashMap<>()));

        if (groupList.size()<1){

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

        }

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

        //查询用户审核状态

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

            String res = service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId());

            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());

            Duration duration = Duration.ofSeconds(7200L);

            redisTemplate.opsForValue().set(accessToken.getToken(), accessToken,duration);

            // 返回用户信息

            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, "账号或密码不正确");

        }

    }

职业指导:提供求职技巧、职业规划等相关资讯,帮助学生提升就业竞争力。如图5-2所示,为用户提供了更加便捷的服务。

图5-2职业指导界面图

招聘信息:详细列出各个企业的招聘信息,方便学生查看。,如图5-3所示。

图5-3招聘信息界面图

简历中心:学生可以上传、管理个人简历,方便投递。如下图所示。

图5-4简历中心界面图

  

    1. 管理员功能模块(后端)  

通过管理员功能页面,管理员可以查看后台首页、系统用户,职业指导管理,招聘信息管理,岗位类别管理,应聘申请管理,面试通知管理,应聘录用管理,简历中心管理,企业邀请管理,同意邀请管理,邀请录用管理,就业信息管理,校园宣传管理等,并且可以根据需要进行相应的操作,如图5-11所示。

图5-5管理员功能界面图

管理员可以对系统中所有的用户角色进行管控,包含了管理员、学生用户、企业用户这三种角色,如果需要添加新的用户,点击页面中的“添加”按钮根据提示输入上用户信息,点击“提交”以后在对应的用户界面就可以查看到了,可以点击用户后面的“删除”按钮直接删除某一用户。系统用户管理界面如下图所示。

图5-6用户管理界面图

管理员可以对系统前台展示的轮播图进行增删改查,方便用户进行查看。轮播图管理界面如下图所示。

图5-7系统管理界面图

新增一条数据,通过post传入一个json对象,然后经过request.getReader(),最后经过readBody()转成一个Map,含有String和Object,key用的是字段名,Object存放数据,最终得到Map,insert用拼装sql,读取body,组装成一个insert对象,runCountSql()语句,代码如下:

    @PostMapping("/add")

    @Transactional

    public Map<String, Object> add(HttpServletRequest request) throws IOException {

        service.insert(service.readBody(request.getReader()));

        return success(1);

    }

public Map<String, Object> addMap(Map<String,Object> map){

    service.insert(map);

     return success(1);

 }

修改一个数据,原理与add基本一致,不同点在于通过readConfig()读取关键字,以及通过readQuery()获取URL后面?指定位置的标识,转成Map对象后,执行update操作,同样通过拼接的sql语句执行,执行过程读取query,toWhereSql()语句完成数据库操作,body为修改对象的值,代码如下:

    @PostMapping("/set")

@Transactional

    public Map<String, Object> set(HttpServletRequest request) throws IOException {

        service.update(service.readQuery(request), service.readConfig(request), service.readBody(request.getReader()));

        return success(1);

    }

删除一条数据,通过readQuery(),获取URL后面的对象地址,删除FROM具体的table,query删除查询FindConfig语句,代码如下:

    @RequestMapping(value = "/del")

    @Transactional

    public Map<String, Object> del(HttpServletRequest request) {

        service.delete(service.readQuery(request), service.readConfig(request));

        return success(1);

    }

    public void delete(Map<String,String> query,Map<String,String> config){

        QueryWrapper wrapper = new QueryWrapper<E>();

        toWhereWrapper(query, "0".equals(config.get(FindConfig.GROUP_BY)),wrapper);

        baseMapper.delete(wrapper);

        log.info("[{}] - 删除操作:{}",wrapper.getSqlSelect());

    }

招聘信息管理:管理员可以发布、编辑和删除招聘信息,确保信息的准确性和及时性。界面如下图所示。

图5-8招聘管理界面图

应聘申请管理:管理学生的应聘申请信息,包括查看申请记录、审核申请等功能。界面如下图所示。

图5-9应聘申请管理界面图

简历中心管理:管理员可以管理学生上传的简历,包括审核、删除等功能。如下图所示。

图5-10简历中心管理界面图

    1. 企业用户功能模块(后端)  

首页:企业用户登录后的系统首页,展示个性化信息、快速导航等。如下图所示。

图5-11信息管理界面图

同意邀请:处理学生对企业发送的邀请的处理情况。

图5-12同意邀请界面图


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

无论什么样的系统,测试都至关重要,因为它们可以帮助我们检查出潜藏的缺陷,从而确保它们的性能和稳定性,避免Bug的出现,并确保它们的功能和性价比达到预期的要求。为了确保系统的安全、高效、可靠,我们将采取三种不同的方法:单元、功能、及AP的检验。

    1. 功能测试

表6-1展示了一个系统登录功能的测试用例,它可以检测用户名和密码的输入,并且可以观察到系统的反应,从而证明这个功能已经达到了预期的效果。

表6-1 系统登录功能测试用例

功能描述

用于系统登录

测试目的

检测登录时的合法性检查

测试数据以及操作

预期结果

实际结果

输入的用户名和密码带有非法字符

提示用户名或者密码错误

与预期结果一致

输入的用户名或者密码为空

提示用户名或者密码错误

与预期结果一致

输入的用户名和密码不存在

提示用户名或者密码错误

与预期结果一致

输入正确的用户名和密码

登录成功

与预期结果一致

表6-2提供了一个详细的注册功能测试用例,它可以有效地检测各种数据的输入,并且可以观察系统的反应,从而证明该功能已经达到了预期的目标。

表6-2 注册功能测试用例

功能描述

用于用户注册

测试目的

检测用户注册时的合法性检查

测试数据以及操作

预期结果

实际结果

输入的手机号不合法

提示请输入正确的手机号码

与预期结果一致

输入的字段为空

提示必填项不能为空

与预期结果一致

输入的密码少于6位

提示密码必须为6-12位

与预期结果一致

输入的密码大于12位

提示密码必须为6-12位

与预期结果一致

通过使用表6-3的测试,我们可以看到,在进行招聘信息管理时,我们可以进行增、减、更新和查询等操作,并且这些操作都已经被成功地执行。通过观察系统的反馈,我们发现这项功能已经实现了我们的预期,并且运行良好。

前置条件;用户登录系统。

表6-3 招聘信息管理的测试用例

功能描述

用于招聘信息管理

测试目的

检测招聘信息管理时的各种操作的运行情况

测试数据以及操作

预期结果

实际结果

点击添加招聘信息,必填项合法输入,点击保存

提示添加成功

与预期结果一致

点击添加招聘信息,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击修改招聘信息,必填项修改为空,点击保存

提示必填项不能为空

与预期结果一致

点击修改招聘信息,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击删除招聘信息,选择职位删除

提示删除成功

与预期结果一致

点击搜索招聘信息,输入存在的招聘信息名

查找出服务类型

与预期结果一致

点击搜索招聘信息,输入不存在的招聘信息名

不显示服务类型

与预期结果一致

    1. 系统评价

系统评价是指在系统完成或改建后,根据预定的系统目标或现有成绩,从技术、经济、社会、功能等方面进行的评价或审核。本系统个人初步评价如下。

(1)系统功能评价:

根据需求分析以及测试结果来看,本系统已将达到了初期的需求目标,满足了用户对应需求。

(2)系统技术评价:

本系统设计略显繁杂,开发过程中对功能进行了一定的简化,运行时较为稳定,暂未发现安全问题。

(3)系统经济评价:

系统在低成本开发的基础上达到了设计要求。预计可以为用户节省一定的人力、物力。

  1. 全文总结

随着科技的飞速发展,越来越多的行业和企业都在利用计算机技术来管理日益增长的数据。本文旨在探讨基于Java的毕业生信息管理系统的实现,以满足班级管理的需求。

本次毕业论文主要是利用Springboot+Vue开发一个安全可靠,操作简易,同时具备业务可扩展的毕业生信息管理系统。本文详细的论述了小程序的设计和开发,本系统的所有事务逻辑都是按照系统的需求分析进行设计的,系统有学生用户、企业用户和系统管理员三种角色,本系统多处采用了Ajax的异步交互技术,同时它也叫异步交互技术,利用它我们可以让网页的局部进行数据刷新操作,Ajax和传统的数据更新技术大大增加了客户的体验程度,由于是对局部进行操作那么就减少了一些繁琐而又不必要的操作,减轻了服务器对页面解析的负担。

目前完成的基于Java的毕业生信息管理系统,还有许多有待改进的地方。一个是功能上的改进,第二个是技术上的改进。另外,系统如果能提供更多的功能就会使得系统更加丰富和多样化,比如兼职数据分析和可视化等。另外就是对前端UI的使用还不够熟练,视觉效果和界面观感有待提升,希望日后能对这个系统有所改进。

参考文献

[1]徐晔.基于web的养老机构信息管理系统的设计与实现[J].家电维修,2024,(04):110-112.

[2]孙草草.浅谈信息系统在项目全过程管理中的应用研究[J].工程技术与管理,2024,8(3):

[3]朱万成,徐晓冬,侯晨,等.岩石力学实验室信息管理系统的研发与应用[J].实验室研究与探索,2024,43(01):214-218+245.DOI:10.19927/j.cnki.syyt.2024.01.044.

[4]吴小祥.大数据在信息管理系统的应用研究[J].产业创新研究,2024,(06):85-87.

[5]James X ,Megan J ,Joan S , et al.A Graphical Interface to Support Low-Flow Volatile Anesthesia: Implications for Patient Safety, Teaching, and Design of Anesthesia Information Management Systems[J].Journal of Medical Systems,2024,48(1):36-36.

[6]Na Q ,Xun Z .Retraction Note: Optimization design and implementation of shared information management system for industrial design network platform[J].Journal of Combinatorial Optimization,2024,47(3):

[7]Agency Information Collection Activities; Submission to the Office of Management and Budget; Yukon River Watershed Ecosystem Action Plan[J].The Federal Register / FIND,2024,89(056):

[8]Xiaogang C ,Dongmei L .Application and Research of Media Information Retrieval Technology in Student Work Management Systems[J].International Journal of Web-Based Learning and Teaching Technologies (IJWLTT),2024,19(1):1-17.

[9]赵金燕,周兵,胡宝晶,等.基于云计算的普洱茶信息管理系统设计与实现[J].中国茶叶,2024,46(03):66-71.

[10]何强.面向用户需求的信息管理系统设计与实现[J].电子技术,2024,53(02):176-177.

[11]赖晓菲,谢俊鹏.基于Web前端的IP信息管理系统的设计与实现[J].电脑编程技巧与维护,2024,(02):77-79.DOI:10.16184/j.cnki.comprg.2024.02.005.

[12]鲜汶秀,崔雅莉.基于云计算技术的人力资源信息管理系统建构策略研究[J].电脑知识与技术,2024,20(05):69-71.DOI:10.14004/j.cnki.ckt.2024.0178.

[13]胡江伟.基于计算机网络的会展信息管理系统设计与实现[J].中国会展(中国会议),2024,(02):91-93.DOI:10.20130/j.cnki.1674-3598.2024.02.020.

[14]周方.基于Web的学生信息管理系统中的数据库研究与设计[J].信息记录材料,2024,25(01):197-199.DOI:10.16009/j.cnki.cn13-1295/tq.2024.01.036.

[15]袁爱平,陈畅,孙士兵,等.基于SSM框架的高校学生信息管理系统设计与实现[J].工业控制计算机,2023,36(12):127-129.

[16]吴香艳.基于C#和.NET的班级学生信息管理系统设计与实现[J].无线互联科技,2023,20(22):47-50.

[17]邱泽国,徐耀群,张雨,等.信息管理与信息系统专业毕业生就业能力分析与研究——以就业信息系统设计为例[J].商业经济,2021,(03):188-191.DOI:10.19905/j.cnki.syjj1982.2021.03.067.

[18]田奕.基于SSH的毕业生信息管理系统的设计与实现[D].华中科技大学,2020.DOI:10.27157/d.cnki.ghzku.2020.004244.

[19]沈鼎.高校毕业生去向信息管理及推荐系统的研究与设计[D].东华大学,2019.DOI:10.27012/d.cnki.gdhuu.2019.000041.

[20]张亚杰.大学生信息管理及就业预测系统的设计与实现[D].电子科技大学,2019.


致 谢

在这3个月的毕业设计过程中,指导教师的指导发挥了至关重要的作用,他们的认真负责的工作态度、谨慎的教学精神以及丰富的理论知识,为我的设计提供了强有力的支持,使得整个过程顺利进行。她的教学方式非常认真,让我印象深刻。我从她那里学到了很多知识,并在实践中不断提升。我对这位老师表示由衷的感谢。

经过对毕业设计的全面研究和开发,我的系统取得了重大突破,从需求分析到实现复杂功能,再到最终的测试和维护,使我对系统有了更加深刻的理解。此外,我还在实践中不断提升自己的技能,解决复杂问题,这是这次毕业设计最大的收获。

最终,在整个系统开发的过程中,我的同学和朋友们给予了我极大的帮助,他们的建议让我能够迅速地确定系统的商业理念。因此,我深深地感谢他们的支持。

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

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

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

相关文章

采用前后端分离技术架构+java语言开发的全套产科信息管理系统源码 可与医院HIS、LIS、PACS、RIS等系统进行对接

采用前后端分离技术架构java语言开发的全套产科信息管理系统源码 可与医院HIS、LIS、PACS、RIS等系统进行对接 什么是产科信息管理系统-建档管理&#xff1f; 产科信息管理系统建档管理通过信息技术实现了孕产妇健康信息的电子化、网络化和智能化管理&#xff0c;提高了医疗服…

Riscv 架构的合规测试

为啥直接关注riscv-arch-test&#xff0c;是因为RISCOF 测试框架使用的是riscv-arch-test 1. The architectural test 架构测试是一个单一的测试&#xff0c;代表了可编译和运行的最小测试代码。它是用汇编代码编写的&#xff0c;其产品是test signature。一个架构测试可能由…

微信小程序推送消息java版

需求背景 使用springboot2微信小程序推送消息。百度了一下看了一篇文章整体还可以&#xff0c;这里推荐一下。 教程解析 1、微信平台开通订阅消息。 2、添加模板。 3、springboot后台接口开发 微信平台验证地址接口开发&#xff0c;然后部署到公网服务器。 4、微信平台验…

基于FPGA的数字信号处理(15)--定点数的舍入模式(6)向0取整fix

前言 在之前的文章介绍了定点数为什么需要舍入和几种常见的舍入模式。今天我们再来看看另外一种舍入模式&#xff1a;向上取整fix。 10进制数的fix fix&#xff1a;也叫 向0取整。它的舍入方式是数据往0的方向&#xff0c;舍入到最近的整数&#xff0c;比如1.75 fix到2&#xf…

将WordPress的文章重新排序的3个方法

有效的调整文章显示顺序看开可以更好突出内容&#xff0c;还可以保持网站的新鲜感&#xff0c;今天我将带您了解三种方法&#xff0c;通过重新排序文章显著提升网站的吸引力。我们将逐步讲解从调整设置到使用插件以及“置顶”文章的每一种方法&#xff0c;确保WordPress 新手也…

利用python进行数据分析 —— python正则表达式(持续更新中!)

文章目录 利用python进行数据分析 —— python基础知识进阶重点笔记&#xff1a;正则表达式re.match 匹配开头re.search 全文匹配re.sub 替换删除re.compile 编译正则findall 返回列表finditer 返回迭代器re.split 分割返回列表(?P...) 分组匹配正则表达符号、修饰符通配符1 ^…

谷歌上新!最强开源模型Gemma 2,27B媲美LLaMA3 70B,挑战3140亿Grok-1

文章目录 LMSYS Chatbot Arena&#xff1a;开源模型性能第一Gemma为什么这么强&#xff1f;架构创新对AI安全性的提升 A领域竞争激烈&#xff0c;GPT-4o 和 Claude 3.5 Sonnet 持续发力&#xff0c;谷歌迅速跟进。 谷歌为应对AI竞争所采取的策略&#xff1a;依靠 Gemini 闭源模…

hdu物联网硬件实验3 按键和中断

学院 班级 学号 姓名 日期 成绩 实验题目 按键和中断 实验目的 实现闪灯功能转换 硬件原理 无 关键代码及注释 /* Button Turns on and off a light emitting diode(LED) connected to digital pin 13, when pressing a pushbutton attached…

解决WSL2报错:当前电脑配置不支持WSL2,请启用虚拟机平台 Windows 功能并确保在 BIOS 中启用虚拟化

事情要追溯到突发奇想下载了腾讯的手游模拟器开始。。。因为一直闪退&#xff0c;模拟器自检就要求把虚拟化功能关闭了&#xff0c;结果还是一直闪退&#xff0c;WSL2也给我报错了。。。大无语 主要通过以下两个步骤解决&#xff0c;操作了之后需要把电脑重启&#xff1a; 一、…

小程序做自定义分享封面图,Canvas base64图片数据真机上不显示?【已解决】

首选说一下需求&#xff0c;做一个小程序分享&#xff0c;但是封面图要自定义&#xff0c;除了要有对应商品还有有背景图&#xff0c;商品名。类似这种 实现逻辑&#xff0c;把商品图和背景图&#xff0c;再加上价格和商品名用canvas 渲染出来 这是弄好之后的效果图&#xff0…

SpringSecurity中文文档(Servlet Method Security)

Method Security 除了在请求级别进行建模授权之外&#xff0c;Spring Security 还支持在方法级别进行建模。 您可以在应用程序中激活它&#xff0c;方法是使用EnableMethodSecurity 注释任何Configuration 类&#xff0c;或者将 < method-security > 添加到任何 XML 配…

springbootAl农作物病虫害预警系统-计算机毕业设计源码21875

摘要 随着农业现代化的推进&#xff0c;农作物病虫害的防治已成为农业生产中的重要环节。传统的病虫害防治方法往往依赖于农民的经验和观察&#xff0c;难以准确、及时地预测和防控病虫害的发生。因此&#xff0c;开发一种基于现代信息技术的农作物病虫害预警系统&#xff0c;对…

【计算机毕业设计】012基于微信小程序的科创微应用平台

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

解决vite 断点调试定位不准确问题

问题&#xff1a;vite构建时&#xff0c;控制台报错行数等信息定位不准确或debugger断点调试定位不准确 解决&#xff1a;F12后打开设置面板&#xff0c;把“JavaScript源代码映射”去掉可临时解决&#xff0c;如需永久解决需升级vite到最新版 还有一种&#xff1a; 参考&…

7.9 cf div3

BProblem - B - Codeforces 题目解读&#xff1a; 找到严格大于相邻数字的数&#xff0c;将其减一&#xff0c;直到整个数组成为稳定的&#xff08;不存在数字严格大于相邻数&#xff09; ac代码 #include<bits/stdc.h> typedef long long ll;#define IOS ios::sync_w…

免费白嫖A100活动开始啦,InternLM + LlamaIndex RAG 实践

内容来源&#xff1a;Docs 前置知识&#xff1a; 检索增强生成&#xff08;Retrieval Augmented Generation&#xff0c;RAG&#xff09; LlamaIndex LlamaIndex 是一个上下文增强的 LLM 框架&#xff0c;旨在通过将其与特定上下文数据集集成&#xff0c;增强大型语言模型&a…

决策树算法简单介绍:原理和方案实施

决策树算法介绍&#xff1a;原理和方案实施 决策树&#xff08;Decision Tree&#xff09;是一种常用的机器学习算法&#xff0c;它既可以用于分类任务&#xff0c;也可以用于回归任务。由于其直观性和解释性&#xff0c;决策树在数据分析和模型构建中得到了广泛的应用。本文将…

顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶

欢迎关注博主 Mindtechnist 或加入【智能科技社区】一起学习和分享Linux、C、C、Python、Matlab&#xff0c;机器人运动控制、多机器人协作&#xff0c;智能优化算法&#xff0c;滤波估计、多传感器信息融合&#xff0c;机器学习&#xff0c;人工智能等相关领域的知识和技术。关…

挖K脚本检测指南

免责声明:本文仅做分享... 目录 挖K样本-Win&Linux-危害&定性 Linux-Web 安全漏洞导致挖K事件 Windows-系统口令爆破导致挖K事件 --怎么被挖K了??? 已经取得了权限. 挖K样本-Win&Linux-危害&定性 危害&#xff1a;CPU 拉满&#xff0c;网络阻塞&…

在Linux下使用Docker部署chirpstack

目录 一、前言 二、chirpstack 1、chirpstack是什么 2、chirpstack组件 3、为什么选择Docker部署 三、Linux下部署过程 四、web界面部署过程 一、前言 本篇文章我是在Linux下使用 Docker 进行部署chirpstack&#xff0c;chirpstack采用的是v4 版本&#xff0c;v4 版本 与…