摘要

随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势;对于人职匹配推荐系统当然也不能排除在外,随着网络技术的不断成熟,带动了人职匹配推荐系统,它彻底改变了过去传统的管理方式,不仅使服务管理难度变低了,还提升了管理的灵活性。这种个性化的平台特别注重交互协调与管理的相互配合,激发了管理人员的创造性与主动性,对人职匹配推荐系统而言非常有利。
本系统采用的数据库是Mysql,使用SpringBoot框架开发,运行环境使用Tomcat服务器,ECLIPSE 是本系统的开发平台。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。

第二章 相关技术简介

2.1相关技术
人职匹配推荐系统是在Java + MySQL开发环境的基础上开发的。Java是一种服务器端脚本语言,易于学习,实用且面向用户。全球超过35%的Java驱动的互联网站点使用Java。MySQL是一个数据库管理系统,因为它的体积小但速度快,成本低,或者开源受到中小型网站的青睐。因此,Java + MySQL作为一个成熟的开发环境,可以满足人职匹配推荐系统设计和开发所需的稳定性,安全性和可扩展性要求。
2.2 JAVA技术
JAVA语言是目前软件市场上应用最广泛的语言开发程序。可以在多种平台上运用的,兼容性比较强,适应市面上大多数操作系统,不会出现乱码的现像,其扩展性和维护性都更好,具有分析问题和解决问题的能力,是面向过程的程序设计方便我们编写的代码更强壮。
JAVA相对其它语言来说,比较简单,编译起来更方便一些,安全可靠性高。不完全统计,现在全世界大约有2000多万人在使用它,JAVA既可以镶嵌使用又可以独力的使用。JAVA大致可以分成两个部分,一种部分是JAVA负责的编译,另一种是JAVA负责的运行。JAVA和C++语言很相像,但JAVA在编程时是一种以对象为导向的方式来进行编译的,使得编出来的软件可以单机使用,也可以在互联网上使用,检查出错更为方便。JAVA分布式、体系结构中立的特点也使得其存储更快,编议更简单。面向对象包括四个特点,一是封装,就是说在定义类的时候可以实现一定的功能和属性。二是抽象,属于类的一种,可以把一个具有共同属性的类封装在一个抽象里,便于简单编议。三是继承,顾名思义就是带有前者的特性。还有一个就是多态的特点,可以多种一起运用,表现了它可扩展性好。
2.3 MySQL数据库
数据库是系统开发过程中不可或缺的一部分。 在WEB应用方面,MySQL AB开发了一个具有很大优势的MySQL关系数据库管理系统。 MySQL可以将数据存储在不同的表中,这非常灵活,并且还可以提高系统在实际应用中的速度。 数据库访问最常用于标准SQL语言,MySQL用于SQL语言,因此它具有高度兼容性。数据库的操作是必不可少的,包括对数据库表的增加、删除、修改、查询等功能。现如今,数据库可以分为关系型数据库和非关系型数据库,Mysql属于关系性数据库,Mysql数据库是一款小型的关系型数据库,它以其自身特点:体积小、速度快、成本低等,Mysql数据库是目前最受欢迎的开源数据库。
在WEB应用技术中, Mysql数据库支持不同的操作系统平台,虽然在不同平台下的安装和配置都不相同,但是差别也不是很大,Mysql在Windows平台下两种安装方式,二进制版和免安装版。安装完Mysql数据库之后,需要启动服务进程,相应的用户就可以连接数据库,用户可通过命令行或者图形界面工具登录数据库。
2.4 Tomcat介绍
Tomcat 虽然是Apache的扩展,但是它们都是可以独立运行的,二者是不互相干扰的。当配置正确的时候,Apache服务器为HTML页面的运行提供技术支持,Tomcat 的任务则是运行Servle和Java 页面。Tomca也具有一定的HTML页面处理功能。Tomcat属于一种轻型的服务器,所以说在中小企业中并不具有普适性。但是当程序员需要开发或调试Java 程序时,则通常会将该服务器作为首选。对于一个仅具有计算机基础知识的人来说,计算机系统具有一个好的Apache服务器,可以很好的对HTML 页面进行访问。Tomcat是非常受欢迎的服务器,因为它具有较好的扩展性,而且在运行的时候不需要太多的系统资源,拥有程序员所需要的收发邮件功能,还能够支持负载平衡,该程序能够不断的更新,程序员能够根据自己的需要增加新的功能。

