高校实习就业信息化管理系统

高校实习就业信息化管理系统

一、概述

1.1 项目背景

​ 信息不对称,服务平台的不完善是影响大学生就业的重要因素。信息化形态下,建立规范、统一的大学生实习就业信息化管理平台,横向链接企业、高校和学生,纵向以就业为导向,以学生为中心,有助于贯彻落实就业优先战略,实现对大学生就业的精准发力。

​ 在互联网带动的信息化浪潮下,几乎无人质疑信息通信技术对当今社会发展的重要性。信息技术使得高校的运行和管理方式产生了革命性的变化,促进了企业和高校内部就业生信息资源和数据的传递,为学生就业一体化提供了有力的技术保障,进一步促进了就业质量的全面提升。

​ 高校实习就业信息化管理系统在基于管理的数字化校园建设上,不仅全面提高了高校日常教学、工作效率,还为学生和企业资源整合与利用打造了方便、快捷、充实的平台。

1.2 系统名称

​ 本次数据库设计大作业开发的系统名称为:高校实习就业信息化管理系统。

1.3 开发环境

本次数据库设计的环境为:

IDE工具:IntelliJ IDEA2021

开发操作系统:Windows10

Web应用服务器:Tomcat8.5

数据库:Mysql

二、需求分析

​ 本系统以管理为主体,运营者为学校教师、学生、企业。

​ 通过平台认证的管理员(教师),对学生基本信息、学生就业信息、企业基本信息、企业招聘信息进行管理。其可通过在校学生的表现和基本信息为其提供合适的就业机会,可通过毕业学生的就业情况为非毕业学生今后的就业提供数据支持。其可通过企业的招聘信息和基本信息,为其输入优秀人才,达到长久合作的效果。

​ 对于学生用户,其可以通过此平台查看自己的基本信息和就业信息,可对其进行添加,使自己的信息完整化,便于教师为其挑选合适的就业岗位。

​ 对于企业用户,其可以通过此平台完善本企业的基本信息和招聘信息,使其能招聘到合适的优秀人才。

​ 对于校企对接方面,可以通过平台把企业和学校联系起来,多方合作满足学生就业需求。

三、系统的基础数据流图

​ 通过对高校实习就业信息管理系统需求的分析,可以得出系统涉及到大量的基础数据。系统的基础数据流图如图所示。

image-20241212150940205

四、功能分析

​ 高校实习就业信息管理系统分为管理员(教师)用户系统、学生用户系统、企业用户系统三大模块。其中最具特色的功能有以下几点:

​ 1.管理员(教师)用户,对企业、学生、修改审核进行管理。

​ 2.首页采用饼状图形对数据进行统计展示,可使管理员(教师)用户清晰直观的看见统计数据。

​ 3.大部分复杂的数据采用列表的形式进行展示,可使数据整合化,方便管理员(教师)用户进行搜索查找,设有筛选框,模糊查询搜索栏,更加方便快捷。

​ 4.设有修改审核功能,学生用户和企业用户想进行修改需提交审核,管理员(教师)通过审核后,方可修改成功。此设计是为了保证学生和企业资料的准确性,和减少数据库存储的压力。

​ 5.学生用户和教师用户都可查看自己的信息及更新自己的信息,保证了数据的更新化。

​ 6.本项目最大的功能是将学生与企业进行了合理化的联系,管理员(教师)用户通过学生的就业信息可以看到企业信息,通过企业信息可以看到在其公司就业的学生信息,这样可以使教师更好的为两方进行服务,将教师手头的资源进行了整理与结合,更好的方便为学生提供就业服务,为企业提供人才输入。

​ 高校实习就业信息化管理系统的数据库功能模块结构设计如图所示。

image-20241212151020350

五、数据库系统设计—概念设计

5.1 概念结构设计

​ 概念结构设计是数据库设计的关键阶段之一。它的定义可以概括为:通过对用户需求进行综合、归纳与抽象,将现实世界中的客观事物及其相互联系转化为一种独立于具体数据库管理系统的概念模型的过程。

