在线招聘系统论文.docx

上传人:b****6 文档编号:4338731 上传时间:2022-11-29 格式:DOCX 页数:39 大小:1.74MB
下载 相关 举报
在线招聘系统论文.docx_第1页
第1页 / 共39页
在线招聘系统论文.docx_第2页
第2页 / 共39页
在线招聘系统论文.docx_第3页
第3页 / 共39页
在线招聘系统论文.docx_第4页
第4页 / 共39页
在线招聘系统论文.docx_第5页
第5页 / 共39页
点击查看更多>>
下载资源
资源描述

在线招聘系统论文.docx

《在线招聘系统论文.docx》由会员分享,可在线阅读,更多相关《在线招聘系统论文.docx(39页珍藏版)》请在冰豆网上搜索。

在线招聘系统论文.docx

在线招聘系统论文

摘 要

目前,网上招聘越来越被人们所接受,通过在线招聘系统应聘者和招聘方可以在网上通过Internet,突破时间和空间的限制而实现求职者和招聘方对人才的招聘。

在线招聘系统为现在的大学毕业生、再就业的人解决这一问题的提供了重要选择,同时对于招聘企业也十分重要,通过在线招聘系统能让招聘者找到合适、满意的工作,让招聘方挑选到合适、优秀的人才。

本系统分为四大功能模块,分别是招聘方、招聘者、系统管理员和游客,每个功能模块相互关联,相互影响。

根据该项目的特点,本系统采用了spring框架技术,并讨论了Spring技术的优势和特点。

本系统采用tomcat服务器和mysql数据库,在Eclipse开发工具下设计的,能基本实现用户的招聘和应聘功能。

网站动态提供企业招聘信息,管理员可进行更新维护,应聘者将简历提交后存入简历数据库,并可依据职位、时间、学历等进行检索。

关键字:

框架技术;检索;招聘;应聘

 

Abstract

Currently,recruitmentonlineisincreasinglybeingacceptedbypeople,throughtheonlinerecruitmentsystemandrecruitmentofcandidatessideavailableonlinethroughtheInternet,breakthroughthelimitationsoftimeandspacetoachievejobseekersandrecruitersontherecruitmentoftalent.Onlinerecruitmentsystemforcurrentstudentsgraduate,re-employmentofpeopletosolvethisproblemprovidesanimportantchoiceandalsoimportantfortherecruitmentofbusinesses,throughonlinerecruitmentsystemallowsrecruiterstofindsuitable,satisfyingwork,sothatrecruiterselectionoftheappropriatetalent.Thesystemisdividedintofourmodules,namely,recruiter,recruiters,administratorsandvisitors,eachfunctionalmoduleinterrelatedandmutuallyaffected.Characteristicsofthesystemaccordingtothesystemusingspringframeworkandassistedwithotherframeworktechnology.ThispaperfocusesontheadvantagesandfeaturesofSpringTechnology.Thesystemusesthetomcatserverandmysqldatabase,intheEclipsedevelopmenttoolstodesign,andcanbasicallyrealizethefunctionoftheuser'srecruitmentandcandidates.Dynamicrecruitmentwebsiteprovidingbusinessinformation,administratorscanupdatethemaintenance,theapplicantwillresumeafterthesubmissionofresumesintoadatabaseandcanbebasedonposition,time,education,etc.tosearch.

Keyword:

FrameTechnology;search;recruitment;candidates

 

 

1.前言

1.1.开发本系统的目的

现在我们即将毕业了,大家都想找份满意的工作,显然有很多招聘网站,在网站上面投递过简历,但是对招聘系统网站的内容并不是特别了解,所以在这个基础之上,我选择了“在线招聘系统”作为我的毕业论文设计,让我们更进一步了解招聘流程。

同时将我在实习过程中接触到了一些框架技术,比如Spring框架技术应用到这个系统上来,我想这对自己来说也是一个挑战吧,让我将所学的知识运用到我的实践当中去,这就是我做本课题的意义所在吧。

1.2.系统开发背景

在线招聘系统为人们找工作提供了一个很好的平台,特别是我们这些在校的大学生朋友,同时为了锻炼自己的动手能力,为了解系统招聘的流程,了解系统设计的框架,我查看了很多招聘网站,同时在加上自己的一些想法,我们系统的雏形出现了。

