基于Bootstrap和SSH的求职招聘系统设计与实现

时间:2022-09-07 05:55:25

基于Bootstrap和SSH的求职招聘系统设计与实现

摘要:采用B/S结构,基于Bootstrap和JQuery前端框架和Struts、Spring、Hibernate的Java EE架构,设计并实现了一个求职招聘系统。系统实现了求职者的简历管理、招聘单位的职位管理、简历投递与查阅、管理员的用户管理等功能,同时实现了系统的多终端适配,提高了求职与招聘效率。

关键词:Bootstrap;SSH;求职招聘系统;多终端适配

DOIDOI:10.11907/rjdk.161841

中图分类号:TP319

文献标识码:A文章编号:16727800(2016)010009703

0引言

第37次中国互联网络发展状况统计报告显示,截至2015年12月,我国网民规模达6.88亿,手机网民规模达6.20亿[1]。艾瑞咨询统计数据显示,2014年,中国网络招聘行业雇主规模达到252.4万,增长率为28.2%,2014年中国网络招聘行业求职规模达到11 525.2万人,增长率为10.9%[2]。可见,我国拥有十分庞大的网民基础,而且手机网民的规模已接近总体网民规模,同时网络招聘规模和体量相当庞大,网络求职与招聘需求十分旺盛,而且增长迅猛。针对以上情况,设计一个多终端适配,特别是在手机端有良好体验的求职招聘系统十分必要。本文介绍了利用Java EE等各项成熟先进技术,实现一个多终端适配响应式布局的求职招聘系统,以提高求职招聘效率,降低开销。

1系统需求分析与设计

1.1可行性分析

拟采用的开发技术有:Java编程语言、SSH后台开发框架、JQuery、Bootstrap前端开发框架、MySQL数据库。根据成本/效益分析结果,效益大于成本,经济可行。该系统开发的要求是操作简单,易学易用。

1.2系统功能需求

系统的使用者主要是求职者、招聘单位和管理员。

求职者的功能需求为:注册和登录系统,修改、查看个人信息,增加、删除、修改、查看简历信息,查看招聘单位信息,查看招聘岗位信息,投递简历,查看投递状态,取消投递。图1为求职者使用系统例图。

招聘单位的功能需求为:注册和登录系统,修改、查看公司信息,增加、删除、修改、查看招聘岗位信息,查看收到的申请,查看申请人简历,设置申请状态。

管理员功能需求为:登录系统,修改密码,修改、删除、查看求职者个人信息,修改、删除、查看招聘单位各项信息。

1.3系统结构设计

1.3.1系统体系结构

系统采用B/S多层架构,用户使用方便,无需安装特定客户端,利于跨平台,只要系统装有浏览器就能使用,同时也方便系统升级。整个系统采用基于事件驱动的MVC架构,服务端采用Struts2、Hibernate4、Spring4框架,浏览器端采用JQuery1.11和Bootstrap3框架,数据库采用MySQL,服务器采用Tomcat。

1.3.2系统结构分解

系统分为浏览器端、服务器端和数据库。服务器又分为显示层、控制层、业务层和持久化层。

浏览器端使用Bootstrap和JQuery框架。Bootstrap 是目前十分流行的前端框架,用于快速开发 Web 应用程序和网站。它最大的特点是响应式布局,移动设备优先,使得开发人员可以只写一套代码就能在多种终端上显示,本系统多终端适配主要是基于Bootstrap和CSS3的Media Query实现。Media Query是通过查询设备尺寸,通过不同尺寸进行不同的布局实现不同终端的适配。JQuery在本系统中主要实现AJAX请求、表单的检验、后台提示信息反馈显示等功能。

服务器端通过Struts实现MVC分层,通过Spring依赖注入实现各层间的解耦。其中,显示层实现后台数据显示,控制层实现对整体流程的控制,处理用户交互,业务层实现业务逻辑的处理,持久化层通过服务端与数据库的交互实现数据的持久化。各层间Spring起到容器的作用,控制相关对象的生命周期,同时进行声明式的事务管理[3],实现整个系统的高内聚低耦合,层次分明、维护方便。通过Hibernate配置并使用C3P0数据库连接池实现服务端与数据库连接,使得数据库连接资源能合理分配、管理与释放,减少了创建连接的系统开销,明显提高了系统数据库访问效率[4]。