​ 概念结构设计具体来说就是运用各种概念数据模型的表示方法,如 E-R 图(实体-联系图)等[1],来描述数据库所需要表示和存储的信息结构,包括实体、实体的属性以及实体之间的关系。这个阶段主要关注的是对业务领域的理解和建模,而不涉及具体的数据库实现细节,如数据类型、存储方式等。它为后续的逻辑结构设计提供了清晰的蓝图和指导,确保数据库能够准确、有效地反映业务需求和数据关系[2]。

5.2 概念结构的特点和设计图

​ 概念结构具有抽象性,综合性,稳定性和可理解性四大特性。常见的概念结构设计方法有自顶向下,自底向上,逐步扩张和混合策略等。本系统的概念模型设计图如所示。

image-20241212151114812

5.3 系统的E-R图

5.3.1 实体—联系方法(Entity-Relationship)

根据实际需求得出,各实体之间的联系如下:

  1. area与users:一个管理员对应一个用户,一个用户只能是一个管理员。(管理员和用户是一对一关系)

  2. industy(行业类别表)与firm_info(企业基本信息表):一个企业基本信息对应一个行业类别,一个行业类别可以对应多个企业基本信息,但每个企业基本信息只能对应一个行业类别。

  3. school(学校表)与year(年级表):一个学校可以有多个年级,但每个年级只属于一个学校。(5)每个教师可讲授多门课程,一门课程可有多个教师讲授(教师课程之间是多对多联系)。

5.3.2 E-R图设计

image-20241212151236787

六、数据库系统设计—逻辑结构设计

6.1 关系数据库的基本概念

​ 由实体间的联系导出关系模型,关系模型在关系数据库中即为一个二维表。

  1. 记录:二维表中的一行,表示一个实体。
  2. 字段:二维表的列,表示实体的属性、特征。
  3. 主键:列或列的组合,能唯一地标识一行。表中只有一个主键,主键不允许NULL或重复。
  4. 外键:表中某一字段与另一表中的主键相对应,则该字段称为表的外键。
  • 外键表示了两个表之间的联系。

  • 主键所在的表称为主表,外键所在的表为从表。

    关系模型即二维表,要满足数据完整性的要求。

  • 数据完整性:指数据的正确性和可靠性。

  • 实体完整性:保证表中所有行具有唯一性。

  • 域完整性:保证给定字段的数据有效性。

  • 参照完整性:也称引用完整性,确保相关联的表之间数据的一致性。

  • 用户自定义完整性:用户根据实际系统要求,定义的约束条件,涉及到的数据必须满足语义要求。

6.2 E-R图向关系模型转换的原则

  1. 如果两个关系是1:1的联系,可以在两个实体类型转换成的两个关系模式中任意一个关系模式中加入另一个关系模式的码和联系类型的属性[3]。
  2. 如果两个关系是1:m的联系,则在n端实体类型转换成的关系模式中加入1端实体类型的码和联系类型的属性。
  3. 如果两个关系是m:n的联系,则将联系类型也转换成关系模式,其属性为两端实体类型的码加上联系类型的属性,而码为两端实体码的组合。

