基于SpringBoot 的在线招聘网站的设计与实现

2020-09-04 07:56李孟津
科学技术创新 2020年26期
关键词:投递职位框架

李孟津 杨 丹

(常州信息职业技术学院软件与大数据学院,江苏 常州213164)

在线招聘网站的主要功能是用户来进行找工作,它的基本流程是查找职位→制作简历→投递简历,用户使用通过在网站界面注册获取用户账号及密码,即可使用相关功能,此外还可根据用户的喜好推测出用户可能喜欢的东西,优先展出。

该在线招聘系统采用了SpringBoot 框架开发技术,可以更加便捷的编写代码、配置、部署和监控系统,整个招聘系统的开发设计结构层次更加的清晰明了。使用Web 开发框架成功实现了组件再用,也使得整个系统的性能得到了极大的优化,同时系统应用Flexigrid 控件技术一定程度上的缩减了程序代码,同时也降低了错误问题出现的概率;使用log4j 日志追踪,可以有效地对代码进行追踪,监控代码运行过程,主要的就是这带给程序员很多的好处,减少一些多余的麻烦,方便对系统进行维护管理。

SpringBoot 实现了自动配置,降低了项目搭建的复杂度。非常适合完成基于B/ S 的信息系统开发,具备如下优点:

(1)SpringBoot 是一些库的集合,可被任何一项目所使用。创建独立的Spring 应用程序,且基于其Maven 插件,创建可执行的JARs 和WARs;

(2)内嵌Tomcat 等Servlet 容器;

(3)提供自动配置的"starter"项目对象模型(POMS)以简化Maven 配置;

(4)尽可能自动配置Spring 容器;

(5)提供准备好的特性,如指标、健康检查和外部化配置,提供有命令行界面,用来运行和测试;

(6)绝对没有代码生成,不需要XML 配置。

前端采用vue 前端技术实现双向数据绑定,有利于后期维护和升级。Vue.js 是一个轻量级的渐进式框架,它的核心库只关注视图层,学习起来非常的容易方便,还很容易与其它的库或者是已经存在的项目进行整合。

提供简单的API 来实现很多功能。用于构建用户界面,可以自底向上逐层应用的渐进式前端框架。相比于其他主流的框架,其具有运行效率高、语言简洁、占用空间小、上手容易等特点。

1 在线招聘网站分析

通过对在线招聘网站的需求调研,得到所需要的功能需求,说明如下:

在线招聘网站主要的功能模块为:应聘方模块、招聘方模块和管理员模块。

1.1 应聘方模块的功能需求

注册登录:提供用户的登录和注册功能。普通用户在登录的时候需要进行检测并校验系统数据库中是否已存在注册用户的有关信息,有则可以登录系统,反之则需要注册用户信息然后再登录,成功进入系统后可以进行的操作主要有查找工作职位操作和投递简历以及个人简历的修改,个人信息的更改并且还进行与内部动态与行业链接的维护与更新,若数据库里没有信息,则需用户注册。

完善简历:应聘者能够按照不同的招聘信息来进行简历填写。

职位查找:系统提供搜索职位功能,基于用户和基于项目协同过滤推荐算法推荐职位。

投递简历:系统提供投递简历功能,用户可自行选择心仪的招聘公司投递自己的信息。

修改简历:能够随时对自己所填写的简历进行修改。

1.2 招聘方模块的功能需求

查看简历:可以查看应聘方投递的简历。

需求发布:发布本单位的需求信息。

修改发布:对已发布的需求进行修改。

1.3 管理员模块功能需求

公告管理:编辑、修改、发布公告信息。

审核模块:审核招聘方和应聘方的注册。

2 在线招聘网站设计

系统设计技术采用SpringBoot+MyBatis+Mysql 整合,灵活易上手,编写好可以在很多环境下运行,方便存取数据库,保护数据等等。该框架将整个系统分为表现层、业务层、数据持久层。分层结构将用户界面、业务逻辑和数据进行了分离,以灵活、快速地响应业务需求的变化,帮助开发者快速启动一个Web 容器,简化了使用Spring 的过程。

各层实现功能说明:

View 层是与用户的交互层,通过浏览器,负责获取用户有关的访问请求和信息,并递交请求和数据,服务器接收这个请求,调用合适的组件,后台的响应数据,显示相关的页面并返回给客户层。与此同时也给客户提供了javascript 的验证。

Control 层负责项目中业务功能实现流程的管理。业务逻辑层实现并提供了系统所需的业务逻辑方法。

Model 层主要是一些实现具体业务功能的类,Mybatis 为业务逻辑层数据存取的方法。

如图1 所示。

SpringMVC 框架中业务流程为:

图1 基于SpringBoot 与vue 的整合框架

2.1 表示层

表示层是用户与系统直接进行交互的界面。负责收集用户请求并返回处理结果页面。

2.2 业务层

业务层是由业务逻辑对象组成,是系统的核心。实现并提供了系统所需要的业务逻辑方法。

2.3 持久层

持久层由数据访问对象(Data Access Objects)组成,这些数据访问对象提供对领域(Domain Object)基本的创建、查询、修改和删除等操作。本系统有Mybatis 实现数据持久层,为业务逻辑层数据存取的方法,实现数据库数据的增、删、改、查操作。

3 在线招聘网站系统实现

本文以求职模块为例说明系统的实现过程。该模块的功能是用户选择职位,完善简历进行简历投递。

3.1 表示层实现

求职功能通过用户选择职位点击后提交给SpringMVC 的PositionController 处理,处理结束后重新刷新文件列表。

SpringMVC 的表现层如下:

3.2 业务层的实现

求职的业务层处理求职过程的业务逻辑,作为中间层起到一个连接表现层与持久层的作用,向上接收职位名称,向下可以接收和传递持久层的数据。通过业务层将表示层与数据处理分离开来,可以降低系统的耦合度。在本系统中主要利用Spring框架构建业务层,通过使用注解的方式调用。

3.3 持久层的实现

权限管理持久化实现通过PositionServiceImpl 类实现,实现代码如下。

4 结论

基于SpringBoot 架构设计开发的在线招聘网站系统通过实际试运行,表现良好。SpringBoot 框架通过vue 实现网页与用户交互,通过SpringMVC 负责在表示层中处理页面的请求和转发工作;通过Spring 容器管理机制负责在业务层处理业务逻辑工作;通过Mybatis 完成在持久层与数据库的交互工作。这样形成一个结构良好、功能强大、层次清晰的框架体系。SpringBoot 框架能简化系统的开发,可以有效的降低各层之间的耦合度,提高系统的可维护性。

猜你喜欢
投递职位框架
领导职位≠领导力
传统与文化的“投递”
有机框架材料的后合成交换
框架
关于原点对称的不规则Gabor框架的构造
大迷宫
我国在WYO框架下面对的贸易保护现状及应对
美最高就业率地铁圈
派发广告分工做得好 人人努力效率高
如何确定雇员的薪资