项目介绍
随着信息技术的发展,计算机网络服务在社会上承担着重要角色,各种管理系统的出现,不仅帮助人们解决日常管理工作,也提供了许多信息数据。在当前竞争激烈的求职招聘环境中,通过网络服务可以有效的缓解求职招聘压力,可以提供更多有效的岗位信息,也为企业提供许多优秀的人才。无论是在高校还是在社会求职招聘中,本勤工俭学微信小程序都可以为之服务。企业发布方发布岗位信息,求职者完善个人的简历,并在勤工俭学微信小程序上进行交流,平台为双方带来非常便利的操作体验。
本系统使用微信小程序技术,MySQL数据库进行开发,系统后台使用SpringBoot框架进行开发,具有低耦合、高内聚的特点。本文从需求分析、系统设计、系统实现和系统测试方面进行阐述。系统的开发,帮助管理员有效的对求职招聘信息进行管理,提高了求职招聘的发展效率。最后对勤工俭学微信小程序进行测试,查看系统的功能、负载能力和系统的兼容性,结果表明本系统符合实际要求,完成了即定要求。
微信小程序端
(1) 首页。顶部展示公告,下方展示兼职信息详情,按时间倒序,求职者可以根据兼职内容信息和行业进行模糊筛选用人单位的招聘信息,点击某条信息可查看其信息内容和用人单位的信息(包括用人单位名称和联系电话等信息),对某条兼职信息可收藏,投诉和投递申请,投诉需写投诉内容。(投递后会在管理系统中显示)。
(2) 我的投递:查看已投递的所有兼职,兼职有标识,通过的绿色标识,待通过为红色,点击某一个查看详细
(3) 我的
注册/登录:用户名+密码
个人中心:用于求职者注册登录后可编辑展示个人资料,个人资料包括基本信息(姓名,性别,年龄,手机号,邮箱,籍贯,出生年月日,特长,喜好),上传学生证件等。
简历上传:可以上传个人简历,pdf或word,可查看详细
我的收藏:显示收藏的兼职岗位,点击某一个可查看岗位详细。
退出登录:
系统管理端
系统管理分为:用人单位和管理员俩个角色
用人单位:
(4) 个人信息模块。用于用人单位注册登录后可编辑个人资料,包括基本信息,行业和营业执照上传(提交后需管理员审核通过后才可发布兼职信息)。
(5) 兼职信息发布模块。用人单位可新建,编辑,修改,删除和发布兼职信息到微信小程序上,兼职信息包括必须选择行业,兼职基本说明,需求,福利,薪资等信息(提交后需管理员审批通过后才可显示在微信小程序上)。
(6) 投递明细模块。用人单位可以查看某个兼职信息下所投递的所有求职者,点击某个查看详细,包括其附件简历,对求职可进行录用和不符合等设置操作,对应小程序求职者的红绿标识。
管理员 (包括用人单位的所有模块):
(7) 用户信息模块。管理员可查看,删除,修改,禁用,审核用人单位的信息,通过后才可发布兼职信息,求职者信息可查看,删除,修改,禁用,求职者的信息,禁用后无法登录。
(8) 兼职信息模块。可对兼职信息进行编辑,审核,审核通过后才可在微信小程序中显示。
(9) 用户投诉模块。 求职者对用人单位的投诉详情列表,点击看详情
(10) 用人单位数据统计。可统计查看用人单位的数量,可按行业进行筛选查看
(11) 求职者数据统计。可查看求职者的数量,男女占比等
(12) 公告信息:可发布公告信息,发布后在小程序首页顶部滚动展示
(13) 系统管理模块
项目实现效果图
所需技术栈
小程序框架:uniapp
小程序开发软件:HBuilder X
小程序运行软件:微信开发者
开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql 5.7(推荐版本,其他的也可以)
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven3.3.9
文件解析
pages 主要页面, 其中pages文件夹中 index文件中可布局底部的tab页面,通过v-if判断显示不同的tab页
colorui 使用了color-ui样式,个人认为样式非常好看,非常感谢!
static目录: 存放静态文件
App.vue: 页面入口文件
main.js: 项目入口文件
manifest.json: 存放App信息
pages.json: 页面信息
uni.scss: 全局样式
微信开发者工具
微信开发者工具是由腾讯官方专门为微信小程序量身打造的开发者工具,它不仅轻巧、方便,主要是的对于电脑要求不是很高,所以在一般的电脑上都可以完成相应的开发,在系统调试测试过程中,也不要下载第三方插件,就可以完成系统测试环节,通过制定好的debug调试器就可以完成。
如今微信小程序有以下发展优势
(1) 无须下载,无须注册
(2) 触手可及,用完即走
(3) 功能丰富,使用难度低
(4) 流量之王,用户群体大
HBuilderX+uniapp
HBuilder 是基于HTML、js、css的等H5语法的开发技术,使得开发者很容易上手学习,里面涉及的数据绑定基于Vue语法涉及,在开发效率上也比传统的jquery快,当然HBuilder 也保留了对jquery的支持,两种语法可以结合项目的需要,可以混合开发。该开发工具本身是由java编写完成,所以对原生项目的插件也有很好的兼容性。
mysql数据库与主流编程语言
MySQL不但可以和Java语言进行搭建系统,也可以和php、python等进行搭配。MySQL数据库可以存储多种格式的内容,常见的有文本,也可以存储整数、浮点数、日期,还可以存储二进制字节,程序中对文件或图片进行处理,转换为二进制数据后。本系统使用MySQL数据库的原因是其安全、稳定、成熟、可靠性强。
登录的业务流程的顺序是:
当你是用户时:首先是用户输入格式正确的用户号和密码,然后系统会接受你的登录信息,系统开始查询数据库并且自动匹配查找相关账号信息,判断数据是否正确,当用户输入的账户信息正确时,输入的数据会与数据库里录入的账号信息相匹配,然后就可以成功登录了。否则登录失败。成功登录的用户可以使用自己的用户权力对系统进行一定的功能上的操作。
毕设制作流程
(1)与指导老师确定系统主要功能;
(2)做需求分析及功能模块划分;
(3)指导老师通过后,设计出用例图,E-R图,功能模块图
(4)根据自己的功能模块划分,设计核心功能的需求
(5)查阅过的文献资料及调研
(6)根据自己的系统,完成论文的设计与实现
(7)参考相关文献和需求分析文档和概要设计文档,完成初稿
(8)根据指导老师的修改意见修改论文,直到定稿
系统性能
性能方面指的是部署系统后,能否在规定的时间内响应请求或者反馈出结果。通常标准的响应时间为一秒内,这就需要考虑大数据查询时和多用户请求网页时的并发情况,通过压力测试来确保其性能正常。
互操作性是指系统是否具备在不同的操作系统环境下能否运行,以及和企业其他相关的系统是否具备数据交互的接口,所以在结合实际情况下,尽可能的涉及到相应的操作接口。
可靠性方面,一般系统都存储了大量的数据,这些数据非常重要,系统要具备数据定期备份的能力,保证系统持续性运行,并确保数据的安全。
可伸缩性指的是系统的一种弹性,随着软硬件的发展,保证系统可以很好的兼容软硬件。通过较少的改动来进行迭代换新,实现低延迟的性能。
核心代码
/**
* 登录相关
*/
@RequestMapping("users")
@RestController
public class UsersController{
@Autowired
p