系统总体上包含四大功能模块,它们分别是招聘方、应聘者、系统管理员、还有游客。

为了让这四大模块扮演好系统的角色,我特意从各个方面设计这个在线招聘系统,首先从技术上考虑它,接下来通过调研、交流,了解系统应该具备的功能,最后结合当前比较流行的框架技术实现它。

在老师的支持和帮助下,我将这个在线招聘系统圆满实现了。

1.3.系统设计目标

研究本课题的目的是实现应聘者与招聘者之间简历的双向选择,方便应聘者找到自己比较满意的单位,同时招聘方也能找到优秀的人才。

主要特色是本系统采用了一些框架技术来实现我们课题的功能;利用接口来实现类的多继承;采用hibernate来连接数据库;接口与实现类之间还用了适配器模式使我们系统的设计思路简单、明了。

希望系统能通过B/S模式完成简历的发送、接收、管理等任务,让招聘方与招聘者及时了解当前最新的招聘和应聘信息。

在线招聘系统应实现客户在其网站上进行招聘信息的访问以及提交、发布客户相关信息资料等。

其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。

对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库。

而对于后者则要求应用程序功能完备,易使用等特点。

随着Internet的普及,互联网以一股巨大变革力量的面貌出现在商务关系领域。

其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。

经过分析,我们使用Tomcat创建的一种服务器端、跨平台的HTML嵌入式脚本语言——JSP开发语言,主流Web服务器Apache,性能优越的网络数据库MySQL,利用其提供的各种编程优点,在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。

系统大概在四月初开发完成,接下来准备好系统毕业设计说明书,同时在设计的过程中多与导师联系,并征求导师的意见,碰到问题及时解决。

 

2.系统开发模式、工具及环境

2.1.系统开发模式

2.1.1.B/S模式介绍

B/S(Browser/Server)结构即浏览器和服务器结构。

它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。

在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。

这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。

以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。

它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN,Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。

特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。

2.1.2.B/S架构软件的优势与劣势

(1)维护和升级方式简单。

目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性。

对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。

无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。

所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。

今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。

因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。

(2)成本降低,选择更多。

大家都知道windows在桌面电脑上几乎一统天下,浏览器成为了标准配置,但在服务器操作系统上windows并不是处于绝对的统治地位。

现在的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即可,而且安全性高。

所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用windows作为桌面操作系统电脑不受影响,这就使的最流行免费的Linux操作系统快速发展起来,Linux除了操作系统是免费的以外,连数据库也是免费的,这种选择非常盛行。

比如说很多人每天上“网易”(原文为新浪)网,只要安装了浏览器就可以了,并不需要了解“网易”的服务器用的是什么操作系统,而事实上大部分网站确实没有使用windows操作系统,但用户的电脑本身安装的大部分是windows操作系统。

(3)应用服务器运行数据负荷较重。

由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。

但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。

因此,许多单位都备有数据库存储服务器,以防万一。

2.2.开发工具分析

2.2.1.Sping框架技术介绍

Spring最大的优势在于它是从实际项目开发经验中抽取的,其提供了丰富的类库,可大大节省编码量,它是一种高效的、可高度重用的应用框架。

Spring框架中目前最吸引人也是该应用框架最具特色的地方就是名为控制反转(IOC=InverseOfControl)或者依赖注入(DI=DependenceInjection)的设计思想.

AOP将这些操作与业务逻辑分离,使程序员在编写程序时可以专注于业务逻辑的处理,而利用AOP将贯穿于各个模块间的横切关注点自动耦合进来。

AOP所面对的是处理过程中的某个步骤或阶段,对不同的阶段领域加以隔离,已获得逻辑过程中各部分之间低耦合性的隔离效果,其与面向方面编程在目标上有着本质的差异。

AOP的核心思想就是将应用程序中的业务逻辑处理部分同对其提供支持的通用服务,即所谓的“横切关注点”进行分离,这些“横切关注点”贯穿了程序中的多个纵向模块的需求。

由于Spring内置AOP默认使用动态代理模式实现,我们就先来分析一下动态代理模式的实现方法。

动态代理模式的核心就在于代码中不出现与具体应用层相关联的接口或者类引用,如上所说,这个代理类适用于任何接口的实现。

下面我们来看一个例子。

