基于SSM的大学生兼职管理系统_第1页
基于SSM的大学生兼职管理系统_第2页
基于SSM的大学生兼职管理系统_第3页
基于SSM的大学生兼职管理系统_第4页
基于SSM的大学生兼职管理系统_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于SSM大学生兼职管理系统摘要:近年来,随着计算机技术的不变进步,计算机逐渐融入人们的日常生活,使人们的生活质量大大提高,计算机解决问题与传统方式有着明显的优势,可以提高效率。在现代的大学校园中,大学生们有大量的时间,通常会选择做兼职赚零花钱,然而如何获取安全、有效、实时的兼职信息是一个普遍的问题。通常兼职招聘人员通过线下广告以及社交软件来发布兼职信息,通过这种方式得到的兼职信息,学生往往无法确定信息是否安全,同时不能保证这些信息的实时性。所以建立一个便捷、高效、安全、可靠的兼职系统的需要已经越来越迫切。本文基于SSM框架设计并开发了一个大学生兼职系统。本文将从绪论、系统开发的相关技术、系统分析、系统实现、系统测试和总结六个部分进行论述。关键词:SSM;大学生兼职系统;MySQL;JavaPart-timeManagementSystemforCollegeStudentsBasedonSSMAbstract:Inrecentyears,withtheconstantprogressofcomputertechnology,computersaregraduallyintegratedintopeople'sdailylife,whichgreatlyimprovespeople'squalityoflife.Computershaveobviousadvantagesovertraditionalmethodstosolveproblemsandcanimproveefficiency.Inmoderncollegecampuses,collegestudentshavealotoftimeandusuallychoosetoworkpart-timetoearnpocketmoney.However,howtoobtainsafe,effectiveandreal-timepart-timeinformationisacommonproblem.Usuallypart-timerecruiterspublishpart-timeinformationthroughofflineadvertisementsandsocialsoftware.Studentsoftencannotdeterminewhethertheinformationissafeornot,andcannotguaranteethereal-timenatureofthepart-timeinformationobtainedinthisway.Therefore,theneedtoestablishaconvenient,efficient,safeandreliablepart-timesystemhasbecomemoreandmoreurgent.Thispaperdesignsanddevelopsapart-timesystemforcollegestudentsbasedontheSSMframework.Thisarticlewilldiscussfromsixparts:introduction,relatedtechnologiesofsystemdevelopment,systemanalysis,systemimplementation,systemtestingandsummary.Areliablepart-timesystemcanprovidecollegestudentswithareliablesourceofpart-timeinformation,whichnotonlyensuresthesafetyofpart-timejobsincolleges,butalsomeetstheneedsofcollegestudentswhowanttoexperiencelifeandearnpocketmoney.KeyWords:SSM;Collegepart-timesystem;MySQL;Java引言在现代的大学校园中,大学生们有大量的时间,通常会选择做兼职赚零花钱,然而如何获取安全、有效、实时的兼职信息是一个普遍的问题。通常兼职招聘人员通过线下广告以及社交软件来发布兼职信息,通过这种方式得到的兼职信息,学生往往无法确定信息是否安全,同时不能保证这些信息的实时性。所以建立一个便捷、高效、安全、可靠的兼职系统的需要已经越来越迫切,本文基于SSM框架设计开发一个大学生兼职系统。1绪论1.1系统的开发背景及意义近年来,随着大学生的兼职需求日益增加,如何获取安全可靠的兼职信息成为了当前的一个普遍的问题。由于新型冠状病毒的影响,很多线下招聘已经没有办法继续进行。此外,通过网络发布的兼职信息学生往往无法判断是否真实,所以开发一个大学生兼职系统是非常有必要的。传统的兼职信息一般是通过传单、QQ群、微信等进行发布,随着学生对于兼职的需求量增加,这些兼职往往是供大于求的状态,很多信息不具备实时性,并且没有人可以保障这些信息是否安全可靠。及时信息安全可靠,也不能保证兼职老板是否会及时发放工资。因此,大学生兼职系统的优势就凸显了出来,大学生兼职系统可以让大学生非常容易的找到符合自己的工作,同时系统还会验证发布者的资质,确保发布信息的安全性。我国目前针对大学生兼职系统设计与开发方面的研究相对来说较少,通常都是将兼职作为招聘系统里的一个搜索项来设计与实现的。这些系统通常没有办法非常准确的定位大学生真正的需求,导致这些系统上充斥着虚假信息,例如一个招聘兼职修改图片的职位实际上是获得学生的信息,推销他们的PS课程,这就无法保障学生的合法权益。而对于外国来说,通常兼职是收到法律保护的,并且会有时间要求,这就导致这类兼职系统不会出现大量的虚假信息。本文根据目前大学生兼职系统的研究背景、研究意义和研究现状进行分析,设计开发了一个基于SSM框架的大学生兼职系统,主要实现了简历管理系统、兼职发布管理系统、兼职报名系统等。1.2研究内容本文主要介绍大学生兼职系统的系统开发的背景及意义,发展现况以及论文的基本结构。随后介绍系统的实现,主要包括运行环境、主界面的实现、登录模块的实现、兼职管理模块的实现、简历管理模块的实现、兼职报名模块的实现、个人基础信息维护模块的实现、公司基础信息维护模块的实现和投递兼职模块的实现。

