论文部分内容阅读
[摘 要]劳动就业培训数据管理系统基于B/S架构,采用ASP网络编程技术和SQL-Server数据库等网站开发技术,确定了系统总体架构、主要功能和业务流程,阐述了系统安全访问控制、导入导出数据、二代身份证阅读器信息采集、自动统计数据信息等关键技术。
[关键词]就业培训;管理系统;B/S
中图分类号:TP311 文献标识码:A 文章编号:1009-914X(2016)02-0139-02
[Abstract]The solution of labor and employment information management system based on B/S architecture, by integrating such website development technologies as ASP and SQL—Server database. The overall system architecture, main functions and business processes are determined, the pivotal technology of security access control, data import/export, the second generation ID card reader information collection and automatic statistics of information are elucidated. A set of secure,stable and scalable network application system is constructed.It implements the labor employment of informatization and network.
[Key words]Employment training Management system B/S
引言
本文将ASP.NET技术应用到就业培训信息管理系统中,根据系统的需求分析和设计,完成了系统框架搭建、各功能模块划分及实现、数据库的创建和系统分层实现等,并将报名培训人数进行分析和统计,报名现场可实现对报名学员信息的收集和管理。
1 系统设计
1.1系统总体功能
B/S(browser/server)结构是目前比较流行的项目开发方式,它具有优越的可管理性和可维护性、先进的开发技术以及简单方便等优点,同时,它还具有业务扩展简单方便的特点,通过增加网页即可增加服务器功能,保证了信息的时效性、准确性和完整性[1]。
本系统采用 B/S 模式的三层架构方式来开发,即表示层、功能层和数据层。表示层是用户和整个系统的接口,用于显示数据以及将数据提交到功能层,为用户提供一种交互式的界面;功能层专门负责业务逻辑实现,它对表示层发送来的数据进行操作,将其发送给数据层,或调用数据层中的函数读取数据;数据层负责数据信息的存储、访问及其优化,用于实现与数据库的交互,即完成添加、删除、查询和修改数据的功能[2]。
该系统具有以下功能:数据备份、身份证采集、信息录入、打印、批量删除、权限管理、信息统计、数据库备份、检索姓名以及信息的批量导入和导出。
1.2系统开发工具和技术
在Windows7操作系统下,采用Microsoft Visual Studio 2010作为开发平台,应用XHTML和JavaScript语言编写浏览器端代码,以ASP.NET(C#)语言编写服务器端代码,IIS作为HTTP服务器,处理静态HTML页面访问,通过ISAPI服务器扩展调用服务器端程序,并将运算结果以静态HTML的形式返回客户端浏览器。服务器端程序运行在Microsoft.Net Framework4.0类库之上,通过SQL server身份验证访问Microsoft SQL Server2008数据库服务器。
1.3数据库设计
根据系统功能需求分析及劳动就业培训中心提供的学员数据的实际情况,建立了名为JiuYeManage的数据库[3],本系统数据库一共设计有16个表,例如:用户信息表、学员信息表、实业培训班表、特种作业培训班表、角色表等。
2 系统的安全性
本文的安全验证采用了多层次验证的思想,具体包括:
(1)用Windows Server中的IIS的身份认证。
(2)对数据库进行加密,通过SQL server身份验证访问数据库服务器。
(3)用户和密码验证。
用报名信息管理系统中的用户登陆来验证身份。用HTML请求的数据与数据库中User_List表的用户名、密码进行验证,若用户存在,读取用户权限,进入主界面。
(4)session和cookie联合验证。
系统利用session来判断用户是否在线,因为这是保存在服务器的数据,不会受到客户端影响。系统在运行过程中为防止系统资源不足,asp.net自动回收进程,这会导致session失效。在这种情况下,系统联合使用session和cookie来判断用户状态[4]。如果session里找不到用户信息时,再去找cookie,同时把用户信息再次写入session,当离开页面时,cookie会自动销毁。
部分验证程序如下:
if (Session["Role"] == null)
{
string xx = Request.Cookies["Role"].Value;
Session["Role"] = xx; string b = Request.Cookies["Power"].Value;
Session["Power"] = b;
string c = Request.Cookies["UserName"].Value;
Session["UserName"] = c;
}
(5)权限验证。
系统的用户分为四类:第一类是操作员,一般是报名大厅的信息录入员,该类用户可以根据报名流程对学员信息进行录入、对信息进行修改和删除;第二类是数据处理员,一般是各个科室的工作人员,该类用户只能修改学员信息,不能删除和录入;第三类是收银员,只能管理收费、退费;第四类是系统管理员,该类用户除具备普通管理员权限外,还可以对系统进行管理和维护,包括发布与管理公告、数据库备份、修改用户的密码及权限等。
由于劳动培训中心不同的部门管理不同的培训班级,因此,操作员和数据处理员拥有管理不同班级的权利。本系统一共存在五个报名班级。系统管理员可以在用户管理页面对系统的权限和权力进行选择和更改。
3 关键技术
3.1二代身份证信息采集
本系统通过身份证阅读器与计算机的USB口相连,进行个人信息的采集。身份证阅读器以无线传输方式与居民身份证卡内的专用芯片进行安全认证后,将身份证IC卡芯片内的个人信息资料读出。读取身份证的信息还需引用身份证阅读器中的动态链接库,并对其编写接口程序,从而实现个人信息在系统中的读取与存储。以下是用javascript编写的身份证信息采集程序片段:
function ReadCard_onclick()
{
var str;
str = SynCardOcx1.FindReader();
if (str<=0)
{
alert('没有找到读卡器!')
}
var a;
var nRet;
SynCardOcx1.SetReadType(0);
nRet = SynCardOcx1.ReadCardMsg();
if(nRet==0)
{ var text1= SynCardOcx1.Sex;
if(text1=="1")
{
a="男";
}
else
{
a="女";
}
var text2= SynCardOcx1.Nation;
var a2=test(text2);
//读取身份证信息到页面
document.getElementById("t1").value=SynCardOcx1.NameA;
document.getElementById("t2").value=a;
document.getElementById("t3").value=a2;
document.getElementById("t5").value=SynCardOcx1.Address; document.getElementById("t6").value=SynCardOcx1.CardNo;
}
}
3.2报名时间段统计
进入报名时间段统计界面,在“分类:”处的下拉框可选择报名班级,“时间类型:”处的下拉框可选择按培训时间或报名时间搜索,“时间:”处可选择查询的时间段进行查询。若输入时间格式错误,系统将弹出对话框提示。点击统计汇总按钮,页面显示查询结果,系统会按照报名专业、报名等级进行人数统计,实现优惠、退费、应收、实收费用的统计功能,同时,将优惠、退费人的基本资料显示出来。
以下为统计等级为初级的培训专业人数部分代码:
for (int i = 0; i < dt.Rows.Count; i++)//循环查找;
{
string a = dt.Rows[i]["Zhuanye"].ToString();
//在JianDing_ZY表中查找出专业;
System.Web.UI.WebControls.Label lb0
= new System.Web.UI.WebControls.Label();
lb0.ID = "Label0" + i.ToString();
lb0.Text = a;
string sql3 = "select count(*) from JianDing_Class where 申报级别=’初级’and培训专业='" + a + "'";
//在JianDing_Class表中查找出专业所对应的初级培训人数;
sql3 += sql;
SqlCommand cmd3 = new SqlCommand(sql3, cn);
SqlDataAdapter da3 = new SqlDataAdapter(cmd3);
cn.Open();
int aa3 = Convert.ToInt32(cmd3.ExecuteScalar());
cn.Close();
string b3 = Convert.ToString(aa3);
System.Web.UI.WebControls.Label lb3
//动态增加lable控件;
lb3.ID = "Label3" + i.ToString();
lb3.Text = "初级:"+ b3 + "人";//显示人数;
……
}
3.3系统操作日志
本系统采用Log4net 控件来记录系统日志,它能够灵活多变地处理log文件,可以将log信息输出不同的样式和输出到不同的地方,如控制台、文本文件、XML文件,也可以根据天数或者文件大小产生新的文件。
引用动态链接库log4net.dll到项目中,在web.config中对其进行配置, Log4net 控件的功能语句如下:log.Error()记录错误日志;log.Fatal()记录严重错误;log.Info()记录一般信息;log.Debug()记录调试信息;log.Warn()记录警告信息。
3.4数据的导入导出
(1)导出班级信息表:主要功能为了导出系统里学员的班级信息到excel中,便于用户对学员的信息进行格式的修改和打印。
(2)导入班级信息表:将excel表中的班级信息导入系统中,实现学员信息的批量导入,提高效率。本系统采用COM组件来操作excel文件,提供了完整的excel操控能力,可以方便的进行复杂操作,导出标准格式的excel文件,确保在将其导入数据库时不会出现错误。
4 结束语
基于B/S模式的实用报名信息管理系统具有较强的适应性、有效性及灵活性,已成功应用于某市就业培训管理部门,取得了良好效果。
参考文献
[1] 李静, 王军政, 沈伟. 基于B/S和流媒体技术的远程监控系统研究[J]. 北京理工大学学报, 2008, 28(2) :682-686
[2] 王进.B/S模式下的三层架构模式[J].软件导刊,2011, 10(3) :30-31
[3] 蒋秀英.SQL Server2000数据库与应用[M].北京:北方交通大学出版社,2006:220-301.
[4] 程琪,张白桦.ASP.NET动态网站开发项目化教程[M].北京:清华大学出版社,2010.
[关键词]就业培训;管理系统;B/S
中图分类号:TP311 文献标识码:A 文章编号:1009-914X(2016)02-0139-02
[Abstract]The solution of labor and employment information management system based on B/S architecture, by integrating such website development technologies as ASP and SQL—Server database. The overall system architecture, main functions and business processes are determined, the pivotal technology of security access control, data import/export, the second generation ID card reader information collection and automatic statistics of information are elucidated. A set of secure,stable and scalable network application system is constructed.It implements the labor employment of informatization and network.
[Key words]Employment training Management system B/S
引言
本文将ASP.NET技术应用到就业培训信息管理系统中,根据系统的需求分析和设计,完成了系统框架搭建、各功能模块划分及实现、数据库的创建和系统分层实现等,并将报名培训人数进行分析和统计,报名现场可实现对报名学员信息的收集和管理。
1 系统设计
1.1系统总体功能
B/S(browser/server)结构是目前比较流行的项目开发方式,它具有优越的可管理性和可维护性、先进的开发技术以及简单方便等优点,同时,它还具有业务扩展简单方便的特点,通过增加网页即可增加服务器功能,保证了信息的时效性、准确性和完整性[1]。
本系统采用 B/S 模式的三层架构方式来开发,即表示层、功能层和数据层。表示层是用户和整个系统的接口,用于显示数据以及将数据提交到功能层,为用户提供一种交互式的界面;功能层专门负责业务逻辑实现,它对表示层发送来的数据进行操作,将其发送给数据层,或调用数据层中的函数读取数据;数据层负责数据信息的存储、访问及其优化,用于实现与数据库的交互,即完成添加、删除、查询和修改数据的功能[2]。
该系统具有以下功能:数据备份、身份证采集、信息录入、打印、批量删除、权限管理、信息统计、数据库备份、检索姓名以及信息的批量导入和导出。
1.2系统开发工具和技术
在Windows7操作系统下,采用Microsoft Visual Studio 2010作为开发平台,应用XHTML和JavaScript语言编写浏览器端代码,以ASP.NET(C#)语言编写服务器端代码,IIS作为HTTP服务器,处理静态HTML页面访问,通过ISAPI服务器扩展调用服务器端程序,并将运算结果以静态HTML的形式返回客户端浏览器。服务器端程序运行在Microsoft.Net Framework4.0类库之上,通过SQL server身份验证访问Microsoft SQL Server2008数据库服务器。
1.3数据库设计
根据系统功能需求分析及劳动就业培训中心提供的学员数据的实际情况,建立了名为JiuYeManage的数据库[3],本系统数据库一共设计有16个表,例如:用户信息表、学员信息表、实业培训班表、特种作业培训班表、角色表等。
2 系统的安全性
本文的安全验证采用了多层次验证的思想,具体包括:
(1)用Windows Server中的IIS的身份认证。
(2)对数据库进行加密,通过SQL server身份验证访问数据库服务器。
(3)用户和密码验证。
用报名信息管理系统中的用户登陆来验证身份。用HTML请求的数据与数据库中User_List表的用户名、密码进行验证,若用户存在,读取用户权限,进入主界面。
(4)session和cookie联合验证。
系统利用session来判断用户是否在线,因为这是保存在服务器的数据,不会受到客户端影响。系统在运行过程中为防止系统资源不足,asp.net自动回收进程,这会导致session失效。在这种情况下,系统联合使用session和cookie来判断用户状态[4]。如果session里找不到用户信息时,再去找cookie,同时把用户信息再次写入session,当离开页面时,cookie会自动销毁。
部分验证程序如下:
if (Session["Role"] == null)
{
string xx = Request.Cookies["Role"].Value;
Session["Role"] = xx; string b = Request.Cookies["Power"].Value;
Session["Power"] = b;
string c = Request.Cookies["UserName"].Value;
Session["UserName"] = c;
}
(5)权限验证。
系统的用户分为四类:第一类是操作员,一般是报名大厅的信息录入员,该类用户可以根据报名流程对学员信息进行录入、对信息进行修改和删除;第二类是数据处理员,一般是各个科室的工作人员,该类用户只能修改学员信息,不能删除和录入;第三类是收银员,只能管理收费、退费;第四类是系统管理员,该类用户除具备普通管理员权限外,还可以对系统进行管理和维护,包括发布与管理公告、数据库备份、修改用户的密码及权限等。
由于劳动培训中心不同的部门管理不同的培训班级,因此,操作员和数据处理员拥有管理不同班级的权利。本系统一共存在五个报名班级。系统管理员可以在用户管理页面对系统的权限和权力进行选择和更改。
3 关键技术
3.1二代身份证信息采集
本系统通过身份证阅读器与计算机的USB口相连,进行个人信息的采集。身份证阅读器以无线传输方式与居民身份证卡内的专用芯片进行安全认证后,将身份证IC卡芯片内的个人信息资料读出。读取身份证的信息还需引用身份证阅读器中的动态链接库,并对其编写接口程序,从而实现个人信息在系统中的读取与存储。以下是用javascript编写的身份证信息采集程序片段:
function ReadCard_onclick()
{
var str;
str = SynCardOcx1.FindReader();
if (str<=0)
{
alert('没有找到读卡器!')
}
var a;
var nRet;
SynCardOcx1.SetReadType(0);
nRet = SynCardOcx1.ReadCardMsg();
if(nRet==0)
{ var text1= SynCardOcx1.Sex;
if(text1=="1")
{
a="男";
}
else
{
a="女";
}
var text2= SynCardOcx1.Nation;
var a2=test(text2);
//读取身份证信息到页面
document.getElementById("t1").value=SynCardOcx1.NameA;
document.getElementById("t2").value=a;
document.getElementById("t3").value=a2;
document.getElementById("t5").value=SynCardOcx1.Address; document.getElementById("t6").value=SynCardOcx1.CardNo;
}
}
3.2报名时间段统计
进入报名时间段统计界面,在“分类:”处的下拉框可选择报名班级,“时间类型:”处的下拉框可选择按培训时间或报名时间搜索,“时间:”处可选择查询的时间段进行查询。若输入时间格式错误,系统将弹出对话框提示。点击统计汇总按钮,页面显示查询结果,系统会按照报名专业、报名等级进行人数统计,实现优惠、退费、应收、实收费用的统计功能,同时,将优惠、退费人的基本资料显示出来。
以下为统计等级为初级的培训专业人数部分代码:
for (int i = 0; i < dt.Rows.Count; i++)//循环查找;
{
string a = dt.Rows[i]["Zhuanye"].ToString();
//在JianDing_ZY表中查找出专业;
System.Web.UI.WebControls.Label lb0
= new System.Web.UI.WebControls.Label();
lb0.ID = "Label0" + i.ToString();
lb0.Text = a;
string sql3 = "select count(*) from JianDing_Class where 申报级别=’初级’and培训专业='" + a + "'";
//在JianDing_Class表中查找出专业所对应的初级培训人数;
sql3 += sql;
SqlCommand cmd3 = new SqlCommand(sql3, cn);
SqlDataAdapter da3 = new SqlDataAdapter(cmd3);
cn.Open();
int aa3 = Convert.ToInt32(cmd3.ExecuteScalar());
cn.Close();
string b3 = Convert.ToString(aa3);
System.Web.UI.WebControls.Label lb3
//动态增加lable控件;
lb3.ID = "Label3" + i.ToString();
lb3.Text = "初级:"+ b3 + "人";//显示人数;
……
}
3.3系统操作日志
本系统采用Log4net 控件来记录系统日志,它能够灵活多变地处理log文件,可以将log信息输出不同的样式和输出到不同的地方,如控制台、文本文件、XML文件,也可以根据天数或者文件大小产生新的文件。
引用动态链接库log4net.dll到项目中,在web.config中对其进行配置, Log4net 控件的功能语句如下:log.Error()记录错误日志;log.Fatal()记录严重错误;log.Info()记录一般信息;log.Debug()记录调试信息;log.Warn()记录警告信息。
3.4数据的导入导出
(1)导出班级信息表:主要功能为了导出系统里学员的班级信息到excel中,便于用户对学员的信息进行格式的修改和打印。
(2)导入班级信息表:将excel表中的班级信息导入系统中,实现学员信息的批量导入,提高效率。本系统采用COM组件来操作excel文件,提供了完整的excel操控能力,可以方便的进行复杂操作,导出标准格式的excel文件,确保在将其导入数据库时不会出现错误。
4 结束语
基于B/S模式的实用报名信息管理系统具有较强的适应性、有效性及灵活性,已成功应用于某市就业培训管理部门,取得了良好效果。
参考文献
[1] 李静, 王军政, 沈伟. 基于B/S和流媒体技术的远程监控系统研究[J]. 北京理工大学学报, 2008, 28(2) :682-686
[2] 王进.B/S模式下的三层架构模式[J].软件导刊,2011, 10(3) :30-31
[3] 蒋秀英.SQL Server2000数据库与应用[M].北京:北方交通大学出版社,2006:220-301.
[4] 程琪,张白桦.ASP.NET动态网站开发项目化教程[M].北京:清华大学出版社,2010.