6.3 关系模式

  1. 地区(地区编号,地区编码,地区名称,地区级别,城市编码,城市中心点,地区父节点)

  2. 班级(班级编号,班级名称,专业编号,年级编号)

  3. 企业基本信息(企业基本信息编号,用户编号,企业名称,地址编号,详细地址,简介,电话,邮箱,传真,法人,行业类别编号,成立时间,企业性质,经营范围,注册资本,经营许可证,子母公司情况,照片,备注,备用字段 1,备用字段 2,备用字段 3,备用字段 4,备用字段 5)

  4. 企业招聘信息(企业招聘信息编号,企业基本信息编号,岗位编号,地址编号,详细地址,薪资,岗位职责,要求,人数,发布时间,招聘起止时间,到岗时间,联系人,电话,邮箱,备注,工伤保险,生育保险,养老保险,医疗保险,失业保险,住房公积金,双休,年终奖,餐补,住宿补贴,交通补贴)

  5. 企业招聘信息审核(审核编号,企业招聘信息编号,企业基本信息编号,岗位编号,地址编号,详细地址,薪资,岗位职责,要求,人数,发布时间,招聘起止时间,到岗时间,联系人,电话,邮箱,备注,工伤保险,生育保险,养老保险,医疗保险,失业保险,住房公积金,双休,年终奖,餐补,住宿补贴,交通补贴,审核状态)

  6. 企业上传(企业上传编号,企业基本信息编号,企业招聘信息编号,校企对接活动编号,上传时间,内容,文件类型)

  7. 行业类别(行业类别编号,级别,行业名称,行业父节点)

  8. 专业(专业编号,系部编号,专业名称)

  9. 权限(权限编号,角色编号,权限名称)

  10. 岗位(岗位编号,级别,岗位名称,岗位父节点)

  11. 角色(角色编号,角色名称)

  12. 学校(学校编号,学校名称)

  13. 校企对接活动(校企对接活动编号,班级编号,企业信息编号,时间,内容,对接人,对接人电话)

  14. 学生生源类别(学生生源类别编号,生源类别名)

  15. 学生评价(学生评价编号,学生基本信息编号,时间,内容,评价人编号)

  16. 学生基本信息(学生基本信息编号,用户编号,班级编号,年级编号,学生生源类别编号,姓名,学号,性别,身份证号码,电话,生源地区编号,住址地区编号,详细地址,照片路径,入学时间,学生表现评分,备注)

  17. 学生基本信息审核(审核编号,学生基本信息编号,班级编号,年级编号,学生生源类别编号,姓名,学号,性别,身份证号码,电话,生源地区编号,住址地区编号,详细地址,照片路径,入学时间,学生表现评分,备注,审核状态,学生状态编号)

  18. 学生就业(学生就业编号,学生基本信息编号,企业基本信息编号,就业方式,入职时间,离职时间)

  19. 学生就业更改(学生就业更改编号,学生就业编号,时间,工资,岗位编号,职位,工伤保险,生育保险,养老保险,医疗保险,失业保险,住房公积金,双休,年终奖,餐补,住宿补贴,交通补贴)

  20. 学生就业审核(审核编号,学生就业更改编号,企业基本信息编号,就业方式,入职时间,离职时间,时间,工资,岗位编号,职位,工伤保险,生育保险,养老保险,医疗保险,失业保险,住房公积金,双休,年终奖,餐补,住宿补贴,交通补贴,审核状态)

  21. 学生奖惩(学生奖惩编号,学生基本信息编号,时间,名称,内容,类型,备注)

  22. 学生成绩(学生成绩编号,学生基本信息编号,时间,成绩)

  23. 学生状态(学生状态编号,状态名称)

  24. 学生状态更改(学生状态更改编号,学生基本信息编号,时间,状态编号,备注)

  25. 教师(教师编号,用户编号,姓名,工号,性别,身份证号码,备用 1,备用 2,备用 3,备用 4,备用 5)

  26. 用户(用户编号,角色编号,用户名,密码,状态,创建时间)

  27. 年级(年级编号,年级名称)

6.3.1 将联系转换成关系模式

  1. 地区关联(地区编号,城市编码)

  2. 班级关联(班级编号,专业编号,年级编号)

  3. 企业基本信息关联(企业基本信息编号,行业类别编号)

  4. 企业招聘信息关联(企业招聘信息编号,岗位编号,地址编号)

  5. 企业上传关联(企业上传编号,企业招聘信息编号,校企对接活动编号)

  6. 学生基本信息关联(学生基本信息编号,班级编号,年级编号,学生生源类别编号)

  7. 学生就业关联(学生就业编号,学生基本信息编号,企业基本信息编号)

  8. 学生就业更改关联(学生就业更改编号,学生就业编号)

6.3.2 对关系模式进行规范化

