摘 要
计算机网络与信息化管理相配合,可以有效地提高管理人员的工作效能和改进工作的质量。良好的校园招聘聚合平台可以使管理员工作得到更好的管理和应用,并有助于管理员更好地管理校园招聘,并有助于解决人力管理中出现的差错等问题。因此一套好的校园招聘聚合平台可以起到很大的效果。
该系统利用MVC的编程设计方式,利用了Java语言和MySQL存储数据。该系统采用了一个基于SSM的框架结构,同时实现并完成了该系统的全部功能,系统的首要角色是用户和管理员。互联网在快速发展的同时,也带来了许多数据,在面对这样庞大的数据时,人为的处理分析就会变得十分困难。在这种情况下,急需一种新的工具出现,帮忙解决这些海量的数据。而数据可视化则可以把大量的复杂的数据,用图形和色彩直观的表达出来。而招聘数据分析可视化平台的出现可以帮助使用者很好的处理数据和分析数据。
关键词:校园招聘;MySQL数据库;大数据
Abstract
The combination of computer network and information management can effectively improve the work efficiency and quality of managers. A good campus recruitment aggregation platform can enable administrators to better manage and apply their work, help administrators to better manage campus recruitment, and help solve problems such as errors in human resources management. Therefore, a good campus recruitment aggregation platform can play a great role.
The system uses MVC programming design method, Java language and MySQL to store data. The system adopts a framework based on SSM, and implements and completes all functions of the system at the same time. The primary role of the system is user and administrator. With the rapid development of the Internet, it has also brought a lot of data. In the face of such huge data, human processing and analysis will become very difficult. In this case, a new tool is urgently needed to help solve these massive data. Data visualization can express a large number of complex data intuitively with graphics and colors. The emergence of the recruitment data analysis visualization platform can help users to process and analyze data well.
Keywords:Campus recruitment; MySQL database; Big Data
目录
1 绪 论
1.1 课题背景与研究意义
随着计算机网络的发展,很多程序员和从事计算机行业的工作人员不满足现在的搜索引擎,于是网络爬虫在这种情况下诞生了。网络爬虫是程序设计者按照自己的意愿设计的特定的程序或者脚本,然后这些程序或者脚本实现自动抓取网页信息。网络爬虫的优点是它可以抓取完整的网站信息并保存下来,而且程序设计简单、方便。人们可以按照自己对数据的需求,来编写爬虫程序,实现有用信息的抓取[1]。如今各个互联网公司多多少少都有对数据的需求,这就催生了对数据的抓取。
对于爬虫的研究从上世纪九十年代就开始了,目前爬虫技术已经趋于成熟,网络爬虫是搜索引擎的重要组成部分。网上比较著名的开源爬虫包括Nutch,Larbin,Heritrix。互联网是个庞大的非结构化的数据库,将数据有效的检索并组织呈现出来有志者巨大的应用前景,搜索引擎作为一个辅助人们检索信息的工具成为用户访问万维网的入口和指南。但是,这些通用性搜索引擎也存在这一定的局限性。不同领域、不同背景的用户往往具有不同的检索目的和需求,通用搜索引擎所返回的结果包含大量用户不关心的网页。为了解决这一问题,一个灵活的爬虫有着无可替代的重要意义为发现招聘平台的特点,并从这些特点中总结经验,做出合理有效的招聘策略,从而达到提高招聘的效率,本课题设计了一个大数据背景下校园招聘聚合平台。系统首先利用爬虫技术对招聘网站进行数据采集,并对数据做加工处理和存储管理;其次,对数据进行基本的展示和查询;然后从学历、城市、薪资等多角度进行数据分析,并利用可视化技术,将有效的数据展示给用户;重要的是,利用这些分析结果,可以发现这些招聘的相关性,得出招聘平台的特点,从而提高效率[2]。
此系统的设计可以为校园招聘聚合平台提升决策力,也可以为电商等其他产品提供借鉴。
1.2 课题研究现状
网络爬虫作为如今搜索引擎非常重要的一部分,其担当的角色是抓取网页或网站数据和内容并且保存下来,在以前,就有很多程序员和研究员开始从事网络爬虫的研究。目前,网络爬虫技术日趋成熟,相当多的搜索引擎核心就是爬虫。Najork 和 Wiener等人使用广度优先搜索策略实现了一个爬虫系统,并利用该爬虫爬取了 3.28 亿个网页进行研究分析。实验结果表明,在广度优先搜索策略下,PageRan值高的页面会较早的被爬取到。网页的 PageRank值指的是链接到该网页的所有父页面的 PageRank 权值和。针对此结论,Najork 给出了解释:爬虫在爬取高 PageRank 值的页面时不必关注起始主机的位置,因为最重要的网页总是会被很多主机上的链接所指向,而那些链接总是优先被发现。
尹江、尹治本等人分析研究了网络爬虫的效率优化问题,优化了爬虫的搜索策略及结构,并基于改进的方案实现了一个通用网络爬虫系统。该系统的特点在于采用了 DNS 缓存模块和异步非阻塞的下载方式。夏诏杰、郭力等人研究并实现了一个针对化学领域的主题爬虫系统。该系统使用机器学习算法中的 Widrow-Hoff 分类器,对中科院下属的某化学资源网站中进行了全站爬取,然后对爬取的资料进行训练学习。他们经过实验对比,发现和基于广度优先搜索策略的爬虫相比,用机器学习算法开发的主题爬虫在爬取的准确性和覆盖率上都明显胜出。近年来,通过各学者的分析研究,已解决了基于技术的网络爬虫关键问题,实现了对动态网页信息的抓取。基本的实现方法是模拟用户动作,触发JavaScript事件,解析网页中的脚本,通过网页的树来获取信息,虽然,这些方法去了一些成果,但是仍然存在很多问题,比如,怎样提升网络爬虫的性能等,因此,基于技术的网络爬虫还需要进一步的研究。
1.3 论文结构
关于这篇文章的设计安排有以下几章:
第一章为绪论。则是本文的研究背景、意义、研究现状以及本文的框架。
第二章介绍了该软件的开发平台和技术。主要阐述了校园招聘聚合平台的开发背景以及所采用的技术。
第三章为研究对象的市场营销策略。对系统的功能和非功能要求进行了详细的阐述,并给出了系统的功能模块图。
第四章对整个体系系统进行了整体的设计。完成了各子系统的功能模块的划分与数据库的开发。
第五章为本论文的研究内容。该章主要介绍了各功能模块在校园招聘聚合平台中的作用。
第六章,对本论文进行了详细的论述。这一章介绍了如何利用黑盒来进行系统的试验。
2相关技术简介
2.1 Selenium爬虫
Selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决Requests无法执行JavaScript代码的问题[3]。Selenium可以让浏览器自动启用自定义智能代码,并且代码变得完全自动化,供使用浏览器的人进入和导航旅程,然后将其用作视觉设备[4]。S从本质上讲,Selenium完全通过搜索引擎的推出来比较浏览器浏览,例如完全支持浏览器的浏览、项目、打印、下拉菜单和查看页面[5]。
2.2 Echarts
EChart是一个开放的Javascript库,可以在具有当前搜索(IE8/9/10/11、Chrome、Firefox、Safari等)和中央帐户的计算机和移动设备上连续运行。.ZRender的SimpleLibrary是一个提供电子表格介绍、讨论和强大转换的库[6]。
ECcharts以单线、日期、图表、图表、K线、图表、地图、图表和本地图表查看真实信息。通过支持相关图像、AR图表、BI、图表和内部集成来协调更多信息活动[7]。
2.3 MySQL数据库
MySQL数据库具有海量的数据储存功能,在运行过程中既简单又快速,若要提高查询效率,可以在数据库中添加一个方便的索引。在系统中,当有必要增加数据时,可以调用插入式数据来进行数据库的数据更新步骤。MySQL是一个自由开放的开放的数据库系统,它可以根据规范的SQL陈述来提供有关系统的资讯信息,并且可以更容易地进行MySQL的设置与配置。基于开放源码架构的数据处理程序,可以将其转换成基于开放源码架构的SQL。MySQL与开放源码架构相结合,可以很容易地更改数据库的纪录从而更方便的对其开展修改。
2.4 MVC框架
MVC架构可以实现对管理员的超级连接,在此基础上,用户可以通过表格向前页提交的要求进行处理,但必须将其传送到后台控制器进行处理,然后再回到前面的网页,之后再通过后台的框架对来自前面的网页的要求进行相应的处理。采用了后台结构,可以防止用户对前端网页进行直接的存取,从而极大地增强了系统的安全性能。
2.5 Spring框架
Spring的相依性嵌入可以将校园招聘聚合平台中的各部件松散地连接起来,而组件和组件的组合则取决于Spring的依赖性,Spring框架中采用了许多界面设计,可以减少重新构建的费用,便于以后的系统更改[8]。
Spring架构的事务宣告架构可以在交易中使用,若有声明式事务,就不必将事务政策与程式码相融合,藉由配置文件的实现让业务逻辑元件集中于执行商业逻辑的实现,可以降低程式设计师的研发工作难度。
3 需求分析
3.1 功能需求
用户:个人信息、招聘岗位、填报信息。
图3-1 用户用例图
管理员:个人信息、城市管理、分类管理、招聘管理、招聘岗位、填报信息、招聘抓取、薪资分析、学历分析、城市分析、用户管理。
图3-2 管理员用例图
3.2 可行性分析
3.2.1 经济可行性研究
管理员有了这个管理软件,就可以对校园招聘聚合平台进行管理,节约了大量的经费。为了有效地克服由于传统方式所造成的额外的财务开支,特别是在人员方面所造成的费用开支,本文对此进行了研究和探讨。由于采用传统的管理方式,不但耗费了大量的人员,还常常要求管理员进行人工记录。该系统的设计与实施旨在减少软件开发费用,节约管理员工作时间,增强用户体验。鉴于现有的因特网开放源码架构及软体装置,因此在经济性上是可以做到的。
3.2.2技术上的可行性研究
通过对校园招聘聚合平台的早期功能进行了初步的研究,最终选定了适合于系统的体系结构和技术来进行系统的开发。结合目前市面上已有的校园招聘聚合平台,本文所采用的技术已大致具有可行性,可以达到降低开发和学习费用的目的。这种方法可以迅速建立起一个新的体系,可以借鉴很多成熟的方法,可以方便地进行后期的维护和更新。
3.2.3操作的可行性研究
由于校园招聘聚合平台的部分功能是面向用户进行操作而开发的,在进行校园招聘聚合平台的管理时,必须考虑到用户对其进行操作和存取等方面的影响因素,一般都可以采用信息技术进行操作和使用,这样就可以降低用户的学习费用和一些繁琐步骤。该系统在设计中没有太多繁琐的操作和步骤,所用的操作接口和按键也比较简洁和易懂,参照了很多主要的校园招聘聚合平台,具有很好的操作性。
代码如下:
//调用登录实现
@RequestMapping(value="/manager",method=RequestMethod.POST)
@ResponseBody
public DataEntity manager(@RequestParam String username,@RequestParam String password,
HttpServletRequest request, HttpServletResponse response) {
List<User> user = userService.getUserList(username);
if(user.isEmpty()) {
return new DataEntity("400", "帐号不存在!","");
}
if(user.get(0).getPassword().equals(MD5Utils.getMD5Str(password))) {
request.getSession().setAttribute("admin", user.get(0));
return new DataEntity("200", "登录成功", "admin/index/index");