姚嘉鑫 王加梁
(四川旅游学院,四川 成都 610100)
开发网络招聘管理系统,利用计算机网络、数据库技术实现对招聘过程的管理,考生远程报名,减少来回奔波次数,使高校人事部门工作人员再也不用面对堆积如山的报名材料,从而实现了信息的规范管理、科学统计和快速查询,减少管理方面的工作量,使人才招聘工作流程规范化、系统化,提高办学效益和管理水平。
本系统从成都某专科学校招聘工作的实际需求出发,经过深入、系统的调研和需求分析,运用了目前较为流行和广泛使用的Windows Server 2003 +IIS6.0 为开发平台,使用ASP 和ACCESS开发实现一个实用的招聘管理系统,系统采用B/S 体系结构。
Active Server Pags(动态服务器主页,简称ASP)是Microsoft 开发的动态网页技术,主要应用于Windows 2000/2003 +IIS 平台。ASP 是经过服务器解析之后再向浏览器返回数据,不必担心客户的浏览器是否能运行代码。所有的程序都将在服务器端执行,包括嵌在普通HTML 中的脚本程序,当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。
浏览器/服务器(Browser/Servere,B/S)体系结构,是随着Internet 技术的兴起,对C/S 结构的一种变化或者改进的结构。由浏览器、Web 服务器、数据库服务器3 层结构所组成。在B/S 体系结构中,无需在每台计算机上安装专门的软件,只需要安装一个通用的浏览器即可,不再受具体操作系统和硬件的制约,实现了跨平台的应用。用户通过浏览器以超文本的方式向Web 服务器提出访问数据库的请求,Web 服务器接受客户请求后,激活对应CGI 程序将超文本HTML 语言转化为SQL 语法,将这个请求提交给数据库,数据库服务器得到请求后,进行数据处理,然后将处理结果集返回给CGI 程序。CGI 再将结果转化为HTML,并由Web 服务器转发给请求方的浏览器。[1]11在这种结构中,所有的业务逻辑都在Web服务器和数据库服务器上实现;如果业务逻辑变化了,只需对应用服务器进行修改和维护,客户端无需维护和升级,如图1 所示。
图1 B/S 结构工作原理
系统分为前台和后台两大部分,前台主要提供给考生使用,后台提供给管理员使用,如图2 所示。具体模块功能如下。
注册登录模块:主要完成考生账号注册,并登录。
报名模块:主要完成考生信息填报,提交后不能再修改。审核通过后可打印报名表,若未通过会有相关原因说明。可查看自己报考的状态:初审、笔试、面试、体检是否通过。
职位管理模块:主要完成职位信息发布、删除。
系统管理模块:主要完成添加、删除管理员,修改管理员密码;数据备份。
考生管理模块:主要完成查看、统计、检索、审核考生报名信息,若未通过审核给出相关原因说明。进行笔试、面试、体检、录取管理,并将最终录取人员的基本信息同步到人才管理系统。
图2 系统功能模块
根据近几年招聘报名的人数及学校的实际情况,确定每年的数据量维持在两千个记录以内,选用ACCESS 数据库已足够。ACCESS 数据库存储方式简单,易于维护管理,易操作,集成环境、能处理多种数据信息,支持ODBC。
本系统设计的数据库中包括以下4个表:
(1)管理员表(id,管理员用户名,密码)
(2)考生信息表(id,注册用户名,身份证号码,密码,电子邮箱,电话,注册时间,IP 地址,是否通过审核,是否提交资料,未通过审核原因,是否通过面试,是否通过笔试,是否通过体检)
(3)职位表(id,职位编号,职位名称,职位描述)
(4)考生报名表(id,姓名,性别,身份证号码,出生日期,民族,政治面貌,现地址,申报职位,职位编码,最高学历,最高学位,毕业院校,所学专业,毕业时间,专业方向,下一级学历/学位,下一级学位,下一级学历/学位所学专业,下一级学历毕业院校,现工作单位,参加工作时间,职称及所评专业,职务,健康状况,婚姻状况,家庭通讯地址,联系电话,邮箱地址,申请加分原因,个人简历,所受奖惩情况,获过何种专业证书,有何专长,考生诚信承诺,填写时间,照片名)
根据前期的功能和需求分析,项目组编写了应用程序,由于具体代码较多,本文只给出数据库连接、安全性等系统开发难点与设计技巧的相关代码。
数据库连接是ASP 程序的基础,本系统利用的是ADO的Connetion 对象来进行数据库的连接。ADO 是Active X Data Object(ActiveX 数据对象)的英文缩写,是ASP的核心技术之一,集中体现了ASP 技术丰富而灵活的数据库访问功能。[2]
具体代码如下:
通过include 命令,在服务器执行ASP 代码之前,把另一个文件插入到HTML 页中。可以在多个页面上创建需要重复使用的函数、页眉、页脚或者其他元素等。对于一个Web 程序而言,一般每个页面的顶部或尾部基本上都是相同的,那么可以将这些相同的部分放一个文件中,在需要时调用。[3]5
在对数据库进行操作的页面中,需要打开数据库,这一操作在所有页面中都是相同的,使用include的方法,可简化代码。如下的代码是index.asp 文件的开头部分。第一行中的include 所包含的就是dataconn.asp 这一文件:
由于本系统涉及到考生的关键个人信息,为了防止信息泄露及数据被他人恶意篡改,本系统采取相应安全措施如下:
在注册登录模块涉及到密码操作都采用md5算法进行加密,数据库中存储的也是经过md5 算法加密后的密文。index.asp 文件的开头用include 所包含md5.asp 算法文件,用于加密计算。如下段代码:
md5 算法不可逆,虽然2004年山东大学王小云教授成功破解md5 算法,能产生碰撞,但是实际破解复杂密码还是基本不可能。我们要求考生使用复杂密码,即:密码是由8~16 位,由以下4类字符中的至少3 种组合而成的密码。
大写字母(A,B,C…X,Y,Z)
小写字母(a,b,c…x,y,z)
数字(0,1,2,3…9)
符号(`~!@ # $%^&* ()_ +-={}|[]:";'<>?,./)
为了防止有人通过猜测文件名访问系统,每一个文件被访问时都会检查是否有相应的用户信息,若没有则要求在登录后使用本系统。
ASP 通过Session 对象实现用户信息的传递。可以在登录时保存用户名、ID 等参数,如下index.asp 文件中的代码:
在其他文件的开始部分会检查是否有相应的用户信息,如下段代码,没有用户信息则不能登录,保障系统不会遭到非授权访问。
通过sql 语句查询出需要显示的字段。admin为审核标志,值为0 即未审核,值为1 即通过审核,值为2 即未通过审核。
现有的很多招聘系统,考生信息在招聘结束后就不会被再利用,对于高校的人才库建设是一个非常大的损失。大量的报名数据实际上是非常宝贵的人才资源信息。而本系统的招聘报名数据会自动进入本课题开发的另一子系统——人才管理子系统,为学校将来的人才招聘、人才资源储备和开发提供支撑。同时被录取的考生作为本校准教工,其基本信息会自动同步进入人才管理子系统教工基本数据表中,将来考生到校报到后即可直接登录人才管理系统,无须再注册及填写基本信息。
[1]何薇,舒后.网络数据库开发技术与应用[M].北京:清华大学出版社,2005.
[2]孙跃飞.利用ASP 技术开发张家口专业气象网[J].农业与技术,2012(2):124.
[3]黄艳芳,王明华.基于ASP 网上人才管理系统的设计与实现[J].福建电脑,2009(6):4-5.