​ 关系模式进行规范化的过程主要包含确定函数依赖,消除部分函数依赖和确保达到第三范式[4]。通过上述几个过程得到:

  1. 地区编号(地区编码,地区名称,地区级别,城市编码,城市中心点,地区父节点)

  2. 班级编号(班级名称,专业编号,年级编号)

  3. 企业基本信息编号(用户编号,企业名称,地址编号,详细地址,简介,电话,邮箱,传真,法人,行业类别编号,成立时间,企业性质,经营范围,注册资本,经营许可证,子母公司情况,照片,备注,备用字段 1,备用字段 2,备用字段 3,备用字段 4,备用字段 5)

  4. 企业招聘信息编号(企业基本信息编号,岗位编号,地址编号,详细地址,薪资,岗位职责,要求,人数,发布时间,招聘起止时间,到岗时间,联系人,电话,邮箱,备注,工伤保险,生育保险,养老保险,医疗保险,失业保险,住房公积金,双休,年终奖,餐补,住宿补贴,交通补贴)

  5. 审核编号(企业招聘信息编号,企业基本信息编号,岗位编号,地址编号,详细地址,薪资,岗位职责,要求,人数,发布时间,招聘起止时间,到岗时间,联系人,电话,邮箱,备注,工伤保险,生育保险,养老保险,医疗保险,失业保险,住房公积金,双休,年终奖,餐补,住宿补贴,交通补贴,审核状态)

  6. 企业上传编号(企业基本信息编号,企业招聘信息编号,校企对接活动编号,上传时间,内容,文件类型)

  7. 行业类别编号(级别,行业名称,行业父节点)

  8. 专业编号(系部编号,专业名称)

  9. 权限编号(角色编号,权限名称)

  10. 岗位编号(级别,岗位名称,岗位父节点)

  11. 角色编号(角色名称)

  12. 学校编号(学校名称)

  13. 校企对接活动编号(班级编号,企业信息编号,时间,内容,对接人,对接人电话)

  14. 学生生源类别编号(生源类别名)

  15. 学生评价编号(学生基本信息编号,时间,内容,评价人编号)

  16. 学生基本信息编号(用户编号,班级编号,年级编号,学生生源类别编号,姓名,学号,性别,身份证号码,电话,生源地区编号,住址地区编号,详细地址,照片路径,入学时间,学生表现评分,备注)

  17. 审核编号(学生基本信息编号,班级编号,年级编号,学生生源类别编号,姓名,学号,性别,身份证号码,电话,生源地区编号,住址地区编号,详细地址,照片路径,入学时间,学生表现评分,备注,审核状态,学生状态编号)

  18. 学生就业编号(学生基本信息编号,企业基本信息编号,就业方式,入职时间,离职时间)

  19. 学生就业更改编号(学生就业编号,时间,工资,岗位编号,职位,工伤保险,生育保险,养老保险,医疗保险,失业保险,住房公积金,双休,年终奖,餐补,住宿补贴,交通补贴)

  20. 学生奖惩编号(学生基本信息编号,时间,名称,内容,类型,备注)

  21. 学生成绩编号(学生基本信息编号,时间,成绩)

  22. 学生状态编号(状态名称)

  23. 学生状态更改编号(学生基本信息编号,时间,状态编号,备注)

  24. 教师编号(用户编号,姓名,工号,性别,身份证号码,备用 1,备用 2,备用 3,备用 4,备用 5)

  25. 用户编号(角色编号,用户名,密码,状态,创建时间)

  26. 年级编号(年级名称)

​ 经过以上规范化处理后,关系模式更加简洁、清晰,并且减少了数据冗余和不一致性。同时,也提高了数据库的性能和可维护性。

七、数据库系统设计—物理结构设计

​ 本项目共计25个表,分别为:area(管理员表)、classes(班级表)、department(系表)、firm_info(企业基本信息表)、firm_recruitment(企业招聘信息表)、firm_upload(企业上传表)、industy(行业类别表)、major(专业表)、permission(权限表)、post(岗位表)、role(角色表)、school(学校表)、school_firm_activity(校企对接活动表)、student_category(学生生源类别表)、student_evaluation(学生评价表)、student_info(学生基本信息表)、student_job(学生就业表)、student_job_change(学生就业更改记录表)、student_reward_punishment(学生奖惩记录表)、student_score学生成绩表、student_status(学生状态表)、student_status_change(学生状态更改记录表)、teacher(教师表)、users(用户表)、year(年级表)。

​ 表结构图如图所示,以下用三线表进行表的物理结构设计展示。

image-20241212151905410

7.1 系统包含表的物理结构设计

由于本系统涉及表较多,以下物理结构仅选择部分表进行展示,详情请见项目文件。

1.users表

列序号 列名 类型 取值说明 列含义
1 id Int(11) 主键/NOT NULL id
2 username Varchar(255) NULL 用户名
3 password Varchar(255) NULL 密码
4 role_id Int(11) NULL 角色id
5 status Int(11) NULL 状态
6 create_time date NULL 创建时间

2.role表

列序号 列名 类型 取值说明 列含义
1 id Int(11) 主键/NOT NULL id
2 role_name Varchar(255) NULL 角色名称

