基于android招聘求职网站的设计与实现论文全文_第1页
基于android招聘求职网站的设计与实现论文全文_第2页
基于android招聘求职网站的设计与实现论文全文_第3页
基于android招聘求职网站的设计与实现论文全文_第4页
基于android招聘求职网站的设计与实现论文全文_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计基于Android的招聘求职网站的设计与实现学生姓名:学号:系部:计算机工程系专业:计算机科学与技术指导教师:二零一五年六月诚信声明本人郑重声明:本设计〔论文〕及其研究工作是本人在指导教师的指导下独立完成的,在完成设计〔论文〕时所利用的一切资料均已在参考文献中列出。本人签名:年月日毕业设计〔论文〕任务书毕业设计〔论文〕题目:基于Android的招聘求职网站的设计与实现系部:计算机工程系专业:计算机科学与技术学号:学生:指导教师〔含职称〕:1.课题意义及目标在二十一世纪求职方式跟以前是不同的,与在各个用人单位和招聘会上寻找理想的工作,基于安卓的招聘系统能够提供最好的最丰富及时的招聘信息。。通过对该系统的研究设计,可以提高对设计的分析,编码和对文档书写标准的能力,也能更加有解决问题的能力。2.主要任务根据招聘求职网站中需求的制定需求分析。系统的主要功能可以分为求职者和招聘者发布信息获取相关信息。对招聘求职网站的特点进行分析,完成该系统的总体设计,从数据流和功能模块角度给出系统总体设计方案。根据总体设计分析进行详细设计,分模块依次实现系统功能。招聘者注册登录,发布求职招聘信息。求职者可以浏览、查询招聘求职信息,可以发布求职信息,招聘者可以发布查看招聘信息,同时可以查询自己需要的求职者个人信息。系统的客户端功能相比照拟简单,可以实现根本的招聘功能。系统管理,查看求职者和招聘者的信息并处理。运用所学的根底知识,充分发挥自己创造力,独立完成设计及论文。设计文档包括有效程序,原程序清单等。按照软件工程测试方法与要求,对开发结果进行测试,记录测试用例。3.主要参考资料[1]吴亚鹏.于复兴.杜化美.Android应用案例开发大全(第二版)[M].北京:人民邮电出版社,2021:2—10.[2]郭霖.第一行代码——Android[M].北京:人民邮电出版社,2021:127—137.[3]王雅宁.轻松学Android开发[M].北京:电子工业出版社,2021:16—33.[4]张思民.Android应用程序设计[M].北京:清华大学出版社,2021:216—231.4.进度安排序号设计〔论文〕各阶段名称起止日期1查阅文献资料、提交开题报告12月15日~12月25日2招聘网站系统需求分析03月01日~03月24日3数据库设计03月25日~04月10日4系统总体设计,并完成可视化交互界面的设计04月11日~05月15日5功能模块实现05月16日~05月11日6招聘求职系统测试05月12日~06月01日7完成毕业论文及辩论工作06月02日~06月22日审核人:年月日基于Android的招聘求职网站的设计与实现摘要现在,随着智能的迅速开展,网络招聘也随着使用网络者的增长而增长,更多的人用上网取代了他们以往的消遣方式。在休闲时刻,他们更乐于浏览网页,所以网络招聘有绝对的优势可以让更多的求职者选择这条求职方式。在今后的社会那将是网络的时代,所以网络招聘是不可替代的,最终将成为求职领域的主导。本设计以MyEclipse为开发工具,使用Java语言作为后台开发语言,使用了MVC开发模式,开发与设计了本次的毕业设计。本论文基于Android的招聘求职网站,主要实现了求职者可以填写自己的简历。招聘者可以看到求职者的简历,也可以看到他们以往的工作经验,能够更加有利的选择自己的想要的人才。同样求职者也能够看到招聘者发布的信息,来选择自己想要的工作。还有管理人员可以查看他们的信息,同时也能够删除他们发现的不属实的信息。本设计实现了它的根本功能,在功能设计上根本实现了本次课题的需求,但是还是有所欠缺,有待完善。关键词:Java,mysql,招聘系统,智能DesignandImplementationofRecruitmentJobSiteBasedonAndroidAbstractAtpresent,withtherapiddevelopmentofmobilephone,onlinerecruitmentisalsoincreasingwithincreaseofonlineusers,morepeoplereplacetheirwayofentertainment.Intheirsparetime,theyaremorewillingtobrowsetheweb,soonlinerecruitmenthasabsoluteadvantagestomakejobseekerschoosethewayofseekingjob.Thefuturesocietywillbetheeraofnetwork,therefore,onlinerecruitmentcan’tbereplacedeasily,finally,itisgoingtobetheleadingpositionofjobsearch.ThissystemisbasedontheMyEclipseasadevelopmenttool,javaasdevelopinglanguageandthemoduleofMVCtodesignandimplementthegraduationproject.Thisthesisisbasedontheandroidonlinerecruitment,implementingmainlyjobseekersformingthemselvesresumes.Recruiterscanseejobseekers’resumes,andinformationwhichisreleasedbythejobseekers,sotheycanfindwhomtheywant.Also,managerscanchecktheirinformation.Inthesametime,thesemanagerscanfindunmatchedinformation.Thissystemimplementsitsbasicfunctionsanditbasicallymeettheneedsofthearticle,butitisneededtoimprove.Keywords:Java,mysql,recruitmentsystem,mobilephone目录TOC\o"1-3"\h\u88271概述 1319011.1实施工程的意义 1275261.2国内外研究进展 1222861.3论文的主要工作 269351.4前台开发工具 2278511.4.1Android的开发工具 2187421.4.2Android技术的软件 4324031.4.3JavaJDK的安装 52741.4.4eclipse的下载与使用 5190731.4.5Android开发工具的安装 544481.5数据库的特点性能 6208531.5.1优化程序怎样工作 762841.5.2忽略优化 874072基于android的招聘系统的可行性分析 10296322.1Android的技术可行性 10124322.1.1android硬件可行性 10119762.1.2android软件可行性 12278692.2经济可行性 13174902.2.1网络招聘的特点 1353792.2.2网络招聘与传统招聘的优势分析 13146393基于android招聘求职网站系统的需求分析 15306213.1用户需求 15129123.2性能需求 15314393.3系统要求 15260083.4系统需求分析 1636463.4.1系统的功能 16315473.4.2系统功能——用例图 17229463.5用户需求 17327104招聘求职系统的设计 19299554.1招聘求职网站系统的概述 1969734.2招聘系统的主要功能 1981734.3招聘系统的功能设计 20205304.3.1前台管理 20222914.3.2后台管理 20172294.4管理功能的模块设计 20256604.5申请职位的过程 2122539申请职位的过程如图4.3,详细的给出了如何申请职位。 2188184.6数据库表单设计 2152984.6.1数据库的作用 21165834.6.2数据库的优点 2137085招聘求职系统的实现 24246245.1效劳器端工程实现 24267635.2效劳端管理员的管理页面 258135.3对求职者管理 26237775.4招聘求职网站客户端 2798386系统测试 32273926.1使用说明 32215816.2测试环境 3270166.3测试报告 3265636.3.1功能测试报告 3231726.3.2性能测试报告 3686137结论 3717575参考文献 388577致谢 381概述1.1实施工程的意义最新的CNNIC数据说明,更高的学历的人群中已经有大多数的人接触使用网络了。面对着当今这市场和环境的需求,能够使得网络更加迅速的开展。也使得招聘网站更有它的开发和使用意义,它的意义主要是有广泛的应用性,在对市场的需求也逐步的成熟。求职者能够在招聘网站上找到自己满意的工作,招聘者也能找到自己想要的满意的人才。现在经济不断的开展,生活的节奏也不断的加快,求职者的队伍不断的壮大。在传统的招聘对求职者来说是不利的,浪费了大量的精力在路上,而招聘者也是浪费大量的时间和金钱。所以越来越多的人选择了网上招聘,而端的招聘是最简单也是最方便的求职方式。基于Android的求职系统是先进的科学技术和当今招聘相结合的产物,通过使用求职系统满足了求职者和招聘者双向的要求,多种信息让它统一的收集起来,网上招聘也不像以前那样的混乱,成功率也提高了挺多。1.2国内外研究进展现在是网络时代,网络招聘迅速的开展并成为了重要的招聘方式,很多公司和个体都已经开始运用这种方式来解决求职问题。网络招聘使求职者和招聘者能直接的方便的联系,互联网不断的开展,中国上网人数也不断的上升,通过网络招聘的求职者也越来越多。在全国公务员和事业单位的招聘跟多也使用了网上招聘,这种招聘使每个求职者都能够更加详细的了解职位信息,对各个员工也能更加了解。2021年开始,各大招聘网站为了提高用户的支持,增加了对用户的免费使用,在个人方面,增加了简历阅读,对求职的分析等方面,这样使得招聘者和求职者可以更方便的联系,更早的联系,双方可以进一步的了解彼此。这些研究,也帮助了招聘网站度过了难关。艾瑞咨询统计数据显示,09年已经有6500多万人使用网络求职,是08年的1.3倍,是中国上网人中的6.9%。艾瑞咨询分析,在接下来的很长时间内,招聘市场仍然有很多找不到工作的人,而网络求职的方便性更加吸引着求职者,10年到13年通过网络找工作的人数持续增加,13年将会超过8000万人。同时专家预测,在未来更加全面化统一化的网络招聘才能满足广阔求职者的各种需求。1.3论文的主要工作网上招聘是以本钱低、信息量大、招聘快、周期短获取了大多公司的青睐。当然,网上招聘也会出现信息的真实性和有效性不能保证、效劳局限等缺点。本文所写的招聘系统是以方便为主,解决求职的个人问题。该系统的主要功能如下:〔1〕根据招聘求职网站中需求的制定需求分析。系统的主要功能可以分为求职者和招聘者发布信息获取相关信息。〔2〕对招聘求职网站的特点进行分析,完成该系统的总体设计,从数据流和功能模块角度给出系统总体设计方案。〔3〕根据总体设计分析进行详细设计,分模块依次实现系统功能。招聘者注册登录,招聘者可以发布信息。求职者可以查阅已有的招聘信息,可以发布求职信息,招聘者可以发布查看招聘信息,同时可以查询自己需要的求职者个人信息。管理员管理:查看求职者和招聘者的信息并处理。1.4前台开发工具1.4.1Android的开发工具Android的系统架构分为四个层,从高到低分别是应用层,应用框架层,系统运行库层,linux内核层,如图1.1图1.1android的系统架构〔1〕应用层〔ApplicationLevel〕:应用层主要是和用户进行交互的,用户能够看见并且操作一些应用,Google开发Android在应用层绑定一些应用,比方Email客户端、SMS短消息程序、日历、地图、桌面〔Home〕、浏览器(Browers〕、联系人、〔Phone〕、通话内容等。这些都是可以通过java独立完成的应用。开发人员可以可以编写自己的程序,普通开发人员就是让更多的人使用开发人员的程序。〔2〕应用框架层〔ApplicationFrameworks〕:这是系统的重中之重,它表达了android的思想。应用框架层有很多的组件,其中活动管理器〔ActivityManager〕、窗口管理器〔WindowManager〕、内容提供器〔ContentProviders〕、视图系统〔ViewSystem〕、包管理器〔PackageManager〕等也是尤为重要。对开发人员来说,框架层主要表现在sdk,它通过各种模块实现各种功能。应用框架中的模块、效劳也可以被复用,知道了这个,才有更好的作品应用被开发出来。开发过程中常用到的根本框架组件如下:活动管理〔ActivityManager〕总体来说就是个控制器,管理着应用程序的生命和导航。每一个Activity就是应用中的一个窗口。应用一般是通过Activity的交互构成的。窗口管理〔WindowManager〕,听名字就知道它是对所有启动的窗口进行管理。内容提供器〔ContentProviders〕,对效劳进行一种提供,这种效劳可以共享程序之间的数据。视图系统〔ViewSystem〕,由Button(按钮〕,EidtView〔文本框〕,TextView〔标签〕,List〔列表〕等组成,熟练的使用这些组件就可以创立用户交互界面。包管理〔PackageManager〕,对android内的程序进行管理。除此之外,有框架组件,如资源管理〔ResourceManager〕、消息通知管理〔NotificationManager〕、位置管理〔LocationManager〕、管理〔TelephoneyManager〕等等。〔3〕系统运行库层〔LibrariesandAndroidRuntimeLevel〕:这层,是一些C/C++库,用来支持底层。包括Bionic系统C库,系统最底层的库、多媒体库〔MediaFramework〕、SGL〔2D图形引擎库〕、SSL〔在TCP/IP之间,支持数据通信〕、OpenGLES1.0、SQLite、、FreeType〔位图bitmap和矢量图vector〕。〔4〕Linux内核层〔LinuxKernelLevel〕:Android的Linux内核层。它是硬件和软件栈之间的抽象层。从软件栈方面来看,Linux内核就是“硬件〞。内核层提供如下一些驱动:显示驱动〔DisplayDriver〕、键盘驱动〔KeyboardDriver〕、Flash内存驱动〔FlashMemoryDriver〕、音频驱动〔AudioDriver〕、蓝牙驱动〔BluetoothDriver,基于IEEE802.15.1〕、照相机驱动〔CameraDriver〕、WiFi驱动、BinderIPC驱动〔Android的一个特殊驱动程序,具有单独的设备节点,提供进程间通信〕、PowerManagement〔电源管理〕[1]。1.4.2Android技术的软件Activity,Service效劳,ContentProvider〔内容提供者〕,BroadcastReceiver〔播送接收器〕构成了android的四大组件。〔1〕Activity(活动)。Android中,最主要的就是activity,程序的都在Activity中运行,开发者遇到的最多模块也是Activity。许多个activity组成安卓应用。Activity之间是可以相互联系和跳转的。在应用程序中可以运行的画面,都是Activity类的扩展。使用Views去创立UI来显示响应用户的行为。〔2〕Services(效劳)。它也是android的组件,跟Activity类似,但是它只能在后台运行,也可以其他组件交互。Service是可以运行很长时间的一种程序,没有界面。〔3〕ContentProvider〔内容提供者〕。ContentProvider管理数据库的,可以对存储的数据进行共享。在Android中,要有严密的数据保护,除在sd中的其他的文件等数据都不允许直接访问。ContentProvider主要用来管理和共享数据库。在应用程序之间它是首选。〔4〕BroadcastReceiver〔播送接收器〕。在安卓中,Broadcast是传输信息的。而BroadcastReceiver是过滤传输出的信息。可以用BroadcastReceiver来于外部的时间相交互。1.4.3JavaJDK的安装在开发之前,需要对开发环境进行搭建和配置。其中JDK的的安装为:〔1〕下载最新版本的JDK,下载地址为:可根据自己的系统需求选择相应下载。〔2〕下完后直接点击安装按钮,最好不要安在有汉子的目录下边。〔3〕JDK安装完成后,假设是在命令窗口下运行和编译JAVA程序的话,那么还需要对环境变量做一些设置,但我用eclipse作为JAVA开发环境,所以不需要设置环境变量。至此,JavaJDK安装完毕[2]。1.4.4eclipse的下载与使用eclipse的使用方法为:〔1〕下载最新版本的eclipse,下载地址为:

进入到下载,选“EclipseIDEforjavaEEDevelopers〞点击下载。〔2〕eclipse就不需要安装,下完解压后,点击eclipse.exe可以直接运行,在第一次运行时需要设置一个工作空间。1.4.5Android开发工具的安装JAVA运行环境安装好之后,需要安装Android的相关开发插件,其方法为:〔1〕SDK的下载和设置根据自己的开发需要下载相应的SDK版本,下载地址为:〔2〕下载完成后解压缩,翻开eclipse,然后再eclipse的标题栏上依次选择:Window→Preference→Android,点击Browse,在选下载的SDK路径,然后再点击OK即可。如图1.2所示:图1.2sdk的设置〔3〕完成第〔2〕步之后再在eclipse标题栏上依次选择:Window→AndroidSDKManager,在的窗口中选择需要的Android包,也可以全选,如图1.3所示,以后如果需要更新Android开发包都可以到这里来更新。在这里可以找到你想要的安装包,可以安装你需要的安装包。图1.3安装android包上边这样开发工具就安好了,就是说所有的准备工作已经好了,就可以在eclipse里新建工程,之后在新建的工程里面开发就可以了。1.5数据库的特点性能MySQL用了索引来查询,也用了别的。如,如果发布以下查询,MySQL将非常快地执行它,不管相应的表有多大:SELECT*FROMtb1_nameWHERE1=0在此情形中,MySQL考察WHERE子句,要死识别不到符合的行,就不会继续搜索。从EXPLAIN语句就能够了解,EXPLAIN要求MySQL显示应该执行查询,实际却没有执行。要使用EXPLAIN,在SELECT语句前放EXPLAIN就行了,如下所示:EXPLAINSELECT*FROMtb1_nameWHERE1=一般来说,EXPLAIN返回很多的信息,有索引、连接类型和表中的行数估计等。1.5.1优化程序怎样工作MySQL优化程序查询有多个目标,主要目标是尽量使用索引,用最多条件的索引来排除最多的行。这样有可能达不到想要的目的,因为发出SELECT语句的是为了找行,不是拒绝它们。所以这样工作的原因是排除行越快,找到想要的符合的行就越快。所以首先进行最具限制性的测试,查询就可以查询得更快。如果有个测试两列的查询,每列上都有一个索引:WHEREcoll="somevalue"ANDcol2="someothervalue"对相同的列进行比拟。利用索引列比拟的是那些相同的列。如CHAR(10)和VARCHAR(10)相同,和CHAR(12)和VARCHAR(12)不同。INT和BIGINT是不一样的。在MySQL3.23版以前,列也是要使用相同的,要不索引是起不了仍和作用的。在3.23这个版本后,对这方面不是那么的太严格了,但是相同的比不同的更有意义。要是比拟的类不是同一种类型,可使用ALTERTABLE语句修改其中之一使它们的类型相配。在进行比拟的要让索引列单独起来。有些时候这是不能防止的,但大多时候只编写索引查询就可以了。下面的WHERE子句说明了怎样进行这项工作。第一个代码是优化程序并将简化表达式4/2为值2,通过索引快速地找到小于2的值。第二行代码中,MySQL必须检索出每行的my_col值,乘以2,然后将结果与4比拟。没索引可用,因为列中的每个值都要检索,以便能对左边的表达式求值:WHEREmy_col<4/2WHEREmy_col*2<4让我们考虑另一个例子。假设有一个索引列date_col。如果发布如下的查询,相应的索引未被使用:SELECT*FROMmy_tb1WHEREYEAR(date_col)<1990其中表达式并不将索引列与1990比拟,是将列中得出的值进行比拟,所以一定要算这个值。所以date_col上的索引不能使用的。怎样解决?用一个文字日期就可以了,然后会使用改索引:WHEREdate_col<"1990-01-01"要是没有确定的日期值,就可能会找到比拟近的日期记录。有很多的方法来写这种查询但并不是都好的。三种可能的方法如下:其中第一行不能利用索引,为了计算TO_DAYS(date_col)的值,要对每行检索列。第二行就可以了,因为cutoff和TO_DAYS(CURRENT_DATE)是常量,所以他们的右边可以一次计算出来,就不需要每行都计算了。由于date_col列是在一个函数中所以对索引没有使用。第三行就是最优的方案了。在表达式的右边本来可以一次算出来的常量,可是其值是个日期,所以就可以与date_col直接比拟利用索引了。在LIKE模式的起始处不要使用通配符。有时,有的人会用以下形式的WHERE子句来搜索串:WHEREcol_nameLIKE"%string%"如果希望找到string,这样不管他在什么地方都能找到。不要把在串的两边加%养成习惯。如果实际要查找的只是出现在列的开始处的串,那么不应该要第一个“%〞号。例如,如果在一个包含姓的列中查找“Mac〞起始的姓,应该编写如下的WHERE子句:WHERElast_nameLIKE"Mac%"优化程序考虑模式中开始的文字局部,然后利用索引找到相符合的行。不过宁可写成如下的表达式,它允许使用last_name上的索引:WHERElast_name>="Mac"ANDlast_name<"Mad"这种优化对使用REGEXP操作符的模式匹配不起作用。忽略优化这可能听起来有点奇怪,但在以下情况中,要废除MySQL的优化功能:强迫MySQL慢慢地删除表的内容。在需要完全删空一个表时,利用无WHERE子句的DELETE语句删除整个表的内容是最快的,如下所示:DELETEFROMtb1_nameMySQL对这种特殊情况的DELETE进行优化;它利用表信息文件中的表说明从头开始创立空数据文件和索引文件。这种优化使DELETE操作极快,因为MySQL无需单独地删除每一行。但在某些情况下,这样做会产生一些不必要的负作用。MySQL报告所涉及的行数为零,即使表不为空也是如此。很多时候这没有关系〔虽然,如果事先没有思想准备,会感到困惑不解〕,但对于那些确实需要知道真实行数的应用程序来说,这是不恰当的[5]。如果表含有一个AUTO_INCREMENT列,那么该列的顺序编号会以1从头开始。这是真实的事情,即使在MySQL3.23中对AUTO_INCREMENT的处理进行了改良后也是这样。关于这个改良的介绍请参阅第2章中的“使用序列〞小节。可增加WHERE1>0子句对DELETE语句“不优化〞。DELETEFROMtb1_nameWHERE1>0这迫使MySQL进行逐行的删除。执行速度会很慢,但是可以知道实际删了多少行。它还将保持当前的AUTO_INCREMENT序列的编号,不过只对MyISAM表〔MySQL3.23以上的版本可用〕有效。而对于ISAM表,序列仍将重置。防止更新循环不终止。如果更新一个索引列,如果该列用于WHERE子句且更新将索引值移入至今尚未出超的取值范围内时,有可能对所更新的行进行不终止的更新。假设表my_tbl有一个索引了的整数列key_col。以下的查询会产生问题:这个问题的解决方法是在WHERE子句中将key_col用于一个表达式,使MySQL不能使用索引:实际上,还有另外的方法,将MySQL升级到比3.23.2更高的新版本,这已经是被解决了的问题了。以随机次序检索结果。自MySQL3.23.3以来,可使用ORDERBYRAND()随机地对结果进行排序。另一技术对MySQL更旧的版本很有用处,那就是选择一个随机数列,然后在该列上进行排序。但是,如果按如下编写查询,优化程序将会让您的愿望落空:这里的问题是MySQL认为该列是一个函数调用,将认为相应的列值是一个常数,而对ORDERBY子句进行优化,使此查询失效。可在表达式中引用某个表列来蒙骗优化程序。2基于Android的招聘系统的可行性分析2.1Android的技术可行性Android是google做的,在it领域google想做的任何东西,在仍和方面都没有问题,不管是在经济方面还是技术方面。Android原本指的是“机器人〞,现在主要是作为软件平台和操作系统,是以Linux内核为根底的,最早也是由Google开发出来的,后来为了广泛的推广这门技术,Google和别的十多个公司联盟共同开发这门技术。Android系统的前景相当好的,第一款有关android的是在2021年9月22日由美国运营商在纽约正式发布的,从此以后,又有不少的移动开发厂家看到了它的利益也都陆陆续续的参加了这个大的联盟之中,在平板电脑、笔记本、汽车等各个领域都用到了android的技术。现在android都广泛的应用开了,今后对android的需求也会更加的广泛,android将成为巨大的市场,会吸引无数的开发人员。

Google的目的就是让每位使用者可以在任何时候任何地方都可以从android系统看到资讯,这作为了他们今后开展的重中之重,也是他们要实现的最远大的梦想。自从Android软件开始运用后,新版本出现的特别迅速,差不多有半年的时间就会发布一个新的android版本。在Android1.0到2.2版本经历了十八个月,但这只是android的开始,永不停步,开发创新这是Google向大家做出的承诺,在今后我们将会看到在任何的领域都会有android系统不可替代的作用出现在之中。2.1.1android硬件可行性通过前两天对Android的Linux平台以及启动过程的初步学习,我认为android不只是可以单独的用在平台上,经过它的框架和结构,我觉得android这门技术可以应用在所有的移动设备上,或许开发出比现在更好的框架都有可能。Google内部也是这么说的,我们的目标就是,在各个移动平台设备上都可以看到我们发布的功能强大的平台。这是可以理解的,Google就是这样,它的每个策略都比常理要更进一步。不推出专属的硬件,而是一个通用的移动设备的软件平台,使Android可以更方便的快速占领操作系统的市场,而最终可以到达的份额也会非常的可观。当然,这都是后话了,group上这几天的焦点话题就是,我们如何让Android在现有的硬件平台上跑起来,而不是仅仅用模拟器来模拟它。从Android现有的开源情况看,所有的hacking已经有一个比拟明确的指导方向了,就是依靠Benno最先放出的方法来hack各种image并分析一些东西,从我之前的两篇文章也可以看出大致步骤。我们现在能够得到的东西,有ramdiskimage,systemimage,dataimage还有opensource的Linuxkernel。所以,所有的工作都应该从这几个东西入手。先看看kernel局部。因为Android是基于Linux的,所以任何移植平台都要允许Linux,对于尝试阶段的我们来说,最好是找一款默认就是采用Linux操作系统并提供完善的developenvironment的设备,这样,我们只需要找出Google提供的Linux2.6.23kernel和现有的kernel有什么不同,把所有需要的修改做成patch,patch到现有系统上,就有可能成功移植整个Android,无须重新编译Google的Linux2.6.23kernel,然后绞尽脑汁想怎么port到某个设备上。先下载一个standardLinux2.6.23kernel,然后使用命令diff-ruNlinux-2.6.23/Google-linux-2.6.23/>lk.patch翻开lk.patch,God,有3万多行。仔细分析一下,大局部都是和Qemu以及goldfish有关的。我们要做的事情,是让Android在真实平台上跑起来,所以不管是用于虚拟处理器的Qemu还是SDK模拟的硬件平台Goldfish,都不是我们所需要的,因为想让它在真是的硬件平台上运行,所以在patch都把它们去掉。恩,说实话,是一个很麻烦的事情,你要分析又30000多行的patch阿……不过里面有一超长段是关于yaffs的补丁,如果你目标平台所带的内核已经支持yaffs了,就没必要要了。这是修改后的patch,放在googlepages上的,要是哪天又被和谐了也没有方法。下一步,就是让打了Androidpatch的内核运行在你的目标硬件上,具体步骤是和不用硬件的开发环境相联系的。当然,还需要导入Android的rootfs以及filesystem。将他们用mkfs.jffs2构建成jffs文件系统即可。需要注意的是,这个适宜的硬件平台是需要挑选的,看看Android模拟器里面的信息:#cat/proc/cpuinfoProcessor:ARM926EJ-Srev5(v5l)BogoMIPS:331.77Features:swphalfthumbfastmultvfpedspjavaGoogle默认的是ARM926EJ-S核心。这就在一定程度上限制了我们能够port的平台选择,Benno曾经试验在Openmoko上移植Android,最后失败了,原因就是ARM926EJ-S采用的是ARMv5TEJ指令集,而Openmoko的ARM920T采用的是ARMv4T指令集。所以,不仅仅是需要能运行兼容EABI的Linux的设备那么简单。2.1.2android软件可行性〔1〕开放性这是android的优势,在Android平台它的开放性是最显著的,任何的移动厂家都可以可android联盟开发想要的平台。这样android就会有拥有不断增多的开发人员,由于用户和应用的大量增长,就算想android这样的刚出道的平台也会在不久走向成熟。开放性给Android带来了巨大的优势,帮助他积累了不同的消费者和厂商的,这对于它的开展有不可替代的影响,在消费者看来,他们受益于开发的各个软件,让他们享受其中的乐趣。巨大的竞争将会在开放的平台展开,而这样受益的将会是消费者,可以用更低的家和来买到想要的。〔2〕挣脱运营商的束缚在以前,又其是在欧美地方,要接什么网,要有什么功能旺旺都受到运营商的限制。但是在iphone上市以后用户就更加方便的连接网络。在过去很长的一段时间,特别是在欧美地区,应用往往受到运营商制约,使用什么功能接入什么网络,几乎都受到运营商的控制。自从iPhone上市,用户可以更加方便地连接网络,减少了制约。在2G和3G移动网络的提升和过度的过程中,可以更随意的介入网络了。

〔3〕丰富的硬件选择

这个特点还是与android的开放性息息相关,具有开放性的Android,各种不同的厂家会推出各种不同的,功能也要不同的多个不同的产品。在应用功能上的不同和特点,一点也影响不到数据同步,也不会影响然间兼容。就像你原来用的是诺基亚现在用的是苹果,但是你还能吧诺基亚中优秀的好用的软件带到苹果中使用,上边的信息比方联系人等也可以很方便的转移。〔4〕不受任何限制的开发商Android平台吧宽泛、自由的环境提供应了开发商。所以由不同的开发商开发不受到各种调节的制约,想想就知道有特别的新颖的软件会不断的诞生。可是任何事情都是两面的,android也有,有暴力,血腥等方面的所以今后要努力让android走向正路。〔5〕无缝结合的Google应用到现在,google已经不知不觉的走了10年了,从以前到现在android平台结合了各种优秀的google效劳,在地图、邮件、搜索等方面已经步入了互联网的重要地带,同时也成功的连接了用户。2.2经济可行性2.2.1网络招聘的特点网络招聘最大的有点就是能够让招聘者和求职者更加方便的进行交流,省去了以往招聘的繁琐。网络招聘有重要的三个特点:〔1〕能够包含的信息比拟大。网上的信息是最大的,可以更加方便,快速的更新各种信息。根据相关了解,有很多的网站每天在网上发布区的信息可以到达上万条。再加上一些比拟知名的网站,职位信息不断的更新求职者就可以看到每家公司的招聘信息,了解他们的空缺,来争取自己的工作和职位。更加方便了求职者的查阅。〔2〕方便,快捷。招聘者和求职者都省去了在招聘会的劳神费力,在家或者单位就可以完成求职。求职者可以编写自己的简历投入公司,公司招聘者可以浏览你的简历,这样就有很多的时机找上自己,没有时间和空间的限制,是网络的最大优势,就算在不同的地方,求职者和招聘者也可以进行交流沟通,也可以跨地域网上招聘。〔3〕经济实惠。用人单位不需要花费很多钱来开办招聘会,个人也省了很多的麻烦,也省了很多的金钱。这样最大的受益者就是求职者省去了在路上的时间,也省去了简历的制作费。在网上你可以投各种简历,让多个企业共同的查看,现在上网费用也非常低,真是省时省力的平台。2.2.2网络招聘与传统招聘的优势分析与传统招聘相比,网络招聘对于企业的优势:〔1〕招聘信息保存时间比拟长。在媒体上或者报纸上发布的招聘信息,每天的只能看到一天时间,时候如果没有招到人即使招聘有效人们也不想观看了,而在招聘网站中的招聘信息,从发布那天就可以一直被人浏览一直到企业找到适宜的工作人员为止,都是有效的。〔2〕收取的费用比传统的要低很多。在网络招聘中所要收到的费用是很低的,跟在媒体上发布招聘信息相比拟,费用低的不是一星半点,在比拟现场招聘,费用也低了很多,况且用上那么多钱,企业也只可以在招聘现场等着人们去面试等,这样也节省了时间。〔3〕有更多的时机。对用人单位来说,网络招聘可以让跟多的人看到,不管是本地的还是外地的,这样可以找到跟家适宜的,适合自己企业开展的人才,提高了企业找到优秀人才的时机,同时可以更加方便的对在线简历进行分类管理,数据统计,真是这些优点使得有更多的企业青睐网络招聘。种种的有点使得招聘单位跟乐意在网上招聘,同时网络招聘还对个人有不可小觑的作用优势:〔1〕方便快捷。求职者只需要在网上发表个人简历就只需等待该企业的信息就行了,如果天剑允许的话还能主动一点,找公司自己谈。网络不断开展,它的高效性可以让求职者在不用出门就恩能够对工作的种类地方,只恩呢该工资等了解的清清楚楚,并且可以每天看到各种不同的招聘信息。〔2〕可供选择的时机大。由于网络招聘的招聘信息量大所以求职者可以选择各种不同的职位,在选择适合自己的时机就会很大。〔3〕没有地域和时间的限制。像以前的那种在现场招聘的招聘会不是每天都有的,而且现场招聘还浪费时间,而网络招聘没事时间和地域的限制,求职者可以更好的,更长久的来寻找自己想要的工作,创造更多的时机,省却了大量的时间,解决了现在大多数人们的困扰。〔4〕可以省去大量的费用。像以前现场招聘的企业,他们通常也会在网上发布招聘信息,,这样你就可以省去大局部的简历费、交通费,也能够省去现场拥挤的场面,可以更加明确自己想要的工作。种种的利益,网络招聘成为了现在的主流。3基于android招聘求职网站系统的需求分析3.1用户需求首先设计要简单大方,界面的漂亮是最重要的,这样才可以让人的眼球放光,让人们有用这个系统的渴望。本设计可以让急于找工作的人恩更加方便的查看自己想要的工作,并根据自己的需求来寻找工作。本系统可以让求职者根据自己的需求来查看已有的工作类型和职位,也可以使招聘者查看已投放的人才的简历,查看他们的工作经验。根据各自的需求来找到自己需要的工作〔人才〕,解决更多人的就业问题。3.2性能需求〔1〕平安性登录本系统需要通过注册,输入用户名和密码才可登录,保证用户一定的平安性。〔2〕方便性本系统可以在智能上运行,可以通过进行简单的操作来查看职位信息和人才信息,更加方便的解决了求职问题,防止了以往不必要的麻烦。〔3〕可维护性系统主要使用了java语言,在程序出现问题可以及时的解决,提高了系统的维护性,使系统可以正常,稳定的运行。〔4〕操作简单性该系统对用户来说,操作简单,但凡会使用智能就可以使用该系统,操作的简便性会使得它有大量的使用者。3.3系统要求〔1〕用户系统①没有注册过的用户不能够登录系统。②新用户可以通过注册来获取用户名密码登录系统。③登录进入的用户,求职者可以查看已有的工作,招聘者可以也能够查看已投放简历的求职者的资料。④用户可以进入系统,详细的填写自己的信息,对招聘者和求职者他们双方可以通过网上的介绍来了解对方,进一步解决自己的问题。〔2〕管理系统①管理者可以登录进入效劳端的界面。②管理员可以查看用户的招聘状况和求职状况。③管理员能够删除那些信息不属实的用户的信息。④管理员能够修改自己的登录密码,查看求职者的审核状态。3.4系统需求分析系统的功能在功能方面主要包括客户端和效劳端,客户端有两个用户,分别是招聘者和求职者,可以注册登录系统,管理各自的信息,求职者能够投放自己的简历,更改自己的信息,查看已有的职位信息,同时招聘者可以发布招聘信息,及时更新自己的职位信息,让各个招聘者浏览同时申请自己的职位。用户使用两个登录界面,分别是招聘者使用的界面和求职者使用的界面,但是他们可以互相看到对方及时更新的内容,也能够通过比拟选择自己所需要的。具体分类如下:〔1〕用户模块①求职者需要注册登录,求职人员对系统的登录注册来进入系统。②招聘者需要注册登录,注册账号,公布职位信息,审核申请。③求职者可以注册信息,让招聘人员浏览。④管理人员能够管理信息,发布招聘信息,审核申请状况。〔2〕管理模块①管理人员的登录,能够修改管理密码,管理信息。②管理人员可以删除那些不属实的信息。③管理人员可以查看求职者的信息。④管理员也可以查看招聘者的订单情况。系统功能——用例图基于android的招聘求职网站,主要分为了客户端和效劳端,客户端可以输入数据通过效劳端使的双方都可以看到对方发布的消息。功能的整体布局如图3.1,它清楚的说明了各个局部的功能和作用,列出了每一局部具体是干嘛用的,分清楚了用户和管理人员的根本情况。图3.1整体功能用例图3.5用户需求招聘者和求职者通过注册填写自己的根本信息和选择职位,招聘者通过网上的根本了解来决定是否先聘用求职者,接下来在进行连相互联系决定是否选择对方。招聘者的根本需求如图3.2图3.2招聘者的功能用例图求职者通过对职位信息的查看来让招聘者选择自己。根本功能如图3.3图3.3求职者的根本功能用例图用户的需求是最重要的,一定要满足用户的需求,因为这个主要就是让用户来使用的,用户用的满意才能表现出改系统的优点。4招聘求职系统的设计4.1招聘求职网站系统的概述招聘系统的信息是双方提供的,只有实现它的价值才能成为它存在的理由。作为一种效劳类,求职者和招聘者再加上中介的对各种人才需求,信息的高效性和方便性推动了招聘系统的产生。对于招聘者来说,寻找适宜的具有一定技能的人才也推动了招聘系统的开展。4.2招聘系统的主要功能〔1〕求职者信息管理功能,主要是对求职者的信息进行处理。〔2〕招聘者的信息管理功能,主要是对发布公司的招聘信息处理。〔3〕在线招聘功能。〔4〕管理者信息管理功能,主要是可以对求职者和招聘者发布的信息进行处理,解决他们之间的一些问题。主要功能图如4.1图4.1主要功能图4.3招聘系统的功能设计前台管理用户注册:用户可以通过端来注册账号登陆系统。人才信息:求职者可以填写自己的信息让别人来查看。职位信息:管理员对职位进行分类让用户进行选择。后台管理分类管理:主要是对各种不同的职业进行的分类。求职者管理:用来管理求职者的信息,可以查看求职者应聘的审核状况。用户管理:可以添加和删除用户的信息。订单管理:招聘者聘用求职者的信息可以在这里查看。管理员信息:可以更改管理员的信息。系统功能如图4.2图4.2系统功能图4.4管理功能的模块设计系统分为管理员、求职者和招聘者,他们可以进行注册和登陆系统,运用各自登陆系统的功能来完成自己想要进行的工作。招聘求职系统信息管理管理员:可以修改自己的登陆密码,对求职者信息的审查和删除,对求职者的应聘状态进行审核。求职者:可以添加、删除和修改自己的信息,可以查看招聘者发布的信息。招聘者:可以添加更改自己职位的信息,也可以查看求职者的信息。4.5申请职位的过程申请职位的过程如图4.3,详细的给出了如何申请职位。图4.3申请职位过程图任何的求职者必须得注册登录才能浏览到相应的职位,才能选择职位,申请应聘相应的职位。4.6数据库表单设计数据库的作用主要是用于数据交换。如会员注册信息,新闻信息等,就是放在数据库。说白了数据库就是像仓库一样,里面的货就是数据。数据库的优点①综合统一。②高度非过程化。③面向集合的操作方式。④以一种语法结构提供多种使用方式。⑤语言简洁,易学易用。下边是我创立的数据表分别用来存储不同的信息:表4.1是管理员的信息表,设置了管理员的登录名和登录密码,也设置了管理员的id在表中可以清楚的看到表的中各个数据的数据类型,长度。表4.1管理员信息表列名数据类型长度小数点允许空idint110否1AdminNamevarchar2550是passwordvarchar2550是表4.2是求职者信息的数据表,分别设置了id、名字、密码、性别、年龄、身高、照片、学历、薪资、证书等一系列的信息,可以对求职者进行详细的了解,通过这个表把求职者的信息全部都可以在效劳端显示出来。表4.2求职者信息表列名数据类型长度小数点允许空idint110否1Namevarchar2550是passwordvarchar2550是Gendervarchar2550是Ageint110是heightint110是photovarchar2550是eduvarchar2550是salaryint110是certvarchar2550是jobDetailvarchar2550是experiencevarchar2550是remarkvarchar2550是regDatedatetime00是isDeleedvarchar2550是checkvarchar2550是typeidint110是表4.3订单数据表,有效劳,效劳时间,效劳地点等,也有对求职者的评价等信息,还有orderinfoid和orderuserid通过id使得求职者和招聘者联系起来,能够实现他们相互选择彼此的功能。表4.3订单信息表列名数据类型长度小数点允许空idint110否1servicevarchar2550是serviceTimevarchar2550是addressvarchar2550是remarkvarchar2550是scorevarchar2550是detailvarchar2550是complaintvarchar2550是orderInfoIdint110是orderUserIdint110是checkvarchar2550是表4.4这是对职位信息的分类表,有工作的类型和介绍,在求职者注册信息和招聘者查询求职者的时候可以选择不同种类的工作进行求职和查询,这样能更加方便的查到需要的人才和工作。表4.4分类信息表列名数据类型长度小数点允许空idint110否1Namevarchar2550是detailvarchar2550是表4.5这是招聘者的信息表,存储招聘者的名字、密码、,在效劳打量细的列出来,更方便的查看招聘者的信息。表4.5招聘者信息表列名数据类型长度小数点允许空idint110否1Namevarchar2550是passwordvarchar2550是telephonevarchar2550是5招聘求职系统的实现5.1效劳器端工程实现效劳端实现的界面登录界面如图5.1,管理者通过此界面来进入管理页面,在进行接下来的操作图5.1效劳端登陆界面图这个界面是管理员登录的界面,用户在该页面填写自己用户名和密码信息后发送给后台接收后,后台将这些信息与数据库中的信息比拟,得出是否存在该用户名,如果不存在那么提示,如果存在那么比拟用户名所对应的密码是否正确,正确那么登录,失败那么返回登录页面。这是管理人员登录界面的核心代码:/** *登录匹配 *@return */ publicStringfindLoginAdmin(){ try{ StringloginAdminHql=ParseDB.getQuery("FIND_LOGINADMIN",Admin.class,loginAdmin.getAdminName(),loginAdmin.getPassword()); List<Admin>adminList=this.adminService.find(loginAdminHql); if(0<adminList.size()){ this.session.put("loginAdmin",adminList.get(0)); return"success"; }else{ this.request.setAttribute("failure","登录用户不存在,请重新输入!"); return"failure"; } }catch(Exceptione){ e.printStackTrace(); return"er

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论