publicclassTxHandlerimplementsInvocationHandler{

privateObjectoriginalObject;

publicObjectbind(Objectobj){

 this.originalObject=obj;

 returnProxy.newProxyInstance(obj.getClass().getClassLoader(),

obj.getClass().getInterfaces(),this);

}

publicObjectinvoke(Objectproxy,Methodmethod,Object[]args)

throwsThrowable{

 Objectresult=null;

 if(!

method.getName().startsWith("save")){

UserTransactiontx=null;

try{

 tx=(UserTransaction)(newInitialContext().lookup("java/tx"));

 result=method.invoke(originalObject,args);

 mit();

}catch(Exceptionex){

 if(null!

=tx){

try{

 tx.rollback();

}catch(Exceptione){

 }

}

 }

}else{

 result=method.invoke(originalObject,args);

}

returnresult;

}

}

下面我们来分析一下上述代码的关键所在。

首先来看一下这段代码:

returnProxy.newProxyInstance(

 obj.getClass().getClassLoader(),obj.getClass().getInterfaces(),this);

java.lang.reflect.Proxy.newProxyInstance方法根据传入的接口类型(obj.getClass.getInterfaces())动态构造一个代理类实例返回,这也说明了为什么动态代理实现要求其所代理的对象一定要实现一个接口。

这个代理类实例在内存中是动态构造的,它实现了传入的接口列表中所包含的所有接口。

再来分析以下代码:

publicObjectinvoke(Objectproxy,Methodmethod,Object[]args)

throwsThrowable{

 ……

 result=method.invoke(originalObject,args);

 ……

 returnresult;

}

InvocationHandler.invoke方法将在被代理类的方法被调用之前触发。

通过这个方法,我们可以在被代理类方法调用的前后进行一些处理,如代码中所示,InvocationHandler.invoke方法的参数中传递了当前被调用的方法(Method),以及被调用方法的参数。

同时,可以通过method.invoke方法调用被代理类的原始方法实现。

这样就可以在被代理类的方法调用前后写入任何想要进行的操作。

Spring的事务管理机制实现的原理,就是通过这样一个动态代理对所有需要事务管理的Bean进行加载,并根据配置在invoke方法中对当前调用的方法名进行判定,并在method.invoke方法前后为其加上合适的事务管理代码,这样就实现了Spring式的事务管理。

Spring中的AOP实现更为复杂和灵活,不过基本原理是一致的。

核心容器的主要组件是BeanFactory,它是工厂模式的实现。

BeanFactory使用控制反转(IOC)模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。

BeanFactory支持两个对象模型。

∙单态模型提供了具有特定名称的对象的共享实例,可以在查询时对其进行检索。

Singleton是默认的也是最常用的对象模型。

对于无状态服务对象很理想。

∙原型模型确保每次检索都会创建单独的对象。

在每个用户都需要自己的对象时,原型模型最适合。

bean工厂的概念是Spring作为IOC容器的基础。

IOC将处理事情的责任从应用程序代码转移到框架。

正如我将在下一个示例中演示的那样,Spring框架使用JavaBean属性和配置数据来指出必须设置的依赖关系。

BeanFactory接口

因为org.springframework.beans.factory.BeanFactory是一个简单接口,所以可以针对各种底层存储方法实现。

最常用的BeanFactory定义是XmlBeanFactory,它根据XML文件中的定义装入bean,如清单1所示。

清单1.XmlBeanFactory

BeanFactoryfactory=newXMLBeanFactory(newFileInputSteam("mybean.xml"));

在XML文件中定义的Bean是被消极加载的,这意味在需要bean之前,bean本身不会被初始化。

要从BeanFactory检索bean,只需调用getBean()方法,传入将要检索的bean的名称即可,如清单2所示。

清单2.getBean()

MyBeanmybean=(MyBean)factory.getBean("mybean");

每个bean的定义都可以是POJO(用类名和JavaBean初始化属性定义)或FactoryBean。

FactoryBean接口为使用Spring框架构建的应用程序添加了一个间接的级别。

2.2.2.Eclipse开发工具介绍

Eclipse是开放源代码的项目,你可以到www.eclipse.org去免费下载Eclipse的最新版本,一般Eclipse提供几个下载版本:

Release,StableBuild,IntegrationBuild和NightlyBuild,建议下载Release或Stable版本,笔者用的是Build20020125(Stable版本)。