3.permission表

列序号 列名 类型 取值说明 列含义
1 id Int(11) 主键/NOT NULL id
2 permission_name Varchar(255) NULL 权限功能
3 role_id Int(11) NULL 角色id

4.area表

列序号 列名 类型 取值说明 列含义
1 id Int(11) 主键/NOT NULL id
2 area_code Int(11) NULL 地区编码
3 area_name Varchar(255) NULL 地区名
4 level Varchar(255) NULL 地区级别
5 citycode Varchar(255) NULL 城市编码
6 center Varchar(255) NULL 城市中心点
7 parent_id Int(11) NULL 地区父节点

5.school_firm_activity表

school_firm_activity表中用来记录学校与企业活动的相关信息。

列序号 列名 类型 取值说明 列含义
1 id Int(11) 主键/NOT NULL id
2 classes_id Varchar(255) NULL 班级id
3 firm_info_id Int(11) NULL 企业信息id
4 time date NULL 时间
5 content Varchar(255) NULL 内容
6 docking_people Varchar(255) NULL 对接人
7 tel Varchar(255) NULL 对接人电话

6.firm_upload

firm_upload表中用来记录企业上传的信息。

列序号 列名 类型 取值说明 列含义
1 id Int(11) 主键/NOT NULL id
2 name Varchar(255) NULL 班级名称
3 major_id Int(11) NULL 专业id
4 year_id Int(11) NULL 年级id

7.firm_info表

firm_info表中记录企业基本信息。

列序号 列名 类型 取值说明 列含义
1 Id Int(11) 主键/NOT NULL id
2 User_id Varchar(255) NULL 用户id
3 Name Varchar(255) NULL 企业名称
4 area_id Varchar(255) NULL 地址id
5 Address Varchar(255) NULL 详细地址
6 Profile Varchar(255) NULL 简介
7 tel Varchar(255) NULL 电话
8 Email Varchar(255) NULL 邮箱
9 Fax Varchar(255) NULL 传真
10 Legal_person Varchar(255) NULL 法人
11 Industy_id Int(11) NULL 行业类别id
12 Founding_time date NULL 成立时间
13 Nature Varchar(255) NULL 企业性质
14 Scope Varchar(255) NULL 经营范围
15 registered_capital Varchar(255) NULL 注册资本
16 management_licence Varchar(255) NULL 经营许可证
17 child_parent Varchar(255) NULL 子母公司情况
18 photo Varchar(255) NULL 照片
19 note Varchar(255) NULL 备注

8.firm_recruitment表

firm_recruitment表中用来记录企业招聘的信息

列序号 列名 类型 取值说明 列含义
1 id Int(11) 主键/NOT NULL id
2 firm_info_id Int(11) NULL 企业基本信息id
3 area_id Int(11) NULL 地址
4 address Varchar(255) NULL 详细地址
5 salary Varchar(255) NULL 薪资
6 duty Varchar(255) NULL 岗位职责
7 requirements Varchar(255) NULL 要求
8 quantity Varchar(255) NULL 要求
9 release_time date NULL 发布时间
10 start_stop_time date NULL 招聘起止时间
11 arrival_time date NULL 到岗时间
12 linkman Varchar(255) NULL 联系人
13 tel Varchar(255) NULL 电话
14 email Varchar(255) NULL 邮箱
15 note Varchar(255) NULL 备注
16 employment_injury_insurance Varchar(255) NULL 工伤保险
17 maternity_insurance Varchar(255) NULL 生育保险
18 endowment_insurance Varchar(255) NULL 养老保险
19 medical_insurance Varchar(255) NULL 医疗保险
20 unemployed_insurance Varchar(255) NULL 失业保险
21 housing_provident_fund Varchar(255) NULL 住房公积金
22 weekends Varchar(255) NULL 双休
23 annual_bonus Varchar(255) NULL 年终奖
24 subsidized_meals Varchar(255) NULL 餐补
25 accommodation_subsidies Varchar(255) NULL 住宿补贴
26 traffic_subsidies Varchar(255) NULL 交通补贴

八、数据库创建过程

8.1 代码实现

由于系统中含有表较多因此以下代码实现仅选取五个表格进行展示:

  1. users表的创建
