基于Android平台的求职招聘系统的设计与实现毕业论文Word文档格式.docx
《基于Android平台的求职招聘系统的设计与实现毕业论文Word文档格式.docx》由会员分享,可在线阅读,更多相关《基于Android平台的求职招聘系统的设计与实现毕业论文Word文档格式.docx(40页珍藏版)》请在冰豆网上搜索。
本文研究的基于Android平台的求职招聘系统的设计与实现,求职者使用系统进行投递简历求职,招聘者使用系统进行职位发布,第三方管理员进行企业,人才,招聘等信息的管理,开发需要的工作如下:
1.AndroidSDK和搭配ADT的Eclipse,完成客户端服务请求,服务修改等操作。
2.MyEclipse和Tomcat完成服务器端与客户端和数据库数据交互等操作。
3.MySQL数据库进行各对象和操作信息的保存操作。
第1章绪论
1.1课题研究背景和意义
在技术飞速进步的今天,带动了智能手机的研制进度,智能手机市场可谓呈现井喷势的发展,传统手机由于技术的限制已经逐步被淘汰之,在经历了市场的潜伏期后,如今主要有两大手机平台市场占有率最高:
Android、Ios两大平台,由于Android系统的兼容移植性优良且开源所以许多手机厂商都会在源生系统基础上研发新的智能系统,导致了Android系统构造复杂,碎片量多,不过相反的是IOS系统得益于Apple公司全面的制度体系,才打造出碎片量小、规整性高的系统,不过却难以匹配各式各样的设备,达不到客户多样的使用要求。
社会信息化的发展日新月异,计算机应用已经静悄悄的走入了人们的生活,计算机以其自身一种高科技、高效率、高水平的标杆作用在社会中已经举足轻重,许多大型企业已经开始投入大量高额资金,建立大规模的计算机信息管理系统,而此次目标所要开发的求职招聘系统是一种具有交互功能的多功能人才管理信息系统,是搭建在虚拟网络上的一个求职招聘系统。
网上招聘已经成为未来人才市场进行人才发现和吸收的一个趋势,其便捷性以及功能越来越丰富多样的求职和招聘模式使其迅速成为各求职者和企业的首选途径,在国外相关人员将新型的网上招聘与传统的招聘方式结合构建了一整套多元并且完整的人才交流系统,有数据表明:
96%的五百强企业人才是通过网上招聘招纳的。
网上求职招聘相较于传统的具有可迅速实现简历筛选,招聘范围广泛,一次可接收相关信息之大,可挑选余地大,不仅经济实惠,效果还非常显著,因此越来越多的企业认可其实用性。
网上求职招聘应用拓展了人才获得渠道,在人才和企业间搭建了一座无形的人才交流之桥,其先进性是过去闻所未闻的,优秀人才可以了解更多企业公司的信息,而企业也可以因此了解更多优秀的应聘者。
1.2本文研究内容
本课题阐述如何研发一款搭载安卓系统的求职应聘类APP应用软件。
本应用软件操作简单,融入了当下最新的研发思路,在页面上体现出简便化以及具备向导功能,和电脑的页面相比虽然更简便,但麻雀虽小五脏俱全,基于使用功能齐全且简单的界面来操作和展示,让用户无需先学就能轻松熟练的操作,这让老年人群也有了享受先进科技的权利。
APP开发流程:
(1)明确APP研发的价值,制定研发的要求、系统构造、最终达到的目标。
(2)通过市场调查总结出客户使用要求。
(3)制定相应的功能及其模块示意模型。
(4)广泛收集APP的设计材料。
(5)进行页面的布置和优化,组织代码的编制工作。
(6)编制的代码要落实到每项功能需求上。
(7)基于安卓系统传统界面进一步改良。
(8)进行软件测评,针对测评结果进一步优化。
1.3论文框架安排
本课题主要论述了研发一款搭载安卓系统的求职应聘类APP应用软件的全部流程。
从初步设想至软件的完成研发一系列的流程,分为七个章节进行详细论述,分别是:
第一章通过绪论将本课题明确所研发的应用软件的定位,落实要完成的工作,并概述了研发流程;
除此以外,还讲述了研发本软件的背景及目的,使研发的软件更具实际操作价值,同时简单概括每个章节涉及的主要工作。
第二章详细分析了研发软件中应用到的知识以及使用设备。
第三章分析系统需求与列出UML用例图。
第四章通过阐述了此应用软件的开发理念、开发流程,总结出还需要改进的地方。
第五章介绍开发使用的数据库和数据库设计。
第六章论述了并介绍系统研发过程。
第七章主要对本课题编制的全过程进步总结,说说本人的收获和感想。
最后:
表达感谢并将本课题所参考应用的文献资料罗列出来。
第2章基本原理与技术介绍
2.1开发工具及环境简介
第一种:
Eclipse
此款开发系统是根据Java语言编制的,它具有源代码编制公开功能。
对于Eclipse平台,可以说是框架平台,可以说是服务平台,可以使用在插件等的组合研发条件中。
不过,它本身还配置了标准化的插件组合,里面就含有Java语言的研发配置。
Eclipse之所以能够成功,主要是因为其在不同的平台上能够实现自由集成,形成开放的条件。
前期大多被使用在编写Java上,不过现在还是有些研发人员利用插件将它当成研发别的语言的工具,这些语言包括有C++语言以及Python语言。
对于Eclipse而言,可以看做是框架,由于能够匹配的插件种类繁多,这就使Eclipse比别的性能表现单一的集成开发环境更能满足需求。
越来越多的应用软件研发商家基于Eclipse研发出了本公司的集成开发环境。
在上世纪九十年代末期,来自加拿大OTI公司的IDE研发团队联合美国IBM公司的IDE研发团队,共同研发了Eclipse。
由于IBM拥有早期编制Eclipse的代码源,分别是PDE、Platform以及JDT,所以,IBM公司作为发起者,在世界上形成了研发Eclipse工作的超大联合体,多达一百五个公司加入,较为出名的公司有RedHat、Borland和RationalSoftware等。
Eclipse属于研发源代码工作,本质上是取代VisualAgeforJava的产品,它的页面和VisualAgeforJava比并没有较大区别,不过因为Eclipse其源代码是公开的,既不收费也可以利用它进行研发新插件,Eclipse具备的优点使其迅速被各大软件开发商所热捧。
最近,世界著名的大企业也参加Eclipse联盟,其中就有Oracle公司还表明未来会把Eclipse打造成能够采用各种语言进行研发的集成开发环境,而用户将通过下载插件便能实现操作。
第二种:
MySQL
MySQL属于大型关系的数据库,其在web端作用功能显著。
其与其他大型数据库相比更加经济适用,由于其源码开放,因此给予开发人员更多便利。
且MySQL由于采用GPL协议,支持定制个人专属数据库系统。
其使用c和c++完成开发,因此良好的移植性是其优点,且有多种API与多种语言适配。
链接数据库途径有JDBC和ODBC等多种,其支持原生JSON。
MySQL将获取的数据存储于表格中而不是置于仓库中,这样数据库系统运行速度和灵活性就大大加强。
第三种:
ADT
现在安卓系统都是运用Eclipse进行研发,在Eclipse编写集成开发环境条件下,搭配ADT,保障了安卓系统研发工具能够得到更新和修改,换而言之就是基于Eclipse研发工具的更新工具。
第四种:
AndroidSDK
SDK简单的理解就是研发应用程序的工具。
研发者将其应用构建软件平台的研发工具包,这其中包括有硬件系统、软件模块、软件包以及操作平台等。
所以,我们可以说AndroidSDK就是只能应用在安卓系统的软件研发工具包。
2.2Android系统
对于“Android”,可以解释为机器人,也指的是由谷歌公司以Linux为基础而开发的手机操作系统——安卓系统。
这个系统是利用客户页面、中间件、应用程序以及操作平台建构而成的,可以说是第一个为手机研发的完全开放以及全面的软件。
安卓系统利用Linux系统的内核,研发出的操作平台。
起初是谷歌公司研发,叫“安致”并在中国注册,后期通过OpenHandsetAlliance团队研发。
Android利用softwarestack,构造形式是叠层的形式,它包括三层。
最底层是基于Linux内核运行运作的,只能保证一部分普通功能,别的程序就需要各个开发商进行研发,并用Java当成编程的组成要素。
为了进一步提研发水平,谷歌公司与众多手机企业合作共同组建起开放手机团队。
还没有发布安卓系统以前,社会上大部分人都是以为其只是谷歌手机,而没有想到是一个操作系统。
后期,谷歌公司发布了其自主品牌的手机——NexusOne,现在搭载的SDK版本最新达到了Android8.0.0。
2.2.1AndroidFeatures特性
安卓操作平台包含下面多种特点[1]
·
软件构造:
各个组件可以修改和更改。
具有Dalvik虚拟机:
可以进一步改善手机等移动设备。
配置的浏览器集成度高:
这款浏览器是利用WebKit作为引擎的。
图形库更加丰富:
含有2、3D,其中,新加入的3D图形库是利用了OpenGLES。
·
SQLite:
在保存信息上使用了构造形式。
可以使用多媒体功能:
含有普通的影音文件,例如MPEG4、AAC以及JPG等。
GSM手机:
通过硬件实现。
蓝牙功能、3G网络和无线功能:
加速度器、拍照、定位以及指南针:
开发环境多样:
含有设备仿真装置、解调设备、分析容量和性能的功能。
2.2.2Android系统的四大组件
安卓操作平台是由4个部分组成的,其中每个部分都是视图,不过一部分是能够看到的,一部分无法看到的。
例如ActivityContentProvider就是能够看到的视图,Ervice以及BroadcastReceiver就是无法看到的视图,无法看到视图只能于平台幕后作业。
以下是对4个部分进行详细的阐述[3]:
第一部分:
Activity
Activity组件使安卓操作平台可以产生可视化的使用页面,一个安卓程序一般是通过若干Activity构成Activity栈Stack,现在运行的Activity就在栈最上端。
Activity的使用寿命是取决于安卓操作平台。
第二部分:
Service
简而言之,Service指的是在系统后端运作的一款服务型程序,它通常不与使用者出现关联,所以不需要可视化页面的功能。
单独的Service类通常较为容易,通过沿用Service类,完成它的使用寿命便可。
一个完善的Service一定要在AndroidManifest.xml配置文件中获得通过,再利用<
service>
元素表明方可操作,Service具备一定的使用寿命,能启动startService()。
通过采用Service方式和bindService()方式对现有的Service进行绑定。
第三部分:
BroadcastReceiver
BroadcastReceiver指的是一种广播式的接收装置,与事件处理机制有一定的共同点,但不同之处是事件处理机制是定义在程序组件等级上的。
比如,针对个别按键的点击,广播的接收装置属于系统等级的。
现在,程序组件能够用Intent进行开启,还能够利用操作sendBroadcast()开启系统等级的情况进行广播扩散信息。
还能够在实用软件里运用BroadcastReceiver实现监督和管理广播的Intent。
第四部分:
ContentProvider
ContentProvider的用途是储存以及搜索信息,同时可以让各个软件实现信息交流。
目前,实现跨软件达到信息共用的途径就只有ContentProvider。
安卓是使用量比较多的视频、音频、图像、通讯录等多种信息类型都供应了许多ContentProvider。
这些都是确定在android.provider内部的,利用完善的ContentProvider用户能够更便捷的处理信息,不过也要设置一定的使用限定。
能够自定义ContentProvider对信息实现分享,也有利于使用者进行登录。
第3章系统需求分析
这一章节探究了搭载安卓操作系统的招聘应聘软件各模块功能的需求,以及需求用例图,同时探究了其他非功能性需求。
3.1系统需求分析
本课题的基本内容:
1、用户登录:
用户使用电话号码进行注册与登录,登陆后选择是求职者还是招聘者进入不同界面。
2、简历填写:
求职者根据网络模板填写个人信息。
3、职位参考:
根据简历内容推荐可供选择的职位信息。
4、职位搜索:
求职者根据要求选择求职关键字如招聘岗位、薪资待遇、工作地点查询工作信息并可以选择是否申请职位。
5、职位收藏:
添加待选工作收藏,便于查找与选择。
6、企业注册信息:
如实填写企业真实信息,填写上传后,无法修改。
7、企业招聘职位管理:
企业可对招聘职位进行增删查改。
8、人才库参考:
根据企业招聘职位,推荐企业所需人才。
9、人才搜索:
企业根据要求进行关键字搜索来选择招聘人才,同时查看筛选简历。
10、人才收藏:
添加待选人才,便于选择与联系。
11、聊一聊:
求职者可以直接联系企业招聘负责人,进行职位了解。
12、管理员权限:
可查看或删除用户(求职者/企业)的信息。
13、用户反馈:
用户反馈使用信息给管理员,管理员可进行回复和处理。
14、退出账号:
退出当前账户,返回登陆界面。
3.2需求用例图
相应的各用户模块需求UML用例图如下3.1,3.2,3.3:
图3.1求职者用例图
图3.2企业招聘用例图
图3.3管理员系统管理用例图
3.3其他需求
性能需求:
由于求职招聘系统需要满足各年龄段人群的需求,故其界面简洁,操作简便变成了一个基本要求,并且由于技术的发展,传统应用响应用户的时间已经不能满足要求,故需使用相关技术手段使系统运行速度提高。
安全需求:
由于本系统面向人群为各年龄段,故应对账号密码验证系统要求严格,且提供合理的密码修改操作也是必要的,对于管理员可操作的行为设为私有,其他用户均不可碰触。
界面需求:
由于各用户使用Android设备的系统版本不同,故应做好界面相应的简洁和简便,使不同用户均能有良好的用户体验。
故障修复需求:
若系统由于数据问题出错,管理员与维护人员能及时进入数据库进行数据维护处理。
第4章系统设计
4.1系统设计目标
我们对平台仔细研究之后,就要研发出可以达到预期值的平台。
平台研发重点有:
制定研究方案,把一个完整的系统拆分成多个子系统,明确每个子系统要落实的功能、实现的目的和它们之间的联系,制定控制子系统的方案,测评每个子系统,并进一步测评整个系统。
研发的平台的目的构建出一款利用安卓系统的招聘应聘应用软件,以适应高校的招聘应聘需要。
使用页面简单、使用方法容易,通过用心的设计各个操作,突显了简便的操作,隐藏了繁杂的运算步骤,简便的操作可以减少使用者前期需要耗费的时间和精力,也降低了操作中故障的概率。
利用完善和先进技术和更新的软硬件,就能够确保平台的稳定性以及容错性。
平台根据客户的使用要求,始终坚持客户操作简便为出发点,时刻关注客户的使用反馈。
4.2系统总体结构设计
通过研发应用程序会将其分解程若干个模块,再基于每个模块再进行细分,最终满足了软件模块化的需求,接着仔细把每个小模块进行编程,通过模块化的处理方法能够让软件的构造更有条理,也让软件得到有序的控制,让用户易懂易操作,不过此部分模块无法独立生存,它要依赖其他模块对其的制约,设计的最后要将每个模块进行组合,搭建出整个操作系统。
这个过程含有服务端以及用户端,用户端以安卓操作系统为基础,服务端基于Servlet,后台利用MYSQL的数据库。
在这个平台下,用户端主要承担的工作内容是收集信息并将其表现在屏幕上,此时用户所有录入、发送的数据都会被传输到服务端,服务端收到数据就会利用后台的MYSQL数据库进一步处理,同时把处理后的数据反馈到用户端,用户端收到反馈的数据后对数据进行操作,并最终获得想要的答案。
4.3系统流程分析
具备可靠性高、稳定性强以及成熟性高的技术对于研发操作系统是至关重要的。
有了这些技术,才有了研究以及完成每个功能模块的条件,高水平研发技术结合潮流的设计理念,可以确保研发中每一个流程都不受制约,使平台的设计更趋于合理和灵活,每个功能模块性能方能够顺畅展现。
操作平台的使用步骤详见下图4.1:
图4.1系统流程图
4.3.1系统求职者模块
系统求职者模块主要功能是求职者可以进行职位搜索并进行简历投递功能,对心仪职位进行收藏,若想进一步了解职位信息可给招聘者留言或进行聊天,求职者还可以对自己的简历进行建立和修改,该模块功能流程图如下图4.2:
图4.2系统求职者模块流程图
4.3.2系统招聘者模块
系统招聘者模块主要实现企业用户进行职位发布功能,同时可查看人才信息对心仪人才进行收藏,且可与求职者进行网上聊天,该模块流程图如下图4.3:
图4.3系统招聘者模块流程图
4.3.3系统管理员模块
系统管理员模块主要功能是对人才信息,企业信息(招聘方),职位发布信息(招聘信息)进行添加删除管理,且对反馈信息进行处理,该模块流程图如下图4.4:
图4.4系统管理员模块流程图
第5章数据库设计
我们所研发的平台要有一个能够接收用户端信息的服务端,利用后台的MYSQL数据库保存信息,MYSQL数据库属于关联式的数据库控制平台,关联数据库把信息存放于各个表格内,并非把全部信息都置于大数据库中,有利于提升操作速度,提高灵敏性。
此研发平台使用到若干个数据库表格,这些表格的设计构造详见下列表格:
表5.1:
admins
表5.2:
tb_collect
表5.3:
tb_collect_user
表5.4:
tb_delivers
表5.5:
tb_enterprises
表5.6:
tb_feedbacks
表5.7:
tb_jobs
表5.8:
tb_leaves
表5.9:
tb_users
第6章系统实现
6.1求职者模块
6.1.1用户登陆模块
用户打开软件出现选择登陆界面,选择用户选项进行登陆如图6.1:
图6.1用户登陆界面
登录模块是系统的门,是用户登陆系统的唯一途径,在设计中非常重要,本系统中登录模块主要设计用户帐号,用户密码,以及身份登陆的验证,因此本模块有下面这些功能