Eclipse本身是用Java语言编写,但下载的压缩包中并不包含Java运行环境,需要用户自己另行安装JRE,并且要在操作系统的环境变量中指明JRE中bin的路径。

安装Eclipse的步骤非常简单:

只需将下载的压缩包按原路径直接解压既可。

需注意如果有了更新的版本,要先删除老的版本重新安装,不能直接解压到原来的路径覆盖老版本。

在解压缩之后可以到相应的安装路径去找Eclipse.exe运行。

2.2.3.Eclipse具有的特性

大多IVJ的初学者都对找不到Java源代码感到非常不适应,因为IVJ把所有的源代码都存储到一个reponsitory库文件中,想要得到文本格式的源代码必须用EXPort功能从reponsitory中导出源代码。

使用了reponsitory的IVJ对源代码的管理功能几乎达到极致,正是这一点使得许多程序员对IVJ钟爱有加。

而Eclipse将源代码以文本方式保存,却实现了IVJ对源代码管理的几乎全部功能,并且还增加了一些新的功能,能达到这一点,不能不惊叹于Eclipse开发者的高超技巧。

和IVJ一样,Eclipse开发环境被称为Workbench,它主要由三个部分组成:

视图(Perspective),编辑窗口(Editor)和观察窗口(View)。

在下面的介绍中,希望读者能知道Java视图,Java包浏览窗口,资源视图,资源浏览窗口等区别(其实最主要的也就是要区别视图和窗口),以免在进一步的阅读中产生混淆。

关系结构图如下:

图2-1关系结构

在IVJ中调试功能非常强大,多种跟踪方式,断点设置,变量值察看窗口等等。

这些在Eclipse中都也有提供。

在本文下面介绍插件的时候,会结合例子更加详细的介绍如何使用配置项目环境,如何运行和调试程序。

在Java视图中,工具栏中有两个按钮,分别用来进行调试和运行。

并且可能由于安装的插件不同Eclipse会存在多种运行/调试程序的方式,为了确定当前项目用那一种方式运行,需要在项目的属性选项中的设置LauncheràRun/Debug选项。

通常我们需要用的是"Java Applicantion"方式。

在这种方式下,如果当前位置是包含main()方法的Java程序,点击调试/运行按钮就会立即开始执行调试/运行功能。

如果当前位置是在包或项目上,Eclipse会搜索出当前位置所包含的所有可执行程序,然后由程序员自己选择运行那一个。

Eclipse提供了强大的个人版本管理机制,每一次被保存的更改都可以得到恢复。

而且可以精确到每一个方法的版本恢复。

操作也十分方便,在任何一个能看到所要操作文件的观察窗口中,例如资源浏览窗口,选中该文件,点击右鼠标键,选择Comparewith或Replacewith,如果是恢复已经被删除的方法则可以选择Addfromlocalhistory,之后相应的本地历史记录就会显示出来,按照你的需求找到相应的版本就可以了。

使用插件可以丰富Eclipse的功能。

2.3.开发环境介绍

2.3.1.该系统所使用的开发环境

MyEclipse+Mysql+tomcat,在开发的过程中还采用了struts+hibernate+spring框架技术,其中Spring技术使用的比较突出,另外两个用的比较少,这里主要介绍Spring框架中的方向控制和面向切面编程,为系统开发节省了不少时间。

2.3.2.开发软件的下载

ØJDK:

到下载,推荐使用J2SDK1.4.X。

ØTomcat6.0:

ØMySQL:

到下载,笔者使用mysql-4.0.13,另须下载MySQLControlCenter(图形化管理工具),到

ØEclipse:

到http:

//www.eclipse.org下载,最新版本为3.0M8,如果是新手推荐下载2.1.2和中文包(2.1.2_Translations)。

2.3.3.环境配置介绍

ØJDK的安装配置在此不再说明。

Ø将tomcat解压到D:

\,将MySQL的JDBC驱程包中的mm.mysql-2.0.14-bin.jar解压到D:

\tomcat\server\default\lib中,再将D:

\tomcat\docs\examples\jca目录下的mysql-service.xml拷贝到D:

\tomcat\server\default\deploy目录下。

Ø安装MySQL和MySQLControlCenter,到mysql\bin目录中启动mysqld-nt.exe,即开启mysql服务。

使用MySQLControlCenter很方便地进

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 家庭教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1