1
2
3
4
5
6
CREATE TABLE `users` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户id',
`role_id` int(11) NULL DEFAULT NULL COMMENT '角色id',
`username` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户名',
`password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '密码',
`status` int(11) NULL DEFAULT NULL COMMENT '状态(0正常,1禁用,2异常,3冻结)',
  1. area表的创建
1
2
3
4
5
6
7
8
9
10
CREATE TABLE `area` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '地区Id',
`areaCode` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '地区编码',
`areaName` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '地区名',
`level` int(11) NULL DEFAULT -1 COMMENT '地区级别(1:省份province,2:市city,3:区县district,4:街道street)',
`cityCode` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '城市编码',
`center` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '城市中心点(即:经纬度坐标)',
`parentId` int(11) NULL DEFAULT -1 COMMENT '地区父节点',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = MyISAM AUTO_INCREMENT = 3264 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '地区码表' ROW_FORMAT = Dynamic;
  1. school_firm_activity表的创建
1
2
3
4
5
6
7
8
9
10
CREATE TABLE `school_firm_activity`  (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '校企对接活动id',
`classes_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '班级id(可能有多个)',
`firm_info_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '企业信息id(可能有多个)',
`time` date NULL DEFAULT NULL COMMENT '时间',
`content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '内容',
`docking_people` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '对接人',
`tel` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '对接人电话',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '校企对接活动表' ROW_FORMAT = Dynamic;
  1. firm_upload表的创建