2.5 SpringBoot框架
Spring Boot是Pivotal团队的一个新框架,旨在简化新Spring应用程序的初始设置和开发。该框架使用特定的配置方法,无需开发人员定义样板配置。通过这种方式,Spring Boot旨在成为蓬勃发展的快速应用程序开发领域的领导者。
Spring Boot特点:
1、创建一个单独的Spring应用程序;
2、嵌入式Tomcat,无需部署WAR文件;
3、简化Maven配置;
4、自动配置Spring;
5、提供生产就绪功能,如指标,健康检查和外部配置;
6、绝对没有代码生成和XML的配置要求;
安装步骤:
最基本的是,Spring Boot是一个可以被任何项目的构建系统使用的库集合。 为简单起见,该框架还提供了一个命令行界面,可用于运行和测试Boot应用程序。 可以从Spring存储库手动下载和安装框架的已发布版本,包括集成的CLI(命令行界面)。 更简单的方法是使用Groovy enVironment Manager(GVM),它负责处理Boot版本的安装和管理。 可以从GVM命令行GVM install springboot安装Boot及其CLI。 在OS X上安装Boot时可以使用Homebrew包管理器。要完成安装,首先使用brew tap pivotal / tap切换到pivotal存储库,然后执行brew install springboot命令。

3 系统分析

所谓系统分析就是,需求人员通过与用户的沟通,所获取的信息,然后把这些信息通过需求说明书的方式展示给用户和开发人员。在软件功能发展的历史长河中,很长时间,特别是最开始的时候,需求分析的重要性并不被人们所认同,例如当时美国IBM公司为英国电信公司开发一套信息管理系统,在需求不明确的情况下开始开发,最初的工期为一年,由于需求获取不清晰导致工期推迟了半年多,造成巨大损失。我们很多软件公司也存在这种情况,边需求,边开发,甚至与用户没有沟通清楚的情况下,直接照搬同类型的项目进行更改,导致到系统验收的时候,重新更改,造成了人力、物力的极大浪费。而导致这一切后果的原因就是需求获取不及时、不清楚、不全面。
在这里插入图片描述

3.1 可行性分析

3.1.1技术可行性

技术可行性分析是对开发家具网站的技术可行性评估,提前进行规范,现在适合的技术,可以事半功倍。
系统使用JAVA和MYSQL数据库。JAVA是比较成熟的语言,开发系统具有很多优势,完全开源免费。JAVA是嵌入在HTML中的,在服务器运行后,进行解释。JAVA具有独特的语法,执行效率高,因为JAVA代码是在服务器端执行的。JAVA的引擎机制会把执行后的结果保存到客户端内存中,当用户再次访问这个页面时,直接从内存读取,运行速度快。
JAVA是网络编程语言,对于本系统的开发作为合适,在技术上具有可行性。

3.1.2操作可行性

操作可行性主要考虑开发系统后,是否操作方便,是否可以解决现有的问题,是否可以提高相应的效率。本系统使用web模式,通过浏览器即可访问,操作简单。进入系统后,通过主页的菜单快速的进入各个子功能,通过鼠标和键盘就可以完成各种事项。在操作上具有可行性。

3.1.3经济可行性

经济比较包括两个方面,投入和收益。投入上包括开发系统需要的人力成本和服务器硬件成本。人力成本上,一个月的人力成本就5000元左右。服务器硬件成本1万元。而收益上,开发家具网站后可以使用多年,并可以分析给其它高校使用,投入使用一年的收益都将大于投入,所以,在经济上可行。

3.1.4时间可行性

计划使用两个月完成系统的分析、设计、实现和实施。通过前期的调研,完成系统时间需要一个月时间即可,考虑到后期的修改和实施,预留了足够的时间,所以,开发家具网站时间上可行。

3.2 业务流程分析

3.2.1 登录流程

在这里插入图片描述

3.2.2 注册流程

在这里插入图片描述

3.2.3添加信息流程

在这里插入图片描述

3.2.4删除信息流程

在这里插入图片描述

4 功能需求

管理员登录后可进行首页、个人中心、用户管理、企业管理、岗位信息管理、岗位类型管理、应聘信息管理、应聘状况管理、平台费用管理、系统管理,管理员的用例如图3-1所示。
在这里插入图片描述
3.4.2用户用例
用户注册登录后可进行首页、个人中心、应聘信息管理、应聘状况管理、我的收藏管理,用户用例如图3-2所示。在这里插入图片描述
在这里插入图片描述

5 数据库

在这里插入图片描述
在这里插入图片描述

6 系统实现

