摘 要
大学生兼职管理系统是一款专为大学生和企业设计的在线管理平台,旨在提供便捷的兼职信息管理和服务。该系统具有多种功能,包括招聘兼职、公告信息等,为大学生和企业提供了一个高效、智能的管理服务。通过该系统,大学生可以方便地查找和申请适合自己的兼职工作;企业也可以快速发布招聘信息并筛选合适的候选人。大学生兼职管理系统是一款集多种功能于一体的在线平台,对于促进大学生就业和满足企业需求具有重要意义。
本系统采用了java语言的springboot框架,数据采用MySQL数据库进行存储。结合B/S结构进行开发设计,功能强大,界面化操作便于上手。本系统具有良好的易用性和安全性,系统功能齐全,可以满足大学生兼职管理的相关工作。
关键词:兼职;java技术;springboot框架;MySQL;
Abstract
College students part-time management system is an online management platform designed for college students and enterprises, aiming to provide convenient part-time information management and services. The system has many functions, including recruitment of part-time jobs, announcement information, etc. It provides an efficient and intelligent management service for college students and enterprises. Through this system, college students can easily find and apply for their own part-time jobs; Companies can also quickly post job postings and screen suitable candidates. The part-time management system for college students is an online platform integrating multiple functions, which is of great significance to promote the employment of college students and meet the needs of enterprises.
The system uses springboot framework of java language, and the data is stored by MySQL database. Combined with B/S structure for development and design, powerful function, easy to use interface operation. This system has good ease of use and security, the system has complete functions, and can meet the related work of college students part-time management.
Key words: part-time job; java Technology; springboot framework; MySQL;
目 录
摘 要 I
Abstract 1
1 绪 论 4
1.1研究背景 4
1.2国内外研究现状 4
1.3本文主要研究的内容 5
1.4论文的结构 5
2 相关技术简介及部署环境说明 6
2.1 Java语言 6
2.2 SpringBoot框架 6
2.3 vue.js技术简介 6
2.4 MySQL简介 7
2.5 B/S结构 7
2.6系统的开发环境 8
2.7小结 8
3 需求分析 9
3.1系统可行性分析 9
3.2系统需求分析 9
3.3开发目标 10
3.4 系统用例分析 10
3.5系统流程分析 12
3.5.1 用户登录流程 12
3.5.2 系统操作流程 13
3.6小结 14
4 系统总体设计 15
4.1系统功能结构设计图 15
4.2 数据库设计与实现 15
4.2.1 概念模型设计 16
4.2.2 系统数据表设计 16
4.3小结 26
5 系统详细设计与实现 27
5.1系统功能实现 27
5.2后台模块实现 29
5.2.1 管理员模块实现 29
5.2.2企业模块实现 33
5.3小结 33
6 系统测试 34
6.1软件测试的定义 34
6.2测试方法 34
6.3测试过程 34
6.4测试结果 35
6.5小结 35
参考文献 37
致 谢 38
1 绪 论
1.1研究背景
大学生兼职管理系统的开发背景源于当前大学生就业形势的严峻和对兼职工作需求的增加。随着社会经济的发展和竞争压力的增大,越来越多的大学生选择通过兼职工作来积累工作经验、提高自身能力以及缓解经济压力。传统的兼职信息管理方式存在信息不对称、效率低下等问题,给大学生和企业带来了诸多不便。为了解决这些问题,提高兼职信息管理的便捷性和准确性,大学生兼职管理系统应运而生。该系统利用现代信息技术手段实现了对兼职信息的集中管理和智能匹配,提高了信息传递的效率和准确性。通过该系统的应用,大学生可以方便地查找和申请适合自己的兼职工作;企业则可以快速发布招聘信息并筛选合适的候选人。大学生兼职管理系统的开发背景是为了满足大学生就业需求和提高兼职信息管理效率的要求。
1.2国内外研究现状
大学生兼职管理系统在国内外均展现出积极的发展趋势。在国外,随着信息技术和移动互联网的应用,类似的兼职信息管理平台如Internships、Part-time等已经得到了广泛的应用。这些平台通过集成大数据分析、人工智能等技术手段,实现了对兼职信息的智能推荐和个性化服务,提高了大学生的就业效率和用人单位的招聘效率。在国内,随着“互联网+”战略的推进和大学生就业压力的增大,大学生兼职管理系统也得到了越来越多的关注和应用。一些知名的在线招聘平台如实习僧、BOSS直聘等也开始推出自己的兼职信息管理功能,为大学生提供了便捷的兼职信息查询和申请服务。相对于国外的成熟应用,国内的大学生兼职管理系统仍面临诸多挑战和机遇。一方面,市场需求不断增长,为系统的发展提供了广阔的空间;另一方面,如何提高系统的智能化水平和用户体验等问题成为关键问题。大学生兼职管理系统在国内外的研究现状表明,虽然取得了一定的成果,但仍需不断努力和创新,以更好地满足市场需求和用户需求。
1.3本文主要研究的内容
该系统采用java技术,结合springboot框架使页面更加完善,后台使用MySQL数据库进行数据存储。系统主要分为三大模块:即管理员模块、企业模块和学生模块。本文从大学生兼职管理流程分析入手,分析了其功能性需求和非功能性需求,设计了一个由管理员、企业和学生三部分组成的大学生兼职管理系统。学生进入系统可以浏览招聘兼职、公告信息、个人中心;注册登录后在个人中心页面可以对修改密码、应聘信息、面试通知、面试信息、就业通知、兼职评价、我的收藏进行详细操作;管理员可通过后台管理界面管理学生管理、企业管理、岗位类型管理、招聘兼职管理、应聘信息管理、面试通知管理、面试信息管理、就业通知管理、兼职评价管理、系统管理、我的信息。
1.4论文的结构
本文的主体结构如下:
第一章主要对当下的大学生兼职管理系统的背景进行了重点论述,对国内外进行了初步研究。
第二章 重点介绍本系统的相关的开发技术,并对软件的部署环境进行必要的说明。
第三章 重点对系统进行需求分析、流程分析和可行性论述。
第四章 主要对系统整体功能进行设计和对数据库进行设计。
第五章 详细的对各个模块进行阐述,各个模块总体的设计以文字加图表的形式进行说明。
第六章 对系统的测试方法进行说明及测试结果的展示。
2 相关技术简介及部署环境说明
2.1 Java语言
Java是一种面向对象的静态式编程语言。Java编程语言具有多线程和对象定向的特点。其特点是根据方案的属性将方案分为几个不同的模块,这些模块是封闭的和多样化的,在申请过程中具有很强的独立性。Java语言在计算机软件开发过程中的运用可以达到交互操作的目的,通过各种形式的交换,可以有效地处理所需的数据,从而确保计算机软件开发的可控性和可见性[1]。开发Java语言时,保留了网络接口,Java保留的缺省网络接口可以与web应用程序编程所依赖的类别库相匹配。为了使Java开发的应用程序更加稳定和强健,Java会自动收集程序中的垃圾,并处理程序中存在的异常。Java语言是日常开发过程中广泛使用的通用基本语言。其中Java语言课程库、句子、语法规则和关键字经常用于计算机软件的开发和编程。
面向对象编程是Java语言最显着的特点。它具有原始接口和补充接口以及继承,不仅可以实现相同类型的单个继承,而且还支持接口之间的多个继承,从而实现类、接口和接口之间以及类和接口之间的有效通信。Java的面向对象特性主要包括三个方面:继承、多态性和封装。封装是Java的核心,可以封装所有数据操作。多态性是指由面向对象行为派生的相关行为。继承作为特殊编程模式有两种类型:父类和子类,这两种类型的属性具有相同的功能和特性。对于父类的属性特性,子类可以实现继承和优化。
2.2 SpringBoot框架
Spring Boot是由Pivotal的开发团队在2013年开发的一个免费、轻量级、开源的系统框架。SpringBoot的主要设计思想是约定大于配置,因此SpringBoot在设计时几乎达到零配置。SpringBoot集成了业界的开源框架[4]。
SpringBoot是一个非常强大的后台框架,因为SpringBoot的开发基本上不需要写配置文件,所以利用SpringBoot来构建网站的后台环境,在SpringBoot的YML配置文件中写项目启动端口,项目就可以启动了[5]。项目的Java和静态文件由SpringBoot管理。
2.3 vue.js技术简介
Vue.js是一款用于构建用户界面的渐进式JavaScript框架。与其他大型框架不同的是,Vue被设计为可以自底向上逐层应用。Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue也完全能够为复杂的单页应用提供驱动。
Vue.js的目标是通过尽可能简单的API实现响应的数据绑定和组合的视图组件。核心是一个响应式的观察者系统,它使用依赖追踪的方式,在数据变动时更新DOM。另外,Vue的组件化开发让代码复用和维护变得更加容易,同时提高了代码的可读性和可维护性。此外,Vue还提供了许多高级功能,如虚拟DOM、计算属性、指令等,使得开发者能够更加高效地编写代码。总之,Vue.js是一款非常实用的前端框架,它能够帮助开发者快速构建交互性强、用户体验优秀的Web应用程序。无论是初学者还是有经验的开发者,都可以通过学习和使用Vue.js来提高自己的开发技能和效率。
2.4 MySQL简介
MySQL是一种关系型的数据库管理系统,属于Oracle旗下的产品。MySQL的语言是非结构化的,使用的用户可以在数据上进行工作。这个数据库管理系统一经问世就受到了社会的广泛关注[2]。在各个方面,与同等的数据库相比,MySQL的优点极为突出,它的运行速度快,适用的范围广泛,而且数据库的安全性这一方面独树一帜。在语言结构方面,MySQL的语言简单,其他数据库需要一大段代码来实现的操作,MySQL仅需要一小部分代码甚至几行[3]。综上所述,MySQL这种关系型数据库管理系统,已经成为了开发者进行项目的数据开发、存储的不二之选。MySQL的功能也多种多样,如数据操纵和数据库的建立维护等。而且该数据库的数据共享性高、冗余度低而且容易扩充。MySQL在安全性这一方面也具有自身的特点,它应用了用户的标识和鉴别技术,对试图和数据进行加密,确保资料信息的可靠性[6]。介于数据库系统的功能与强大等性质之间,本数据库系统的设计中主要使用了MySQL实现对数据的处理。本系统运用MySQL数据库,在Web应用这一块,MySQL是最好的选择。对于该系统整个的开发、搭建、运行和维护具有极其重要的作用。
2.5 B/S结构
B/S结构就是指系统客户端与服务器分离,客户端通过浏览器访问服务端进行操作。
B/S结构目前广泛应用于绝大部分系统搭建中,这种结构摒弃C/S结构客户端服务端不分离的缺点,具有更多的优势:
(1)跨平台性:B/S的标准由标准化组织确立,适用于绝大多数的系统搭建,通用于应用之间。
(2)低维护成本:客户端和服务器端分离,减轻了两端的压力,尤其是客户端,对客户端设备,硬件、软件要求都比较低,并且系统需要升级或维护时,只需要在服务器端升级或维护就可以,使相应的费用减少。
2.6系统的开发环境
系统使用Java语言,以SPRINGBOOT作为框架进行开发,其所使用的硬件和软件环境如下:
硬件环境:Intel(R) Core(TM) i5-7300HQ CPU @ 2.50GHz 2.50 GHz 处理器,16.0GB 运行内存。
软件环境:Windows10 64位操作系统,TomCat服务器,IDEA开发工具。
2.7小结
本章详细的介绍了开发大学生兼职管理系统所需要的技术与工具,工欲善其事必先利其器,对于技术和工具了解的越多越清晰,才会在开发过程中如鱼得水。
3 需求分析
3.1系统可行性分析
大学生兼职管理系统的可行性分析基于当下的互联网背景,从经济、技术、法律和用户使用上进行了调查,从此验证次系统开发的可行性。下面分别从以下几点进行分析:
(1)经济可行性分析:此系统所用的框架技术完全是开源的,其余的软件使用也都是免费的,在开发方面所消耗的成本可以忽略不计。而建立系统信息库所需的费用远远少于其带来的社会收益,从经济上分析系统是完全可行的。
(2)技术可行性分析:对系统进行分析,大学生兼职管理系统的大部分功能都需要管理员完成,系统只需要添加少量代码就可以很好适配管理员功能。可以提高文件的复用率,提高效率。在数据库方面,ORM简化了表的创建和使用,采用了Oracle旗下开源的关系型数据管理系统MySQL,多表存储的特点使数据更加规范化,增删改查更容易。综上所述,技术开发上并无太大的难点。
(3)用户使用可行性分析:鉴于系统的使用用户,有统一的账号和密码,且系统无需用户有过多的操作,界面清晰简洁,用户使用可行性上无问题。
(4)法律可行性分析:即分析本系统是否与各类法律相悖。本系统使用市面开源免费软件开发,且作为个人毕设,无商用,均为本人自主开发,并且页面设计合理,发布的信息要求符合常规。整个系统无抵触法律法规的问题。因此在法律上,本系统可行。
3.2系统需求分析
需求分析在系统开发中有着十分重要的作用。软件项目凭借软件工程的思想和步骤可以大大的提高开发效率,缩短软件开发周期,保证了软件项目的质量。需求分析作为软件工程方法中的一步是至关重要的。软件需求工程是一门分析并记录软件需求的学科。需求分析简单的来说就是用户需要什么,系统需要什么,对此进行问题的列举,等级的排列,需要缜密的思分析和大量的调研。
大学生兼职在国内有很多值得借鉴的例子,功能也都趋于完善,因此此次大学生兼职将轻量化开发,要完成以下功能:
(1)要支持完整的用户注册,登录功能,账号的管理通过管理员来实现。
(2)大学生兼职管理系统的前端页面简单明了,功能让用户快速上手,一目了然,不需要教程也能直接使用。
(3)为了用户能够方便的搜寻信息。
(4)管理员通过后台系统来完成对大学生兼职信息的编辑,包括添加、删除等操作。
3.3开发目标
大学生兼职管理系统主要开发目标如下:
(1)对零碎化、分布散的大学生兼职信息进行收纳、整理,通过网络服务平台使这些信息内容更加调理,更加方便化和清晰化,让访问该系统的每个用户享受浏览的过程。
(2)生活中存在的一些现象:人员冗余。大学生兼职管理系统应尽量减少用户的需求压力,给他们提供省时省力省心的服务平台,降低其工作量。
(3)便于查询及管理招聘兼职等。
(4)通过计算机网络技术,提升解决管理问题和技术工作的质量,为用户一种规范方便的服务。
(5)该系统的面向用户为管理员、企业和学生,系统的设计风格应该简约整洁,操作容易上手,目标信息明确,避免花里胡哨。
(6)为社会稳定和发展贡献一份力量。
3.4 系统用例分析
大学生兼职综合网络空间开发设计要求。目的是将大学生兼职管理将传统管理方式转换为在网上管理,完成大学生兼职管理的方便快捷、安全性高、交易规范做了保障,目标明确。大学生兼职管理系统可以将功能划分为管理员功能、企业功能和学生功能。
(1)管理员关键功能包含学生管理、企业管理、岗位类型管理、招聘兼职管理、应聘信息管理、面试通知管理、面试信息管理、就业通知管理、兼职评价管理、系统管理、我的信息等进行管理。管理员用例如下:
图3-1 管理员用例图
(2)企业注册登录系统首页可以查看招聘兼职管理、应聘信息管理、面试通知管理、面试信息管理、就业通知管理、兼职评价管理、我的信息等进行管理。企业用例如下:
图3-2 企业用例图
(3)学生登录系统首页可以查看招聘兼职、公告信息、个人中心(修改密码、应聘信息、面试通知、面试信息、就业通知、兼职评价、我的收藏)等进行管理。学生用例如下:
图3-3学生用例图
3.5系统流程分析
3.5.1 用户登录流程
登录流程实现了管理员、企业和学生的登录,在登录页面需要用户填写自己的信息,前端页面会将信息传递给后端接口,然后查询数据库确定该身份有效后登录成功,否则此用户登录失败,需要重新填写信息,进行再次验证,如图3-4所示。
图3-4登录流程图
3.5.2 系统操作流程
系统操作流程分析是软件开发过程中的一个关键环节,它是整个系统整体的运行过程,必须保证其中的每一个步骤都是确定的,这样一个规范的流程图可以使开发者易于理解,快速的投入到接口开发中,从而提升系统开发效率。
同时,流程图还能减少开发者对系统操作流程产生歧义和降低沟通的成本,系统操作流程如图3-5所示。
图3-5系统操作流程图
3.6小结
大学生兼职管理系统旨在让用户能够轻松便捷的管理系统信息,让管理员的工作负担减轻。本章主要对系统的经济、技术、法律、市场可行性进行分析。确认可行后,对大学生兼职管理系统进行了需求分析和流程分析,从学生、企业和管理员角度思考了可能会有的需求,是后续论文和应用开发的基础指导。
4 系统总体设计
4.1系统功能结构设计图
系统采用了结构化开发的方法。这种开发方法的优点是控制性比较强,开发过程中采用了结构化和模块化的设计思想,自顶向下,从总体到部分,合理划分系统的结构和模块。结构化开发时使用模块式开发,各模块之间互不影响,方便系统的开发与管理。系统总体功能如下图所示:
图 4-1系统总体功能模块图
4.2 数据库设计与实现
在每一个系统中数据库有着非常重要的作用,数据库的设计得好将会增加系统的效率以及系统各逻辑功能的实现。所以数据库的设计我们要从系统的实际需要出发,才能使其更为完美的符合系统功能的实现。
4.2.1 概念模型设计
概念模型是对现实中的问题出现的事物的进行描述,ER图是由实体及其关系构成的图,通过E-R图可以清楚地描述系统涉及到的实体之间的相互关系。本文将“学生、兼职评价、就业通知、招聘兼职、面试通知、面试信息”等作为实体,它们的局部E-R图,如图4-2所示:
图4-2局部E-R图
4.2.2 系统数据表设计
数据库表的设计通常是根据业务逻辑设置的。数据库模型在数据库中设计,并根据模型创建数据库表。数据库包涵了以下数据表来实现了对数据库的存储、调用。以下分别列出数据表的每个字段名称、类型、长度、字段说明、主键、默认值。
表4-1:面试信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
mianshibianhao varchar 200 面试编号
gangweimingcheng varchar 200 岗位名称
gangweileixing varchar 200 岗位类型
tupian longtext 4294967295 图片
mianshishijian date 面试时间
xueshengzhanghao varchar 200 学生账号
xueshengxingming varchar 200 学生姓名
qiyezhanghao varchar 200 企业账号
qiyemingcheng varchar 200 企业名称
表4-2:面试通知
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
tongzhibianhao varchar 200 通知编号
gangweimingcheng varchar 200 岗位名称
gangweileixing varchar 200 岗位类型
tupian longtext 4294967295 图片
mianshishijian datetime 面试时间
mianshididian varchar 200 面试地点
tongzhishijian date 通知时间
qiyezhanghao varchar 200 企业账号
qiyexingming varchar 200 企业姓名
xueshengzhanghao varchar 200 学生账号
xueshengxingming varchar 200 学生姓名
表4-3:就业通知
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
tongzhibianhao varchar 200 通知编号
gangweimingcheng varchar 200 岗位名称
gangweileixing varchar 200 岗位类型
tupian longtext 4294967295 图片
jiuyeshijian datetime 就业时间
tongzhishijian date 通知时间
qiyezhanghao varchar 200 企业账号
qiyemingcheng varchar 200 企业名称
xueshengzhanghao varchar 200 学生账号
xueshengxingming varchar 200 学生姓名
表4-4:招聘兼职
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zhaopinbianhao varchar 200 招聘编号
gangweimingcheng varchar 200 岗位名称
gangweileixing varchar 200 岗位类型
gangweiyaoqiu longtext 4294967295 岗位要求
tupian longtext 4294967295 图片
xinzidaiyu double 薪资待遇
gongzuozhize longtext 4294967295 工作职责
xiangqing longtext 4294967295 详情
fabushijian date 发布时间
qiyezhanghao varchar 200 企业账号
qiyemingcheng varchar 200 企业名称
表4-5:兼职评价
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
pingjiabianhao varchar 200 评价编号
biaoti varchar 200 标题
tupian longtext 4294967295 图片
pingyu longtext 4294967295 评语
pingjiashijian date 评价时间
xueshengzhanghao varchar 200 学生账号
xueshengxingming varchar 200 学生姓名
qiyezhanghao varchar 200 企业账号
qiyemingcheng varchar 200 企业名称
表4-6:应聘信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
jianlibianhao varchar 200 简历编号
gangweimingcheng varchar 200 岗位名称
gangweileixing varchar 200 岗位类型
tupian longtext 4294967295 图片
xiangguanwenjian longtext 4294967295 相关文件
toudishijian date 投递时间
xueshengzhanghao varchar 200 学生账号
xueshengxingming varchar 200 学生姓名
dianhuahaoma varchar 200 电话号码
xingbie varchar 200 性别
qiyezhanghao varchar 200 企业账号
qiyemingcheng varchar 200 企业名称
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
表4-7:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
username varchar 100 用户名
password varchar 100 密码
image varchar 200 头像
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
表4-8:岗位类型
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
gangweileixing varchar 200 岗位类型
表4-9:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP
表4-10:学生
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
xueshengzhanghao varchar 200 学生账号
xueshengxingming varchar 200 学生姓名
mima varchar 200 密码
xingbie varchar 200 性别
touxiang longtext 4294967295 头像
nianling int 年龄
dianhuahaoma varchar 200 电话号码
表4-11:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
url varchar 500 url
表4-12:系统简介
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3
表4-13:面试信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3
表4-14:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture longtext 4294967295 图片
type varchar 200 类型 1
inteltype varchar 200 推荐类型
remark varchar 200 备注
表4-15:企业
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
qiyezhanghao varchar 200 企业账号
qiyemingcheng varchar 200 企业名称
mima varchar 200 密码
touxiang longtext 4294967295 头像
xiangxidizhi varchar 200 详细地址
dianhuahaoma varchar 200 电话号码
表4-16:公告信息分类
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
typename varchar 200 分类名称
表4-17:公告信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
typename varchar 200 分类名称
name varchar 200 发布人
headportrait longtext 4294967295 头像
clicknum int 点击次数 0
clicktime datetime 最近点击时间
thumbsupnum int 赞 0
crazilynum int 踩 0
storeupnum int 收藏数 0
picture longtext 4294967295 图片
content longtext 4294967295 内容
4.3小结
本章刚开始总结了整个系统的总体功能,以树型图展示出来,使得看上去更加清晰明朗,而后介绍了每一个模型的属性和对数据库表的设计。
5 系统详细设计与实现
按照软件工程的流程来说,在系统的详细设计与实现阶段,要把模块、视图、模板进行相应的组合完成一个个所需的功能,此章将会把设计中模块一一说明如何设计和实现的。
5.1系统功能实现
当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到系统的导航条,通过导航条导航进入各功能展示页面进行操作。系统首页界面如图5-1所示:
图5-1 系统首页界面
在注册流程中,用户在Vue前端填写必要信息(如学生账号、密码等)并提交。前端将这些信息通过HTTP请求发送到Java后端。后端处理这些信息,检查用户名是否唯一,并将新用户数据存入MySQL数据库。完成后,后端向前端发送注册成功的确认,前端随后通知用户完成注册。这个过程实现了新用户的数据收集、验证和存储,系统注册页面如图5-2所示:
图5-2系统注册页面
招聘兼职,在招聘兼职页面的输入栏中输入岗位名称进行查询,可以查看到招聘兼职详细信息,并进行投递简历操作;招聘兼职详细页面如图5-3所示:
图5-3招聘兼职详细页面
个人中心,在个人中心页面输入个人信息可以进行更新操作,还可以对修改密码、应聘信息、面试通知、面试信息、就业通知、兼职评价、我的收藏进行操作;如图5-4所示:
图5-4 个人中心界面
5.2后台模块实现
在登录流程中,用户首先在Vue前端界面输入用户名和密码。这些信息通过HTTP请求发送到Java后端。后端接收请求,通过与MySQL数据库交互验证用户凭证。如果认证成功,后端会返回给前端,允许用户访问系统。这个过程涵盖了从用户输入到系统验证和响应的全过程。如图5-5所示。
图5-5 后台登录界面
5.2.1 管理员模块实现
管理员进入主页面,主要功能包括对学生管理、企业管理、岗位类型管理、招聘兼职管理、应聘信息管理、面试通知管理、面试信息管理、就业通知管理、兼职评价管理、系统管理、我的信息等进行操作。管理员主页面如图5-6所示:
图5-6 管理员主页面
学生管理功能在视图层(view层)进行交互,比如点击“搜索、新增或删除”按钮或填写学生表单。这些学生表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如详情、修改或删除学生,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便学生功能可以看到最新的信息或相应的操作反馈。如图5-7所示:
图5-7学生管理界面
招聘兼职管理功能在视图层(view层)进行交互,比如点击“搜索或删除”按钮或填写招聘兼职表单。这些招聘兼职表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如详情、修改或删除招聘兼职,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便招聘兼职功能可以看到最新的信息或相应的操作反馈。如图5-8所示:
图5-8招聘兼职管理界面
应聘信息管理功能在视图层(view层)进行交互,比如点击“搜索或删除”按钮或填写应聘信息表单。这些应聘信息表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如详情或删除应聘信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便应聘信息功能可以看到最新的信息或相应的操作反馈。如图5-9所示:
图5-9应聘信息管理界面
面试通知管理功能在视图层(view层)进行交互,比如点击“搜索或删除”按钮或填写面试通知表单。这些面试通知表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如详情、修改或删除面试通知,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便面试通知功能可以看到最新的信息或相应的操作反馈。如图5-10所示:
图5-10面试通知管理界面
面试信息管理功能在视图层(view层)进行交互,比如点击“搜索或删除”按钮或填写面试信息表单。这些面试信息表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如详情、修改或删除面试信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便面试信息功能可以看到最新的信息或相应的操作反馈;如图5-11所示:
图5-11面试信息管理界面
5.2.2企业模块实现
企业进入主页面,主要功能包括对招聘兼职管理、应聘信息管理、面试通知管理、面试信息管理、就业通知管理、兼职评价管理、我的信息等进行操作。企业主页面如图5-12所示:
图5-12企业主页面
5.3小结
本章介绍了系统的各个模块和实现功能,对模块下的关键功能进行了介绍,并通过图片展示了实现效果。
6 系统测试
6.1软件测试的定义
在软件测试的过程之中,为了保证软件测试的各项工作能够安全有序地进行,就要对整个测试过程进行有效的干预或管理。
我们要清楚的是,无论从理论上,还是从经验上,我们都无法发现软件系统中的所有错误,一个软件系统必定存在着缺陷,软件测试必然有一定的局限性。
6.2测试方法
系统测试不仅仅是发现系统潜在的BUG或错误,而更为重要的是为用户提供一个良好的体验和安全可使用的产品服务。而通过发现错误或潜在的问题,将有助于提升产品的竞争力,这也是软件测试的其中的重要目的之一。
尽管软件测试的方法有好几种,但现目前主要采用的是包括以功能性为主要测试方向的黑盒测试以及以逻辑性为主要测试方向的白盒测试,由于这也是二种不一样的测试方式,因此最先白盒测试是依据程序的内部结构逻辑总体设计测试测试用例的方式。 也称之为构造测试和夹层玻璃实例测试,将手机软件视为全透明的黑盒,依据程序的构造和解决逻辑挑选适宜的测试实例,测试手机软件的逻辑途径和步骤, 科学研究其与设计方案是不是一致的黑盒测试主要是挑选充足的测试测试用例,充足遮盖源码,尽量多地发觉程序中产生的不正确。 关键有这两种方式。 一种称为逻辑未来展望法,另一种称为途径未来展望法。
黑盒测试:又被称为作用测试、数据驱动测试等,将精确测量目标视为白盒,彻底不考虑到程序的构造和特点,只需依据说明书查验程序的作用是不是常规应用就可以。
6.3测试过程
登录:录入登录信息,输入账号,账号密码,用户权限,然后单击登录进行操作,会出现两种情况:一种情况是登录成功,进入用户相应的功能界面进行下一步操作;另一种情况是提示登录失败,系统会弹出一个对话框要求重新登录操作;
管理员登录:录入登录信息,管理员账号,密码,权限,然后单击登录进行操作,会出现两种情况:登录成功进入管理员具有权限的功能界面和提示登录失败。一种情况是登录成功,进入管理员界面进行下一步操作;另一种情况是提示登录失败,系统会弹出一个对话框要求重新登录操作。
6.4测试结果
通过一系列的软件测试,系统基本上满足了需求分析中设计目标的要求。软件功能基本上是完整的,使用者表现良好,系统故障处理基本上是正确的,缺陷也可以得到纠正。然而,在测试过程中也发现了系统的一些不可改变的方面,例如, 系统的数据库没有被完全完善,用户的信息显示也不全面。与此同时,用户不能修改自己提交的作业信息。如此一来,当系统进一步修改和完善时,这些问题就必须得到纠正。
最后,该系统通过了测试。
6.5小结
本章采用的是动态测试和黑盒测试方法进行测试,查看程序在运行过程中发现可能的错误操作,用测试用例来检测应用的稳定性,安全性。并在测试过程严格按照测试标准进行测试,保证系统能够安全运行,减少差错。
结 论
本次论文介绍了开发大学生兼职管理系统的全部过程,该系统运用了java语言进行编写、MySQL数据库存储数据和springboot框架搭建出了一款简洁方便的大学生兼职管理系统。对学生来说,只有简单的操作,不需要担心复杂的界面,难懂的操作来完成大学生兼职管理系统最基本的工作,节约时间和资源。对管理员来说,可以清晰明了的检查大学生兼职的管理情况,增删改查都通过后台系统完成,得益于数据库建表的工作大大简化。使得开发者和管理员的工作变得更加方便简单。
由于作者的技术水平有限,还有很多问题没有解决,有一些功能还未添加:界面风格过于生硬,大片空间没有进行合理利用;总体上说,此次大学生兼职管理系统相对于那些已经非常成熟的管理系统还差得远,只能算上一个雏形,所达到的标准只能令作者勉强满意,之后仍需继续改进,努力完成上述功能,让其成为一个可以为大众使用的,真正的大学生兼职管理系统。
参考文献
[1]邓阳名,顾潇,梁爱媚.基于Java语言的数据库访问技术应用研究[J].中国新通信,2023,25(08):83-85.
[2]罗尹奇.基于JNI的MySQL数据库访问性能优化研究[J].电子元器件与信息技术,2021,5(12):3-6.
[3]张振超,吴杰,陈序蓬.浅谈Java中Mysql数据库的连接与操作[J].信息记录材料,2020,21(02):144-145.
[4]陈倩怡,何军.Vue+Springboot+MyBatis技术应用解析[J].电脑编程技巧与维护,2020(01):14-15+28.
[5]熊永平.基于SpringBoot框架应用开发技术的分析与研究[J].电脑知识与技术,2022,15(36):76-77.
[6]苏文瑾.“MySQL数据库”课程教学难点分析——以数据库设计为例[J].无线互联科技,2021,18(12):119-120.
[7]毕超群.计算机数据库开发的必要性设计原则[J].电子技术,2021,50(05):106-107.
[8]王嘉庆,杨卫东,何亦征.关系数据库的实体间关系提取方法的研究[J].计算机应用与软件,2019,36(10):10-16+38.
[9]林信良. Spring2.0技术手册[M].北京:电子工业出版社,2020(07):87.
[10]杜波依斯. MySQL技术内幕[M]. 第4版. 人民邮电出版社, 2021年07月:50.
[11]Zerouali Ahmed,Mens Tom,Decan Alexandre,Gonzalez Barahona Jesus,Robles Gregorio.A multi-dimensional analysis of technical lag in Debian-based Docker images[J].Empirical Software Engineering,2021,26(2):34-39.
[12]Campesato Oswald. Java Basics Using ChatGPT/GPT-4[M]. Mercury Learning and Information: 2023-12-26.
致 谢
在如此特殊时间里,我能顺利将毕业设计和论文完成,这都要归功于导师的无私的帮助,悉心的教导。为我指引方向,解答疑惑,每个问题都能得到专业的解释,让我在解惑的同时又能对语言和框架的理解更加深入。
通过这次毕业设计,我了解了怎样将理论联系到实际,收获到了许多书本上不曾有过的知识,也将知识融入自己的设计中进行了努力,拥有了成就感。
我也发觉了规划计划和查阅资料的重要性,规划计划让你每一步都有明确的目标,按照计划走能少走很多弯路,省去很多不必要的麻烦。java是一门发展迅速,改动较大的语言,就需要在网络上不断寻找新的文章,合适的版本和技术逐渐完善程序,解决各种各样的小问题。
以上,毕业设计磨练了我的开发技术和理论知识,这为我以后的道路打下了坚实的基础,这段经历也会成为我人生中宝贵的财富。
最后,我要再次感谢导师对我的帮助,和同学们在我设计过程中提出的意见和建议。