1
2
3
4
5
6
7
8
9
10
CREATE TABLE `firm_upload`  (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '企业上传id',
`firm_info_id` int(11) NULL DEFAULT NULL COMMENT '企业基本信息id',
`firm_recruitment_id` int(11) NULL DEFAULT NULL COMMENT '企业招聘信息id',
`school_firm_activity_id` int(11) NULL DEFAULT NULL COMMENT '校企对接活动id',
`time` date NULL DEFAULT NULL COMMENT '上传时间',
`content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '内容',
`file_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '文件类型',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '企业上传表' ROW_FORMAT = Dynamic;
  1. firm_info表的创建
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
CREATE TABLE `firm_info`  (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '企业基本信息id',
`user_id` int(11) NULL DEFAULT NULL COMMENT '用户id',
`name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '企业名称',
`area_id` int(11) NULL DEFAULT NULL COMMENT '地址id',
`address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '详细地址',
`profile` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '简介',
`tel` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '电话',
`email` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '邮箱',
`fax` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '传真',
`legal_person` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '法人',
`industry_id` int(11) NULL DEFAULT NULL COMMENT '行业类别id',
`founding_time` date NULL DEFAULT NULL COMMENT '成立时间',
`nature` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '企业性质',
`scope` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '经营范围',
`registered_capital` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '注册资本',
`management_licence` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '经营许可证',
`child_parent` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '子母公司情况',
`photo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '照片',
`note` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '备注',
`other_a` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备用字段1',
`other_b` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备用字段2',
`other_c` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备用字段3',
`other_d` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备用字段4',
`other_e` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备用字段5',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '企业基本信息表' ROW_FORMAT = Dynamic;

8.2 项目运行截图

1.登录

image-20241212153126564

2.管理员

image-20241212153137023

3.首页展示

image-20241212153144075

4.信息审核展示(仅以学生为例)

image-20241212153155781

image-20241212153159650

5.企业功能展示(仅以企业列表和修改企业基本信息为例)

image-20241212153224271

image-20241212153228128

6.学生功能展示

image-20241212153235548

image-20241212153238919

九、存储过程和触发器设计

1.存储过程

insert_year: 用于向 year 表中插入数据。

update_student_info: 用于更新学生基本信息。

delete_student_info: 用于删除学生基本信息。

2.所用到的触发器

before_insert_student_info: 在插入学生基本信息之前执行的触发器,用于检查数据的完整性。

after_insert_student_info: 在插入学生基本信息之后执行的触发器,用于记录插入操作的日志。

before_update_student_info: 在更新学生基本信息之前执行的触发器,用于检查数据的完整性。

after_update_student_info: 在更新学生基本信息之后执行的触发器,用于记录更新操作的日志。

before_delete_student_info: 在删除学生基本信息之前执行的触发器,用于检查数据的完整性。

after_delete_student_info: 在删除学生基本信息之后执行的触发器,用于记录删除操作的日志。

十、测试和维护

​ 我们将系统投入到学校里进行测试使用,在全系师生通力配合和系统组成员的共同努力下,通过向学校要取了学生的基本信息进行数据库的基本建设,让学生通过身份证号跟固定密码进行登录,完善自己的基本信息[5];也通过联系十几名毕业生,进行登录完善其基本信息和就业信息;通过老师手头上企业的资源对企业的数据库进行建立,通过企查查将企业基本信息进行查询输入,通过老师让企业进行登录完善信息,并发布一些招聘信息[6]。通过以上工作完善我们项目的数据库资料。

​ 多方的数据输入,对系统的要求很高:大量学生的登录可能造成登录不上去的问题,也有可能造成数据的混乱,对系统的稳定性、可靠性造成了很大的挑战。面对以上的挑战,项目组的成员客服了重重困难,从改善系统的运营环境、数据库的稳定性、 扩展测试功能、细致筹划各项管理功能等方面对管理平台进行部署。我们主动了解学生、管理员老师、高校、企业在使用过程中遇到的问题,及时完善系统并解决问题。经过几轮的压力测试调整,确保各方在使用过程中不出问题。

总结

​ 由于数据库是基于MySQL下,在安全性、容量方面完全可以满足需要,在针对每个页面的测试中,无重大的错误,界面操作简便,用户使用步骤清晰,无繁杂[7]。在性能测试方面,本系统的性能比较稳定,在遭遇用户的误操作,以及特殊数据时,能够主动提示,安全性与稳定性都比较高。

​ 但是由于编程与设计方面的疏忽和经验不足等诸多原因,在个别模块性能上还差强人意,比如有些功能在误操作以及特殊数据测试时,会产生错误,导致系统关闭等。解决这些问题,需要对系统的菜单功能以及编程的代码进行进一步的优化和改善,通过调整系统菜单的广度和深度,使学生信息和就业信息功能更加的完善[8]。

​ 在本论文中,通过详细的需求分析、系统设计与实现,成功打造了一个能够有效整合高校实习与就业相关信息的平台。借助系统的各项功能模块,如实习信息管理、就业岗位发布与匹配、学生状态跟踪等,极大地提高了高校实习就业管理工作的效率和质量。在实践过程中,该系统表现出了良好的稳定性和可扩展性,为高校实习就业管理工作的信息化、规范化和科学化提供了有力的支持[9]。未来,随着技术的不断发展和高校管理需求的变化,可以进一步对系统进行优化和完善[10]。如融入人工智能技术以实现更智能的岗位推荐等,从而更好地服务于高校师生和社会用人单位。

参考文献

[1] 王珊,萨师煊,数据库系统概论(第5版),高等教育出版社,2014年。

[2] 郑阿奇主编,MySQL实用教程(第3版),电子工业出版社

[3] 洪学杭, 戴金波, 方权宇, 王轩宇, 刘骐嘉, 刘梦泉. 基于MySQL数据库的戒烟App的设计与研究[J].电脑编程技巧与维护, 2024, (05): 96-99+153.

[4] 于述春.SELinux与My SQL数据库的定制安装[J].无线互联科技,2022,21(07):85-87.

[5] 林菲菲, 吴荣珍. 基于Java的系务管理信息系统的设计与实现[J]. 电脑知识与技术, 2024, 20 (07): 53-56.

[6] 胡瑚.基于MySQL的科研信息管理系统数据库设计[J].信息与电脑(理论版),2023,36(04):169-171.

[7] 刘畅,王陈.MySQL数据库课程的教学评价体系设计[J].电子技术,2024,53(01):393-395.

[8] 魏猛猛. 基于Java EE架构的题库管理系统设计与实现[J]. 电脑编程技巧与维护, 2022, (10): 11-12+27.

[9] Xiao Z ,Ali Y ,Xin W , et al.Sports Work Strategy of College Counselors Based on MySQL Database Big Data Analysis[J].International Journal of Information Technology and Web Engineering (IJITWE),2023,18(1):1-14.

[10] Karthik G ,Debashish M ,Jagoda C , et al.Developing a MySQL Database for the Provenance of Black Tiger Prawns (Penaeus monodon).[J].Foods (Basel, Switzerland),2023,12(14):