5.1用户功能模块
用户点击进入到系统操作界面,可以对首页、个人中心、应聘信息管理、应聘状况管理、我的收藏管理等功能模块,应聘信息管理:通过列表可以获取职位名称、岗位类型、企业账号、企业名称、负责人、联系方式、用户账号、姓名、用户手机、性别、年龄、毕业院校、最高学历、个人简历并进行修改操作,如图5-1所示。在这里插入图片描述
应聘状况管理:通过列表可以获取职位名称、岗位类型、企业账号、企业名称、负责人、联系方式、用户账号、姓名、用户手机、状态、内容、更新时间等信息,进行详情、修改、删除操作,如图5-2所示。在这里插入图片描述
5.2管理员功能模块
管理员通过用户名和密码、角色填写完成后进行登录,如图5-3所示。管理员登录成功后进入到系统操作界面,可以对首页、个人中心、用户管理、企业管理、岗位信息管理、岗位类型管理、应聘信息管理、应聘状况管理、平台费用管理、系统管理等功能模块进行相对应操作。
用户管理:通过列表可以获取用户账号、姓名、性别、年龄、头像、用户手机、毕业院校、最高学历、期望职位、薪资要求、期望城市等内容,可以进行修改或删除操作,如图5-4所示。在这里插入图片描述
在这里插入图片描述
企业管理:通过列表可以获取企业账号、企业名称、企业地址、企业规模、负责人、联系方式、企业图片、企业邮箱等信息,进行删除或修改操作,如图5-5所示。在这里插入图片描述
岗位类型管理:通过列表可以获取岗位类型等信息,进行修改或删除操作,如图5-6所示。在这里插入图片描述
应聘信息管理:通过列表可以获取职位名称、岗位类型、企业账号、企业名称、负责人、联系方式、用户账号、姓名、用户手机、性别、年龄、毕业院校、最高学历、个人简历等信息,进行修改或删除操作,如图5-7所示。在这里插入图片描述
应聘状况管理:管理员通过列表可以获取职位名称、岗位类型、企业账号、企业名称、负责人、联系方式、用户账号、姓名、用户手机、状态、内容、更新时间等信息,进行修改或删除操作,如图5-8所示。
在这里插入图片描述
平台费用管理:管理员通过列表可以获取费用编号、年月、费用类型、费用金额、企业账号、企业名称、负责人、联系方式、是否支付等信息,进行修改或删除操作,如图5-9所示。在这里插入图片描述
5.3企业功能模块
企业点击进入到系统操作界面,可以对首页、个人中心、岗位信息管理、应聘信息管理、应聘状况管理、平台费用管理等功能模块,个人信息:通过列表可以获取企业账号、企业名称、企业地址、企业规模、负责人、联系方式、企业图片、企业邮箱并进行修改操作,如图5-10所示。在这里插入图片描述
平台费用管理:通过列表可以获取费用编号、年月、费用类型、费用金额、企业账号、企业名称、负责人、联系方式、是否支付等信息,进行详情、修改、删除操作,如图5-11所示。在这里插入图片描述
应聘信息管理:通过列表可以获取职位名称、岗位类型、企业账号、企业名称、负责人、联系方式、用户账号、姓名、用户手机、性别、年龄、毕业院校、最高学历、个人简历等信息,进行详情、修改、删除操作,如图5-12所示。在这里插入图片描述
应聘状况管理:通过列表可以获取职位名称、岗位类型、企业账号、企业名称、负责人、联系方式、用户账号、姓名、用户手机、状态、内容、更新时间等信息,进行详情、修改、删除操作,如图5-13所示。在这里插入图片描述
5.4前台首页功能模块
人职匹配推荐系统,在系统首页可以查看首页、企业、岗位信息、新闻资讯、个人中心、后台管理等内容,如图5-14所示。在这里插入图片描述
用户注册,在注册页面可以填写用户账号、密码、姓名、性别、用户手机、毕业院校、最高学历、期望职位、薪资要求、期望城市等信息进行注册,如图5-15所示。在这里插入图片描述
用户登录,在登录页面通过填写账号、密码等信息完成登录,如图5-16所示。在应聘信息页面通过查看职位名称、岗位类型、企业账号、企业名称、负责人、联系方式、用户账号、姓名、用户手机、性别、年龄、毕业院校、最高学历、个人简历等信息进行提交操作,如图5-17所示。在这里插入图片描述
在这里插入图片描述

第六章 系统测试

6.1测试目的

系统测试包括黑盒测试和白盒测试,在黑盒测试中,验证每一个功能是否都可以使用,是否符合需求。之所以叫黑盒测试,是因为把程序当作一个盒子,不去考虑程序内部因素,只是对外部功能进行测试。而白盒测试是对程序进行测试,验证程序功能结构、逻辑等进行测试。
系统测试是软件工程最后一个流程,核心目的是找出问题修复问题。系统测试保证了软件交付的依据,通过了系统测试,才能完成最终审查。系统测试可以使用软件进行测试,也可以人工进行测试,在规范化开发中,通过一定的软件进行性能测试非常有必要,工具可以模拟访问量,连接数等进行系统压力测试。
测试的任务是发现错误,提高系统的强壮型,检验系统开发的情况。又分为了模块测试、组装测试和确认测试。在本系统中,通过测试用例,进行对应的功能测试。

说明

开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql 5.7
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven3.3.9

后台路径地址:localhost:8080/项目名称/admin/dist/index.html
前台路径地址:localhost:8080/项目名称/front/index.html (无前台不需要输入)

管理员账号:abo
管理员密码:abo

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