骆汛枫 张永康 林宏濠 唐嘉浩
摘要:随着信息技术的迅速发展,“互联网+”的应用极大程度上方便了人们日常的生活。兼职是大学生认知社会的一个途径,许多大学生都有兼职的经历,其中大部分人认为存在找兼职难,找兼职途径较窄,与店家沟通麻烦等问题。
根据以上需求设计与实现基于智能校园兼职平台——工园。该项目采用了VUE.JS和MUI结合的前端技术,基于Spring Boot框架的后台技术结合上协同过滤算法开发而成的一款专门为解决大学生找兼职问题而开发的移动web网站。在该平台上,学生可根据自身需求结合协同过滤算法找到合适自己的兼职岗位;商家则可以在平台上发布兼职进行招聘,大大简便了招聘流程,从而节约了时间与金钱,实现了双赢局面。
关键词:Java;Spring Boot;协同过滤算法;兼职平台;移动Web
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2019)28-0076-04
According to the above requirements, design and implement a part-time platform based on intelligent campus - industrial park. This project adopts the front-end technology combining VUE.JS and MUI. The background technology based on Spring Boot framework is combined with the collaborative filtering algorithm to develop a mobile web site specially developed to solve the problem of college students looking for part-time jobs. On this platform, students can find their own part-time jobs according to their own needs and collaborative filtering algorithms; merchants can release part-time recruitment on the platform, which greatly simplifies the recruitment process, thus saving time and money and achieving a win-win situation.
Key words: Java; Spring Boot; collaborative filtering algorithm; part-time platform; mobile web
1 背景
為响应科技强国号召,我国大学生人数逐年递增,大学生作为一个新兴的经济体,也迅速刺激了附近的校园经济。大学生人数的增加意味着日后竞争的加剧,为了早日适应社会,在校大学生早已不满足单一的社会实践活动,强烈要求参与更广泛的社会实践活动,其中大学生进行兼职活动是首选。但不少大学生反映存在找兼职难,找兼职途径较窄,与店家沟通麻烦等问题。
随着“互联网+”的发展,机器学习等新兴技术的崛起,一些传统招聘模式受到了冲击,在互联网的世界里,可以满足“足不出户便知天下事”的需求,结合当下“重”个性化的社会需求,开发一款专门解决大学生找兼职困难的移动Web网站刻不容缓。
本移动Web网站将会收集学校周边的商家发布的兼职信息,结合当下火热的机器学习算法以及个性化的需求为广大大学生提供了各类兼职信息。平台通过机器学习算法进行了职位推荐,极大简便了学生的操作;使用兴趣标签筛选职位也满足了个性化的需求;同时,商家可通过平台发布兼职信息,学生亦可通过平台查阅兼职信息,还可以与商家进行沟通,双方各取所需,实现了双赢的局面。
2 系统分析
2.1 平台设计
工园平台从设计大体上来分类,主要划分为前端和后台两大类,前端主要的功能是展示数据,获取后台的数据加以渲染显示以及将收集到的数据提交到后台。后台的主要功能是数据的传输与处理,接收前端的数据以及响应前端的请求。
2.2 平台功能
本平台的主要功能结构,如图1所示。
本平台主要功能模块如下:
1)机器学习算法职位推荐功能模块:
通过统计不同用户的点击行为,并结合余弦相似度的度量方法,计算出用户之间的相似度,运用基于用户的协同过滤推荐算法,将相似度较高的用户的项给展示出来。
2)在线留言功能模块:
只需使用Web端即可实现在线接收回复留言,用户通过点击心仪的职位进入该职位详情页,在详情页面中点击“留言”按钮给店家留言,实现了线上交流,省去了安装APP的时间,让沟通更加便捷。
3)职位详情展示功能模块:
在职位详情页面中,用户可浏览到职位的薪酬、人数、要求及其发布方的信息,为了方便用户操作,还加入了“看了又看”一栏,让用户无须返回即可浏览与之类似的职位。
4)标签筛选职位功能模块:
用户在注册阶段完善详细信息时,选择合适的兴趣标签后,系统便会记录用户的兴趣爱好;当用户下次登录至首页时,首页下方的职位列表则会根据用户的兴趣标签自行进行职位的筛选。
5)首页信息聚合功能模块:
在首页中集中显示了广告栏、图标标签、搜索栏以及个性化的职位列表等信息,将系统最为常用的信息以及功能都集中在首页,方便了用户操作。
3 平台系统设计
3.1 平台基本架构
本平台采用了Browser/Server的架构进行设计。B/S架构如图2所示。
互联网时代实质是信息互通的时代,信息的发布方通过该移动Web网站发布信息,浏览该移动Web网站的用户皆可接收到信息,展现了B/S平台便捷的优势。
当用户使用浏览器发送请求的时候,云端的服务器会根据请求做出相应的处理并得到相应的处理结果,该请求结果会以JSON串的形式通过服务器返回到浏览器中,浏览器根据所得到的内容渲染出效果。
3.2 平台逻辑设计
本系统采用MVC模式(Model-View-Controller)进行开发。其中,页面发送请求给控制器,控制器调用业务层处理逻辑,逻辑层向持久层发送请求,持久层与数据库交互,后将结果返回给业务层,业务层将处理逻辑发送给控制器,控制器再调用视图展现数据。
3.3 界面流程設计
工园平台的界面流程设计如图3所示。
4 平台设计与实现
本平台主要采用B/S架构进行开发,由浏览器、服务器以及数据库组成。
4.1 平台的前端设计
本平台前端主要运用了VUE.JS技术,结合当下较为流行的MUI框架,让用户在Web中体验到APP般的操作感觉,同时,MUI框架能在不同分辨率的设备下做出不同的响应,体现了良好的适应性。采用了MVVM的设计模式,即双向数据绑定,加快了开发的进度。
其中,前端通过Ajax请求进行数据的获取,并将返回到的数据渲染出来在前端显示,职位详情页面部分代码如下所示。
4.2 平台的后台设计
本平台后台主要采用Spring Boot框架进行开发,MyBatis负责数据库中与代码实体类的交互,Spring Boot则负责数据的传输;用户通过点击事件发送一个请求,后端将会根据前端请求来处理数据,经过逐层传递,最终找到想要的数据,并返回给Controller层,前端会根据后台展示的数据进行渲染。
其中以更新用户信息为例,@PostMapping为一个映射路径,@RequestBody可以将信息转化为JSON的格式,HttpServletRequest为一个页面请求,请求一个访问的数据,方法内部则为一些业务的逻辑。具体代码如下所示其中,loginToken用于判断用户是否登录,获取的Token需与缓存中的值相匹配,当匹配不成功时,则认为用户登录失败,将跳回上一步操作,匹配成功时,将用户实例化用于下一步修改用户信息操作。
4.3 平台的主要功能的实现
工园平台核心功能有机器学习算法职位推荐功能、在线留言功能、标签筛选职位功能、职位详情展示功能以及首页信息聚合功能。
在本项目中,使用了一个基于用户的协同过滤算法对职位进行个性化推荐,主要是依据用户或者项之间的相似性,给用户推荐一些新鲜事物,挖掘用户的其他兴趣。
基于用户协同过滤推荐的原理如下:
1)计算并分析每个用户对项的评估(评估度量可以是浏览记录、购买记录等),得到用户和项之间的矩阵。
2)根据用户对项的评估通过数学公式计算出所有用户之间的相似度(本项目采用余弦相似度度量公式)。
3)从中所有用户中选出与当前用户行为最相似的 前N 个用户。
4)将这 N个用户评估最高并且当前用户又没有浏览过的项推荐给当前用户。
其中以机器学习算法职位推荐功能为例,其中,currentUid用于获取当前用户的id,userActiveDTOList用于获取用户浏览记录,activeMap用于存储每个用户的行为记录,similarityUserList用于计算用户之间的相似度, positionCategoryList为获得推荐的职位分类。算法思想为通过统计用户的浏览记录,使用RecommendUtils对相应的数据进行计算,计算出与该用户浏览记录相似的用户,通过统计以及对比相似用户的记录,获得被推荐的职位分类并将其推荐给用户。
5 结束语
在“互联网+”的浪潮冲击下,使用快速便捷的B/S架构开发的移动Web网站将会是一个不错的选择,而在强调个性化的时代里拥有个性化推荐的产品将会成为人们的首选。随着需求的变化以及时代的发展,相信在人工智能和大数据等高新技术的带领下,推荐系统的推荐效果将会越来越好,在日后能够更好地服务于人们的日常生活。
参考文献:
[1] 孔晓静. 大学生兼职行为研究报告[J]. 法制博览, 2019(3): 285-287.
[2] 潘志宏, 罗伟斌, 柳青. 基于HTML5跨平台移动应用的研究与实践[J]. 电脑知识与技术, 2013(17): 3992-3995.
[3] 俞伟, 徐德华. 推荐算法概述与展望[J]. 科技与创新, 2019(4): 50-52.
【通联编辑:谢媛媛】