王炜
(肇庆科技职业技术学院,广东肇庆526114)
随着高校连年扩招,每年的毕业生人数也在持续增加,给高校的就业办公室带来了很大的压力,毕业生找工作难已成为各高校所面临的突出问题,为了帮助毕业生与用人单位之间更好的联系,高校就业办公室需要起到良好的桥梁作用,这时必须开发一个合理、方便、高效的毕业生就业管理平台。
笔者采用JSP和SQL Server 2000开发了一个基于B/S架构的毕业生信息管理系统,本系统对传统的工作流程、组织结构进行了必要的调整[1],使毕业生就业管理工作真正适应目前劳动市场的需要,使就业管理工作更加科学、规范,达到了提高管理效能、促进就业的目的。
毕业生信息管理系统是毕业生在Internet上实现就业的有力工具,不仅应实现各院系对毕业生的分布式管理,还应该特别注重用人单位与毕业生的信息交互,因此本系统的功能应该包括毕业生信息的审核和管理、用人单位招聘信息和毕业生求职信息的发布、毕业生与用人单位信息的交互、毕业生及用人单位信息的统计和分析。针对这些功能要求,设计了本系统。
系统功能主要通过毕业生注册、毕业生审核、求职专栏、用人单位管理、统计分析、系统管理、帮助七个模块来实现。毕业生信息管理系统的总体功能结构如图1所示。
(1)毕业生注册模块
毕业生注册模块的主要功能是完成毕业生学号、姓名、专业、出生日期、求职意向等信息的注册和修改,注册的信息必须等待院系相关部门的审核,否则无法使用本系统进行求职。
(2)毕业生审核模块
毕业生审核模块的主要功能是完成毕业生资格的审核,包括毕业生注册的个人信息、各科成绩的审核,院系各部门审核后签写审核意见。经审核并签写意见的毕业生信息不能再修改。
(3)求职专栏模块
求职专栏模块的主要功能是让通过资格审核的毕业生能够浏览用人单位的招聘信息,并发布求职信息。
(4)用人单位管理模块
用人单位管理模块的主要功能是让通过学校就业办公室核实后的用人单位发布招聘信息以及处理毕业生求职信息。
(5)统计分析模块
统计分析模块的主要功能是对本校毕业生的供需比和就业率进行分析统计,以便学校对当前毕业生的就业形势进行分析。
(6)系统管理模块
系统管理模块的主要功能是对毕业生注册和修改权限、用人单位权限、学校相关行政部门权限、系统日志等进行管理。
(7)帮助模块
帮助模块的主要功能是给用户提供系统使用帮助。
系统的功能特点主要包括:
(1)毕业生的信息全部在网上填录,有利于管理部门进行审查和通过,也便于后台查询、汇总和打印。
(2)毕业生、用人单位、学校管理部门的分级管理机制,有效地保证了数据的安全性。
(3)系统提供在线帮助功能,操作简单方便。
先进性:系统应具有一定的先进性,要体现当前的最新技术,使系统易于变更、移植、扩充、兼容;系统设计既要适应目前的主流技术又要考虑到系统维护的方便性,能尽量延长系统的生命周期。
可靠性:在系统分析的时候还要充分考虑整个系统软、硬件的可靠性程度,应具有较强的容灾能力和自恢复能力。
安全性:在系统设计时应充分利用数据库封锁机制、授权管理机制、应用软件设置多级密码及软件分离等措施,提高系统的安全性。
B/S结构是基于Web技术与客户机/服务器结构的结合而提出来的一种多层结构,其中B是指Web浏览器(Browse),S是指应用服务器与数据库服务器(Server)[2]。本系统采用B/S结构,具有以下优点:
(1)B/S结构简化了客户端,客户机上不需要安装专门的应用程序,只需要一个通用的浏览器软件,不仅节省了客户机的硬盘空间和内存,而且使安装过程更加简便,网络结构更加灵活。
(2)B/S结构简化了系统的开发和维护。系统的开发者无需再为不同级别的用户设计开发不同的客户端应用程序,只需要把所有的功能都实现在Web服务器上,就不同的功能为各个组别的用户设置权限,维护也只需要对Web服务器上的服务处理程序进行修改,大大节省了系统开发、维护的成本和时间。
(3)B/S结构使用户的操作更简单,客户端只是一个简单易用的浏览器软件,用户不需要接受任何的系统使用培训就可以直接使用。
系统B/S三层结构如图2所示。
图2 系统B/S三层结构图
(1)客户层(Web浏览器)
客户层是用户与整个系统的接口,主要完成用户和后台的交互及最终查询结果的输出功能。浏览器将HTML代码转化成图文并茂的网页,网页还具备一定的交互功能。允许用户在网页提供的申请表单上输入信息提交给后台,并提出处理请求。
(2)应用层(Web服务器)
Web服务器启动相应的进程来响应客户端的请求,动态生成一串HTML代码,其中嵌入处理的结果返回给客户机的浏览器。当客户机提交的请求涉及数据的存取,Web服务器需要与数据库服务器协同完成这一处理工作。
(3)数据层(数据库服务器)
数据库服务器负责接受Web服务器发出的请求,独立地执行各种操作并管理数据库[3]。
系统的开发,我们以前台交互和后台管理两个部分来考虑。前台主要是系统和用户的交互界面,信息在这里以某种样式呈现,不同的用户对信息具有不同的访问权限。后台是一个信息预处理单元,负责信息分类管理和对应的权限授予,是系统管理员和信息交互的场所,这也是基于Web安全因素的考虑。
系统的开发平台采用微软公司的Windows Server 2003作为服务器端的操作系统;采用SQL Server 2000作为整个应用系统的数据库,采用JDBC(Java DataBase Connectivity,Java数据库连接)连接数据库,提供对数据库的访问;JSP技术能够支持高度复杂的基于Web的应用。
系统的数据库采用SQL Server 2000,在一个JDBC的驱动程序被用来建立数据库连接之前,必须向数据库驱动程序管理器注册该驱动程序。管理器的主要职责是保证所有的驱动程序对象可被JDBC的用户程序访问。当一个JDBC驱动程序被载入时,它将自动地在驱动程序管理器上注册。
可以调用Class.forName()方法载入一个JDBC驱动程序:
Class.forName()是Java的Class类的静态方法,它使Java虚拟机动态地寻找、载入并连接指定的类。
一个JDBC的驱动程序就是一个可以通过classpath找到一个Java类。这里载入的JDBC_ODBC桥驱动程序就在sun.jdbc.odbc包中。载入一个正确的驱动程序后,就可以用它来建立与数据库的连接了。一个JDBC的数据库连接是用数据库URL来标记的。连接标记将告诉驱动程序管理器使用哪个驱动程序和连接哪个数据库。数据库URL的基本形式:
jdbc:<JDBC驱动程序名>:<数据源标记>
例如数据库的数据源标记是firm,则JDBC-ODBC桥连接该数据库所用的数据库URL为jdbc:odbc:firm.
可以通过DriverManager类的静态方法getConnection()来建立一个数据库连接:
一旦建立数据库连接,就可以打开目标数据库,并通过该连接向目标数据库执行SQL指令。SQL指令通常会执行查询、插入、更新和删除等数据库操作。要执行SQL指令,必须通过Connection对象的createStatement()方法来创建一个STMT对象。STMT对象提供了许多方法来执行不同的数据库操作。可以通过以下方式创建STMT对象:
在本系统中,由于对数据的安全性有较高的要求,而且涉及在网络上传输,因此必须对数据进行加密,对用户身份进行验证。我们将用户口令密码设置的字符长度确定在8个以上,由字母、数字、特殊字符组合而成,如“529_@wwei”、“skip543@”等,可以有效地防止破解。在此基础上,我们对系统用户密码进行MD5(Message-Digest Algorithm 5)单向散列函数高强度加密,MD5的作用是对一段信息(message)生成信息摘要(message-digest),该摘要对该信息具有唯一性,可以作为数字签名,输入一个任意长度的字符串,生成一个128位的整数。由于算法的某些不可逆特征,在加密应用上有较好的安全性。经该算法加密明文信息之后,再通过Internet进行传输,直接看数据库无法得知密码[4]。为了进一步提高安全性,我们在用户每次登陆输入的密码后附加一个随机字符串加密,让数据库中的相应口令也附加该随机字符串加密,这样就达到一次性口令的效果,同一用户登陆,每次口令加密传输的结果也是不同的,大大提高了安全性。
针对高校毕业生就业管理工作的需求,作者提出了基于B/S架构的毕业生信息管理系统解决方案。实际应用表明,该系统不仅提高了毕业生就业管理工作的效率,节省了人力、物力资源,而且使毕业生就业管理工作更加规范化和信息化,符合当今高等院校教育管理信息化的发展方向。
[1] 国家信息安全工程技术研究中心.电子政务总体设计与技术实现[M].北京:电子工业出版社,2003.
[2] 曾强聪.《软件工程》[M].北京:高等教育出版社,2004.
[3] 解圣庆,刘永华.《管理信息系统》[M].北京:清华大学出版社,2007.
[4] 陈淳鑫,阎光.MD5算法在B/S结构下口令验证中的应用[J].微型机与应用,2005(2),7-9.