1.4数据库设计

经过对数据库进行概念结构设计,得到数据库的E-R图,如图2所示。

经过对数据库的逻辑结构设计,把E-R图转换成关系模型[5]。系统由7张表组成,分别是求职者表、招聘单位表、管理员表、简历表、教育经历表、工作经历表、招聘职位表。投递表如表1所示。

1.5用例设计

根据需求分析中的用例,在概要设计基础上,设计用例详细的实现方案,通过生成设计模型中的交互图进行精细化的类设计[6]。针对核心用例,根据体系结构和交互设计,考察分析类与设计元素之间的对应关系,得到设计阶段交互图。

其中求职者搜索职位的协作图如图3所示。求职者点击搜索职位按钮,系统跳转到输入搜索条件页面,求职者输入职位名称等搜索信息后点击搜索按钮,系统根据输入信息,检索是否存在符合搜索条件的职位,如果不存在则告知用户不存在该种职位,如果存在则显示符合条件的职位列表。

2系统实现

2.1项目与源代码管理

系统采用Maven对项目进行管理。Maven是一个开源项目管理工具,采用项目对象模型(POM)概念来管理项目。Maven能简化和标准化项目建设过程,使项目易于维护和理解。本系统采用Git对项目源代码进行版本控制。Git是一个开源的分布式版本控制系统,比起传统的集中式版本控制工具,可以允许开发者提交到本地离线工作,同时具有快速灵活的特点。

2.2求职者子系统

求职者访问系统时需要先进行注册或登录。用户密码采用MD5加密。登录系统时,将用户输入的密码明文用MD5加密得到密文,与数据库中存储的密文校对,如果相同则登录成功,否则登录失败。

求职者登录系统后,可以对简历进行管理,包括对简历增删改查,也可以多条件对职位进行搜索,搜索结果会分页显示。可以查看某个招聘职位的详细信息,可以对感兴趣职位选择已有简历投递。投递后对投递记录进行管理,包括查看当前招聘单位对投递简历的处理状态,取消投递等。

对于编辑简历时上传附件操作可能导致的文件重名问题,系统处理方法是为每个文件重新命名一个UUID加后缀的文件名。

2.3招聘单位子系统

招聘单位注册或登录系统后,可以对招聘职位进行和管理。招聘单位可定期查看求职者职位申请记录,未查看的申请会以粗体显示。在收查简历界面可以点击回绝该申请按钮进行回绝,回绝后该申请将不会显示,求职者在投递记录中看到的投递状态会变为已回绝状态。

2.4系统测试

软件测试是保证软件质量的重要手段[7],因此需要运用正确的方法对系统进行尽可能详尽的测试,以发现潜在缺陷,减少后期运维成本。本次测试设计的方案为按照设计好的测试用例进行测试,部分测试用例如表2所示。

按照测试用例对系统进行测试,测试结果均与预期结果相符,测试通过。

3结语

求职招聘系统满足多终端特别是在移动端进行求职与招聘工作需求,用户体验较好,提高了求职与招聘的效率。但系统仍存在部分缺陷,如未能对简历模板进行个性化定制、系统处理速度不够快等。下一步研究方向是细化和完善系统各项功能,优化代码质量。

参考文献参考文献:

[1]中国互联网络信息中心.第37次中国互联网络发展状况统计报告[R].2016.

[2]上海艾瑞市场咨询有限公司.2015年中国网络招聘行业发展报告简版[R].2015.

[3]周平.Java EE大学教程[M].北京:清华大学出版社,2012.

[4]贺智名,曾婕,王鹏飞.Java EE企业应用开发技术[M].北京:清华大学出版社,2012.

[5]王珊,萨师煊.数据库系统概论[M].北京:高等教育出版社,2006.

[6]齐治昌,谭庆平,宁洪.软件工程 [M].第3版.北京:高等教育出版社,2012.

[7]秦航,杨强.软件质量保证与测试[M].北京:清华大学出版社,2012.

上一篇:5000米跑教学训练手段的研究 下一篇:我国特殊教育儿童政府支持体系现状的综述