摘 要:近年来,随着计算机技术的不变进步,计算机逐渐融入人们的日常生活,使人们的生活质量大大提高,计算机解决问题与传统方式有着明显的优势,可以提高效率。在现代的大学校园中,大学生们有大量的时间,通常会选择做兼职赚零花钱,然而如何获取安全、有效、实时的兼职信息是一个普遍的问题。通常兼职招聘人员通过线下广告以及社交软件来发布兼职信息,通过这种方式得到的兼职信息,学生往往无法确定信息是否安全,同时不能保证这些信息的实时性。所以建立一个便捷、高效、安全、可靠的兼职系统的需要已经越来越迫切。本文基于SSM框架设计并开发了一个大学生兼职系统。本文将从绪论、系统开发的相关技术、系统分析、系统实现、系统测试和总结六个部分进行论述。
关键词:SSM;大学生兼职系统;MySQL;Java
引言
在现代的大学校园中,大学生们有大量的时间,通常会选择做兼职赚零花钱,然而如何获取安全、有效、实时的兼职信息是一个普遍的问题。通常兼职招聘人员通过线下广告以及社交软件来发布兼职信息,通过这种方式得到的兼职信息,学生往往无法确定信息是否安全,同时不能保证这些信息的实时性。所以建立一个便捷、高效、安全、可靠的兼职系统的需要已经越来越迫切,本文基于SSM框架设计开发一个大学生兼职系统。
1绪论
1.1系统的开发背景及意义
近年来,随着大学生的兼职需求日益增加,如何获取安全可靠的兼职信息成为了当前的一个普遍的问题。由于新型冠状病毒的影响,很多线下招聘已经没有办法继续进行。此外,通过网络发布的兼职信息学生往往无法判断是否真实,所以开发一个大学生兼职系统是非常有必要的。
传统的兼职信息一般是通过传单、QQ群、微信等进行发布,随着学生对于兼职的需求量增加,这些兼职往往是供大于求的状态,很多信息不具备实时性,并且没有人可以保障这些信息是否安全可靠。及时信息安全可靠,也不能保证兼职老板是否会及时发放工资。因此,大学生兼职系统的优势就凸显了出来,大学生兼职系统可以让大学生非常容易的找到符合自己的工作,同时系统还会验证发布者的资质,确保发布信息的安全性。
我国目前针对大学生兼职系统设计与开发方面的研究相对来说较少,通常都是将兼职作为招聘系统里的一个搜索项来设计与实现的。这些系统通常没有办法非常准确的定位大学生真正的需求,导致这些系统上充斥着虚假信息,例如一个招聘兼职修改图片的职位实际上是获得学生的信息,推销他们的PS课程,这就无法保障学生的合法权益。而对于外国来说,通常兼职是收到法律保护的,并且会有时间要求,这就导致这类兼职系统不会出现大量的虚假信息。
本文根据目前大学生兼职系统的研究背景、研究意义和研究现状进行分析,设计开发了一个基于SSM框架的大学生兼职系统,主要实现了简历管理系统、兼职发布管理系统、兼职报名系统等。
1.2 研究内容
本文主要介绍大学生兼职系统的系统开发的背景及意义,发展现况以及论文的基本结构。随后介绍系统的实现,主要包括运行环境、主界面的实现、登录模块的实现、兼职管理模块的实现、简历管理模块的实现、兼职报名模块的实现、个人基础信息维护模块的实现、公司基础信息维护模块的实现和投递兼职模块的实现。
2 系统开发的相关技术
2.1 MyBatis框架介绍
论文使用MyBatis 作为持久层框架,该框架有很多优势,主要可以根据SQL语句动态配置来对数据库进行相应操作,该框架同时包含数据库的高级特性如触发器,函数,存储过程等。MyBatis 使用配置文件的方式记录数据库连接参数实现连接,不需要采用传统的Jdbc模式就能拿到存储在数据库中的数据,采用这种连接方式能有效的减少创建数据表和销毁数据表时的开销。此外,该框架以配置文件的形式实现SQL语句进而操纵数据库,Java的类映射成数据库中的数据[1-5]。
Mybatis 框架主要分为接口层、数据处理层、基础支撑层这三层架构,如下图所示。
Mybatis的结构概述:
(1)第一层接口:Api接口层提供相关功能的接口,服务层调用这些接口后。实际处理业务层只需要使用这些接口就可以获得相应的功能,从而完成对数据库的操作。当系统调用某一接口后,Mybatis框架就可以获取配置文件中对应的SQL语句对数据库进行相应增删改查。
(2)第二层数据:当服务层调用接口层的接口后,数据层会找到相应的配置文件中的SQL语句对数据库进行增删改查,操作数据库后数据库会返回相应数据。数据层主要是将原始操作封装为接口以便调用,当其他层调用这些接口后可以非常简单的对数据库进行相应增删改查。
(3)第三层支撑:基础支撑层主要上存储连接数据库操作数据库的基本的参数,例如操作数据库的驱动,数据库的用户名及密码等。
2.2Spring和SpringMVC框架概要
本文使用Spring框架作为主要设计层框架,该框架是目前较为流行的开源层框架,该框架主要负责业务层和其它层的耦合问题,该框架主要是采用接口解决耦合问题,虽然有一定弊端,但是可以解决一部分耦合问题。
在任何TomCat和JBoss这类服务器中,Spring框架可以承受不同环境的影响,使用基础功能。同时Spring框架不会受到特定的服务器限制,不会将自身和指定项目和对象相绑定,这一特性展现了Spring框架的优势:在Spring框架中已经配置好的对象可以在不同的项目和不同环境中执行。所以Spring框架可以被不同服务器重用,降低耦合性,增加可扩展性。Spring框架的体系结构如下图所示。
在Spring框架中每个模块或组件都是独立的,他们可以单一的被调用,或者多个联合被调用。主要包括核心容器、Sprisng上下文和SpringAOP。
(1)Spring中最基本的功能模块(特性)由核心容器实现。该容器采用对象工厂来创建、加载实例。该容器的功能主要利用控制反转对资源进行操作,将原本资源控制权限从双方控制转变为由Spring的核心容器来控制,进而减弱了JAVA对象的耦合度,从而让实现功能时主要关注使用对象而不是创建对象。
(2)Spring 上下文主要是通过Spring-content.xml这一配置文件保存框架功能的相关参数信息,当工程启动时Spring框架可以自动读取Spring-content.xml该配置文件并对所有模块进行初始化。在Spring-content.xml配置文件中的Spring-content标签中配置相关功能,例如检验输入字段的有效性,管理程序异常等。
(3)Spring框架中除了IOC功能外之外,该框架还有另外一个叫做AOP的功能也十分强大。该功能本质上是一个阻断器,主要的功能是操作某些将要执行或者已经执行完成的方法。使用该功能,我们可以将兼职管理系统中设计的核心功能和一些通用的方法分开,易于实现日志管理,数据库基本信息的管理从而减少代码冗余,将核心代码和通用代码更加具体、清晰的表现出来[6,7]。
Spring MVC框架主要核心思想的采用一个分发器来处理用户的各个请求,当有一个请求进来后,该分发器会将这个请求分配给相应的程序进行处理,此外,该框架还可以进行地址映射、数据库视图分析、程序参数检验、对文件进行便捷的上传下载等功能。该框架主要采用注解的方式来表示不同功能,通过Controller注解来获取所有请求,拿到请求后用RequestMapping注解来处理请求。该框架的主要的体系结构如下图所示。
Spring-mvc主要由七个核心部件组成,共同完成从请求到响应再获取数据库数据,再到返回数据这一流程。在这里我们主要介绍前端控制器(DispatcherServlet)、处理器映射器(HandlerMapping)、处理器(Handler)、处理器适配器(HandlAdapter)、:视图解析器(ViewResolver)和视图(View)。
前端控制器(DispatcherServlet)主要处理用户的请求,当用户的请求到达后,该控制器作为MVC设计模式中的controller来控制整体的数据流动,该组件可以协同其它组件完成用户请求,采用分发器的形式来减少组件之间的耦合度。
处理器映射器(HandlerMapping)主要是根据用户不同的相应,将任务分配给不同处理器,主要采用配置文件实现接口和注解的不同映射。
处理器(Handler)主要功能是控制后端程序,根据DispatcherServlet分发的不同请求处理器进而处理用户的不同请求,改模块通常是由程序员根据业务进行自定义,因此该模块可塑性很强。
处理器适配器(HandlAdapter)主要上用来针对Handler无法处理的某些请求,DispatcherServlet分发任务后发现没有handler可以解决,这时会发送到该模块上进行处理。
视图解析器(ViewResolver)主要是将handler处理后的结果转化为View视图,主要流程上首先将逻辑视图转化为页面,然后生成对象,最后对该视图进行渲染,然后根据静态资源CSS配置后显示给用户。
视图(View)主要包括jsp页面、html页面和xml页面等。改功能模块主要上根据具体的不同业务进行具体的开发。
3 系统分析
3.1 功能需求
根据对实际大学生的需求的考察,大学生兼职系统主要应该包含管理员与用户的角色,其中管理员应该包含超级管理员和普通管理员,其中普通管理员也就是公司主要包含审核简历,发布兼职,修改公司简介等功能。超级管理员主要是管理大学生的账号和公司的账号。大学生账号具有修改简历,报名兼职,修改个人信息等功能,具体需求如下表所示。
表1 功能需求列表
编号 | 功能名称 | 功能描述 | 输入内容 | 输出内容 |
1 | 用户注册 | 学生和公司可以进行注册 | 邮箱、密码 | 注册的结果(提醒“用户注册成功”或者“用户注册失败”) |
2 | 用户登录 | 登录大学生兼职系统 | 用户名、密码 | 用户登录是否成功 |
3 | 兼职发布 | 公司发布兼职 | 兼职相关信息 | 是否发布成功 |
4 | 处理简历 | 浏览简历,筛选兼职人员 | 无 | 无 |
5 | 修改公司信息 | 公司修改相关信息 | 要修改的信息 | 提示修改的结果 |
6 | 已经完成兼职 | 公司查看完成的兼职 | 无 | 学生信息 |
7 | 报名参加兼职 | 大学生报名参加兼职 | 添加简历 | 是否报名成功 |
8 | 填写简历 | 大学生完善自己的简历 | 简历相关信息 | 是否填写成功 |
9 | 查看简历 | 大学生查看自己的简历 | 无 | 显示所有简历信息 |
10 | 修改简历 | 大学生修改自己的简历 | 简历相关信息 | 修改是否成功 |
11 | 修改密码 | 用户修改密码 | 新密码、原密码 | 是否修改成功 |
图1用例图
3.2 业务流程
大学生兼职系统的业务流程具体如下图所示。
图2总体业务流程图
在用户登录系统后,系统根据用户角色进入不同页面。当大学生登录系统后,可以完善简历,查看当前所有兼职信息,选择自己合适的进行报名,当公司同意后,大学生就可以开始兼职工作。当公司登录系统后,首先需要填写公司信息,以便验证公司资历,验证完成后,公司可以发布招聘信息,当有大学生报名后,公司收到学生简历,筛选后选择合适的人员进行兼职。
3.3 数据流程
学生和公司都可以通过登录系统的界面来进入系统,如下图所示:
图3 数据流图
用户在登录大学生兼职系统时,系统通过账号和密码判断登录的是学生还是公司,再根据登录的角色跳转到不同的页面上,用户在系统内操作时,根据操作的不同数据会从页面流向MySQL数据库,再从数据库中拿到数据反馈给用户[8-10]。
3.4 系统总体设计
大学生管理系统主要分为学生和公司两个角色操作的子系统,在这两个子系统可分为功能模块,具体功能模块如下图所示。
图4 系统功能图
学生子系统只能让学生使用,其中包括报名兼职、简历管理、投递兼职管理和个人信息管理等功能。
公司子系统只能让公司员工使用,其中主要包括兼职发布、公司基础信息维护、兼职人员管理等功能。
3.5 系统功能模块设计
(1)登录功能模块
该模块的主要功能是判断用户登录角色信息,判断用户是学生还是公司,在账号与密码验证成功的情况下,根据角色的不同跳转不同的显示界面,该模块是整个系统的入口。
(2)简历管理模块
学生在登录系统后,可以管理自己的简历,主要功能包括查看自己的简历,修改自己的简历以及删除自己的简历。
(3)报名兼职
在学生登录后,可以查看当前所有可以参加的兼职,选择合适的兼职可以直接投递简历进行报名。
(4)兼职管理模块
该模块主要是由公司员工使用,在发布兼职信息后,学生报名之后,可以查看当前报名情况选择合适的同学进行兼职。
(5)公司基础信息管理模块
该模块只能由公司员工使用,主要是对公司的基础信息维护,包括修改公司相关信息,查看公司相关信息,修改公司相关信息。
(6)兼职人员管理模块
该模块主要由公司员工使用,当公司员工登录系统后,可以查看发布的兼职的报名学生的简历及其基本信息。
3.6 数据库设计
大学生兼职系统采用MySQL数据库,本系统主要包括系统用户表、兼职表、公司信息表、兼职记录表、兼职信息表和学生信息表7个表,每个表的具体设计情况如下所示。
表2 系统用户表
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 |
1 | ID | Int | 4 | 自增 | 10 |
2 | VarChar | 50 | 否 | 255 | |
3 | Password | VarChar | 50 | 否 | 255 |
4 | Type | VarChar | 50 | 否 | 255 |
5 | State | VarChar | 50 | 是 | 255 |
表3 投诉表
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 |
1 | ID | Int | 4 | 自增 | 10 |
2 | AllID | VarChar | 50 | 是 | 255 |
3 | VarChar | 50 | 是 | 255 | |
4 | Allemail | VarChar | 50 | 是 | 255 |
5 | Allreason | VarChar | 50 | 是 | 255 |
6 | Alltext | VarChar | 50 | 是 | 255 |
7 | Allstate | VarChar | 50 | 是 | 255 |
8 | Alltime | Datetime | 0 | 是 | 0 |
9 | Dealtext | VarChar | 50 | 是 | 255 |
10 | Dealtime | Datetime | 0 | 是 | 0 |
表4兼职报名表
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 |
1 | ID | Int | 4 | 自增 | 10 |
2 | Stuemail | VarChar | 50 | 是 | 255 |
3 | Comemail | VarChar | 50 | 是 | 255 |
4 | Applystate | VarChar | 50 | 是 | 255 |
5 | Applyid | VarChar | 50 | 是 | 255 |
6 | Applytime | DateTime | 0 | 是 | 0 |
7 | Stustate | VarChar | 50 | 是 | 255 |
8 | Comgrade | VarChar | 50 | 是 | 255 |
9 | Comtext | VarChar | 50 | 是 | 255 |
表5 公司信息表
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 |
1 | ID | Int | 4 | 自增 | 10 |
2 | VarChar | 50 | 是 | 255 | |
3 | Name | VarChar | 500 | 是 | 255 |
4 | Website | VarChar | 50 | 是 | 255 |
5 | City | VarChar | 50 | 是 | 255 |
6 | Select_industry_hidden | VarChar | 50 | 是 | 255 |
7 | Select_scale_hidden | VarChar | 50 | 是 | 255 |
8 | Temptation | VarChar | 50 | 是 | 255 |
9 | Principal | VarChar | 50 | 是 | 255 |
10 | Phone | Int | 4 | 是 | 20 |
表6 记录表
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 |
1 | ID | Int | 4 | 自增 | 10 |
2 | Stuemail | VarChar | 50 | 是 | 255 |
3 | Comemail | VarChar | 50 | 是 | 255 |
4 | Jobname | VarChar | 50 | 是 | 255 |
5 | Applystate | VarChar | 50 | 是 | 255 |
6 | Applytime | DateTime | 0 | 是 | 0 |
7 | Stugrade | VarChar | 50 | 是 | 255 |
8 | Stutext | DateTime | 50 | 是 | 255 |
9 | Comgrade | VarChar | 50 | 是 | 255 |
10 | Comtext | VarChar | 50 | 是 | 255 |
11 | Stustate | VarChar | 50 | 是 | 255 |
表7 兼职信息表
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 |
1 | ID | Int | 4 | 自增 | 10 |
2 | VarChar | 50 | 是 | 255 | |
3 | Jobtype | VarChar | 50 | 是 | 255 |
4 | Department | VarChar | 50 | 是 | 255 |
5 | Number | Int | 4 | 是 | 10 |
6 | Derequest | VarChar | 50 | 是 | 255 |
7 | Detail | VarChar | 50 | 是 | 255 |
8 | Salary | floot | 10 | 是 | 10 |
9 | Time | Datetime | 0 | 是 | 0 |
10 | State | VarChar | 50 | 是 | 255 |
表8 学生信息表
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 |
1 | ID | Int | 4 | 自增 | 10 |
2 | VarChar | 50 | 是 | 255 | |
3 | Name | VarChar | 50 | 是 | 255 |
4 | Age | VarChar | 50 | 是 | 255 |
5 | Sex | VarChar | 50 | 是 | 255 |
6 | Hight | Int | 4 | 是 | 10 |
7 | Weight | Int | 4 | 是 | 10 |
8 | Phone | Int | 4 | 是 | 20 |
9 | School | VarChar | 50 | 是 | 255 |
10 | Rank | VarChar | 50 | 是 | 255 |
11 | Beginyear | VarChar | 50 | 是 | 255 |
12 | Endyear | VarChar | 50 | 是 | 255 |
13 | Freetime | Datetime | 0 | 是 | 0 |
14 | Exjob | VarChar | 50 | 是 | 255 |
15 | Exsite | VarChar | 50 | 是 | 255 |
16 | Introduce | VarChar | 50 | 是 | 255 |
17 | Uptime | Datetime | 0 | 是 | 0 |
4 系统实现
4.1 主界面的实现
本文实现的是一个大学生兼职系统,该系统包含兼职管理模块、简历管理模块、兼职报名模块、个人基础信息维护模块、公司基础信息维护模块和投递兼职模块,主界面如图所示。
图5系统主界面
4.2登录模块的实现
用户登录分为学生和公司。首先用户输入账号和密码,点击登录后系统调取数据库的数据进行比对,首先对比账号密码是否正确,如果正确则返回用户的权限,然后系统进入相应的主界面。登录模块流程图如下图所示。
图6登录流程图
登录界面如下图所示。
图7登录界面
登录成功后会根据不同角色跳转不同的页面,不同角色有不同的操作权限。如下图所示为公司用户操作。
图8公司用户管理界面
4.3 兼职发布模块的实现
当公司员工需要发布新的兼职任务,需要登录系统后点击发布兼职,然后填入相关信息进行发布。
兼职发布流程图如下图所示。
图9发布兼职流程图
试卷添加页面如下图所示。
图10发布兼职页面
发布兼职成功页面如下图所示。
图11发布兼职成功页面
4.4 简历管理模块的实现
在公司已经登录的情况下,管理员点击待处理,可以查看报名兼职学生情况,根据实际的简历情况选择通过或者不通过。简历查阅功能流程图如下所示。
图12公司处理简历流程图
公司处理简历页面如下图所示。
图13公司处理简历页面
4.5 兼职报名模块的实现
当学生成功登录后,可以报名参加兼职。学生登录系统后,可以看到目前可以参加的兼职信息,点击后可以看到具体的兼职任务,如果认为合适自己,可以点击报名参加按钮,即可报名成功。兼职报名流程图如下图所示。
图14兼职报名模块流程图
兼职报名界面如下图所示。
图15兼职报名界面
我的报名页面如下图所示。
图16我的报名界面
学生报名兼职功能Controller层核心代码如下所示。
@RequestMapping(value = “/stuApply”)
@ResponseBody public Map<String,Object> stuApply(@RequestParam String email,@RequestParam int id)throws Exception{ Map<String,Object> map = new HashMap<String,Object>(); try{ Boolean result = studentService.stuApply(email,id); map.put(“tip”,result); }catch (Exception e){ throw new CustomException(“未知错误”); } return map; } |
学生报名兼职功能service层核心代码如下所示。
public Boolean stuApply(String email, int id) {
Boolean result = false; Resume resume = sDao.getResumeById(id); Map<String,Object> map = new HashMap<String,Object>(); Date dNow = new Date( ); SimpleDateFormat ft = new SimpleDateFormat (“yyyy-MM-dd HH:mm”); String applyTime =ft.format(dNow); map.put(“applyTime”,applyTime); map.put(“stuEmail”,email); map.put(“comEmail”,resume.getEmail()); map.put(“jobName”,resume.getJobName()); map.put(“applyId”,Integer.toString(id)); sDao.stuApply(map); result = true; return result; } |
学生报名兼职功能mapper配置文件核心代码如下所示。
<!–报名–>
<insert id=”stuApply” parameterType=”Java.util.Map”> INSERT INTO apply(stuEmail,comEmail,jobName,applyState,applyId,applyTime,stuState) VALUES(#{stuEmail},#{comEmail},#{jobName},”0″,#{applyId},#{applyTime},”0″) </insert> |
4.6 简历管理模块的实现
当学生登录大学生兼职系统后,可以对自己的简历进行编辑,以便在报名兼职后,公司员工可以快速筛选需要的兼职人员。简历管理模块流程图如下所示。
图17 简历管理流程图
我的简历页面如下图所示。
图18我的简历页面
我的简历(填写后)页面如下图所示。
图19我的简历页面
预览简历页面如下图所示。
图20预览简历页面
4.7 修改密码的实现
在用户成功登陆系统后,可以点击左侧修改密码选项。点击后跳转到修改密码界面,在改页面中需要填写原始密码,以及两次新密码。如果两次新密码不一致,则系统会弹出“对不起,两次密码不一至,请重新输入”的信息。如果原密码不正确,则系统会弹出“原密码输入错误”的信息,如果修改成功则会退出系统,重新登录。修改密码模块流程图如下所示。
图21修改密码流程图
修改密码页面如下图所示。
图22我的简历页面
5系统测试
5.1测试的目的
为了大学生兼职系统的稳定性与可用性,需要进行一定程度的测试来检验系统,本章主要针对系统的界面以及功能性进行测试,目的是保证大学生兼职系统在部署到生产环境下可以正常,有效的运转。本次测试主要针对Web端的使用以及后台调用数据库是否正常进行测试,Web端主要对界面管理、登录管理和兼职发布,审核管理功能进行测试,测试其是否正常运行,以及可能会出现的问题[11-13]。
5.2界面测试
本文采用黑盒测试Web端的界面,主要测试字体,窗口,以及其他元素是否正常。Web端界面测试项目如下表所示。
表9用户界面测试表
检查项 | 测试人 | 测试结果 |
窗口切换、移动、改变大小时正常吗? | 本人 | 正常 |
各种界面元素的文字正确吗?(如标题、提示等) | 本人 | 正常 |
各种界面元素的状态正确吗?(如有效、无效、选中等状态) | 本人 | 正常 |
各种界面元素支持键盘操作吗? | 本人 | 正常 |
数据项能正确回显吗? | 本人 | 正常 |
执行有风险的操作时,有“确认”、“放弃”等提示吗? | 本人 | 正常 |
有联机帮助吗? | 本人 | 正常 |
各种界面元素的布局合理吗?美观吗? | 本人 | 正常 |
5.3功能测试
(1)用户登录测试
当用户登录,输入账号或密码为空时,提示框会提示“请输入完整”。当输入错误的账号或密码时,会弹出提示框显示“用户名或密码错误”。
图23用户登录测试界面
当用户使用正确的账号和密码登录时,系统会弹出提示框显示“登陆成功!”。这时页面会自动跳转到相应的角色主界面。
图24用户登录测试界面
(2)用户信息管理测试
对用户信息管理进行测试时,采用黑盒测试法中的等效性法和边界值法相结合的测试方法对功能进行测试,例如输入错误的数据,输入非法的字段或者输入超越输入框规定范围的数字(如年龄、手机号、QQ号和银行账号等)。系统用户信息管理测试表如下表所示。
表10用户信息管理测试
功能A描述 | 以用户身份登录,注册、修改、查询用户基本信息 | ||
用例目的 | 是否能够正确修改信息 | ||
前提条件 | 用户安全登录系统界面 | ||
输入/动作 | 输入 | 实际情况 | |
示例:典型值… | 年龄 53 | 53 | |
示例:边界值… | 年龄 —10 | 输入数据有误 | |
示例:异常值… | 年龄 a | 输入数据有误 |
如果输入的测试数据完全正确,则弹出对话框显示“操作成功”,并且显示“添加成功!”,这时表示系统添加用户成功,具体对话框如下图所示。
图25操作成功界面
(3)部分功能测试
为了验证系统功能的有效性及完整性,本文做了大量黑盒测试。下表展示了部分测试实例。
表11部分测试用例表
模块 | 用例描述 | 预期结果 | 备注 |
用户注册 | 用户名文本框中不输入任何数据 | 提示“请填写完整的信息” | 测试用户名是否为空 |
在密码文本框中输入“123”三个字符 | 提示“密码长度最少为6位” | 测试密码位数是否正确 | |
密码修改 | 在密码文本框和确认密码文本框中分别输“123456”和“258769” | 提示“两次输入的密码不匹配” | 测试用户两次输入的密码是否匹配 |
在用户管理中修改密码,原始密码若输入不正确 | 提示“原始密码错误” | 测试原始密码是否正确 | |
简历信息 | 简历信息内容为空 | 系统提示简历信息内容为空 | 测试简历信息是否为空 |
输入简历相关内容 | 系统提示添加简历信息成功,简历信息板显示新的简历信息 | 测试简历信息是否添加成功 | |
发布兼职 | 未填任何信息时,点击发布兼职 | 系统发布兼职失败 | 测试是否能不填信息进行发布兼职 |
所有信息填写完成后,点击发布兼职 | 系统发布兼职成功 | 测试试发布兼职是否可用 |
5.3测试结果
进过一系列的测试后,大学生兼职系统基本可以按照开发需求正常运行,能够满足高校的基本需求。本次测试项目主要针对系统日常使用进行测试,由于条件有限只进行了界面测试和系统测试,在未来可以尝试对系统进行一定程度的压力测试,检验系统的承载能力。
6结论
本文根据当前大环境下大学生所处的情况,以及大学生对兼职的需求设计并开发了一个大学生兼职系统。本文首先介绍大学生兼职系统开发的背景及意义,发展现况以及论文的基本结构,然后介绍了开发所采用的相关技术SSM框架。随后进行了系统分析,主要针对功能需求、业务流程、数据流程、系统总体设计、系统功能模块设计和数据库设计几个方面进行介绍,并且针对这些设计完成了系统的开发,主要实现了大学生兼职系统的主界面、登录模块、兼职管理模块、简历管理模块、兼职报名模块、个人基础信息维护模块、公司基础信息维护模块和投递兼职模块。最后进行了系统测试,分别对系统界面和功能进行了测试,分析了大学生兼职系统测试情况,以及存在的缺陷。在未来,本系统可以继续完善,将系统的规模扩展到多并发版本,并且加入人工智能的方法为学生推荐兼职工作。在并发版本,需要在系统测试时需要加入压力测试,来保证系统运行的稳定性。
参考文献
[1] 金珊珊.基于SSM框架的心血管外科护理信息自动管理系统设计[J].自动化技术与应用,2022,41(04):170-173.
[2]黄加伟,夏兴,冯子潇.基于SSM+VUE框架的楼宇电能综合管控系统[J].计算技术与自动化,2022,41(01).
[3]黄子扬,祝奕炜,沈信宇,慕京生,焦俊.基于SSM的水质在线监测与数据分析[J].现代农业科技,2022(05):129-135.
[4] 徐飞龙.JSP的网络数据库连接技术探讨[J].时代汽车,2021(23):36-37.
[5] 庾佳.关于JSP动态Web开发技术课程建设思路的研究[J].电脑知识与技术,2020,16(14).
[7] 涂华燕.基于MySQL宿舍管理系统数据库设计[J].电脑编程技巧与维护,2021(12).
[8] 闫继正,张雷,张海涛.基于MySQL的空管设备集中监控系统数据库设计[J].微处理机,2021,42(06):47-51.
[9] 李兆琪.基于MySQL数据库服务器创建企业工资管理系统[J].赤峰学院学报(自然科学版),2021,37(11).
[10] 徐艺澜,沈艳,范恩,余冬华.基于PHP和MySQL的绿色垃圾回收系统设计[J].电脑知识与技术.
[11] 张岚,什么是黑盒测试?[J].电子质量,2019(02):23.
[12] 张勇斌,蔡吉飞,李烨.基于黑盒测试的高校课堂教学目标达成度研究[J].北京印刷学院学报,2021,29(10).
[13] 林勤花.黑盒测试用例设计方法及综合应用[J].电子测试,2018(17).
致 谢
我历时将近两个月时间终于把这篇论文写完了,在这段充满奋斗的历程中,带给我的学生生涯无限的激情和收获。在论文的写作过程中遇到了无数的困难和障碍,都在同学和老师的帮助下度过了。在查找资料的时候,同学们给我提供了很多方面的支持与帮助,尤其要强烈感谢我的论文指导老师,没有他对我进行了不厌其烦的指导和帮助,无私的为我进行论文的修改和改进,就没有我这篇论文的最终完成。在此,我向指导和帮助过我的老师们表示最衷心的感谢!同时,我也要感谢本论文所引用的各位学者的专著,如果没有这些学者的研究成果的启发和帮助,我将无法完成本篇论文的最终写作。
最后,由于我的学术水平有限,所写论文难免有不足之处,请各位老师批评和指正!
1、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“文章版权申述”(推荐),也可以打举报电话:18735597641(电话支持时间:9:00-18:30)。
2、网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
3、本站所有内容均由合作方或网友投稿,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务。
原创文章,作者:1158,如若转载,请注明出处:https://www.447766.cn/chachong/161160.html,