2系统开发的相关技术2.1MyBatis框架介绍论文使用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]。SpringMVC框架主要核心思想的采用一个分发器来处理用户的各个请求,当有一个请求进来后,该分发器会将这个请求分配给相应的程序进行处理,此外,该框架还可以进行地址映射、数据库视图分析、程序参数检验、对文件进行便捷的上传下载等功能。该框架主要采用注解的方式来表示不同功能,通过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系统用户表序号字段名称字段类型大小允许为空最大长度1IDInt4自增102EmailVarChar50否2553PasswordVarChar50否2554TypeVarChar50否2555StateVarChar50是255表3投诉表序号字段名称字段类型大小允许为空最大长度1IDInt4自增102AllIDVarChar50是2553EmailVarChar50是2554AllemailVarChar50是2555AllreasonVarChar50是2556AlltextVarChar50是2557AllstateVarChar50是2558AlltimeDatetime0是09DealtextVarChar50是25510DealtimeDatetime0是0表4兼职报名表序号字段名称字段类型大小允许为空最大长度1IDInt4自增102StuemailVarChar50是2553ComemailVarChar50是2554ApplystateVarChar50是2555ApplyidVarChar50是2556ApplytimeDateTime0是07StustateVarChar50是2558ComgradeVarChar50是2559ComtextVarChar50是255表5公司信息表序号字段名称字段类型大小允许为空最大长度1IDInt4自增102EmailVarChar50是2553NameVarChar500是2554WebsiteVarChar50是2555CityVarChar50是2556Select_industry_hiddenVarChar50是2557Select_scale_hiddenVarChar50是2558TemptationVarChar50是2559PrincipalVarChar50是25510PhoneInt4是20表6记录表序号字段名称字段类型大小允许为空最大长度1IDInt4自增102StuemailVarChar50是2553ComemailVarChar50是2554JobnameVarChar50是2555ApplystateVarChar50是2556ApplytimeDateTime0是07StugradeVarChar50是2558StutextDateTime50是2559ComgradeVarChar50是25510ComtextVarChar50是25511StustateVarChar50是255表7兼职信息表序号字段名称字段类型大小允许为空最大长度1IDInt4自增102EmailVarChar50是2553JobtypeVarChar50是2554DepartmentVarChar50是2555NumberInt4是106DerequestVarChar50是2557DetailVarChar50是2558Salaryfloot10是109TimeDatetime0是010StateVarChar50是255表8学生信息表序号字段名称字段类型大小允许为空最大长度1IDInt4自增102EmailVarChar50是2553NameVarChar50是2554AgeVarChar50是2555SexVarChar50是2556HightInt4是107WeightInt4是108PhoneInt4是209SchoolVarChar50是25510RankVarChar50是25511BeginyearVarChar50是25512EndyearVarChar50是25513FreetimeDatetime0是014ExjobVarChar50是25515ExsiteVarChar50是25516IntroduceVarChar50是25517UptimeDatetime0是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")@ResponseBodypublicMap<String,Object>stuApply(@RequestParamStringemail,@RequestParamintid)throwsException{Map<String,Object>map=newHashMap<String,Object>();try{Booleanresult=studentService.stuApply(email,id);map.put("tip",result);}catch(Exceptione){thrownewCustomException("未知错误");}returnmap;}学生报名兼职功能service层核心代码如下所示。publicBooleanstuApply(Stringemail,intid){Booleanresult=false;Resumeresume=sDao.getResumeById(id);Map<String,Object>map=newHashMap<String,Object>();DatedNow=newDate();SimpleDateFormatft=newSimpleDateFormat("yyyy-MM-ddHH:mm");StringapplyTime=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;returnresult;}学生报名兼职功能mapper配置文件核心代码如下所示。<!--报名--><insertid="stuApply"parameterType="Java.util.Map">INSERTINTOapply(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描述以用户身份登录,注册、修改、查询用户基本信息用例目的是否能够正确修改信息前提条件用户安全登录系统界面输入/动作输入实际情况示例:典型值…年龄5353示例:边界值…年龄—10输入数据有误示例:异常值…年龄a输入数据有误如果输入的测试数据完全正确,则弹出对话框显示“操作成功”,并且显示“添加成功!”,这时表示系统添加用户成功,具体对话框如下图所示。图25操作成功界面(3)部分功能测试为了验证系统功能的有效性及完整性,本文做了大量黑盒测试。下表展示了部分测试实例。表11部分测试用例表模块用例描述 预期结果 备注用户注册用户名文本框中不输入任何数据提示“请填写完整的信息”测试用户名是否为空在密码文本框中输入“123”三个字符提示“密码长度最少为6位”测试密码位数是否正确密码修改在密码文本框和确认密码文本框中分别输“123456”和“258769”提示“两次输入的密码不匹配”测试用户两次输入的密码是否匹配在用户管理中修改密码,原始密码若输入不正确提示“原始密码错误”测试原始密码是否正确简历信息简历信息内容为空系统

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论