网络远程实验平台信息导入和智能匹配功能的设计
2015-02-21刘同洋任卓君
刘同洋, 陈 光, 任卓君
(东华大学 信息科学与技术学院,上海 201620)
网络远程实验平台信息导入和智能匹配功能的设计
刘同洋, 陈 光, 任卓君
(东华大学 信息科学与技术学院,上海 201620)
根据网络远程实验教师管理平台的实际需求,利用ASP.NET技术、C#编程语言以及SQL数据库技术,设计了采用B/S模式的网络远程实验信息批量导入管理功能。基于学生信息管理机制,教师利用Web浏览器通过互联网连接到远程实验平台,将输入的学生注册信息进行系统识别,判断输入的信息是否有效并给予相应提示。然后将输入有效的学生信息与系统中已成功注册信息进行匹配,将未匹配的信息进行批量导入,同时以网页的形式显示已录入的学生信息以便于教师查看与核对。此功能不仅实现了对信息输入有效性的识别,而且也实现了学生信息的高效录入和智能匹配,为网络远程实验平台的信息管理提供一定程度的便捷。
网络远程实验; 批量导入; 智能匹配; SQL数据库
0 引 言
随着网络远程控制的不断发展,高校实验室的封闭式管理将逐渐转变为开放式管理。实验室全天候开放实验设备,学生通过网络远程实验的方法,便可访问到实验室的资源,从而进行远程实验[1-3]。
作为网络远程实验的一个案例,根据本学院现代通信网络应用实践这门课程,本课题组研发了基于B/S架构的网络远程实验平台。通过该平台,学生可以不局限于时间、空间,利用个人PC机上的Web浏览器登录到网络远程实验平台,从而进行相关的网络实验。然而在该远程实验管理平台上,学生首次登录远程实验平台时需要注册,由于学生数量较大,导致增加了教师的工作量。如何更加高效和智能地将首次登录的学生注册信息录入到系统中成为亟待解决的问题。本文针对这一实际需求,设计与实现了网络远程实验平台信息批量导入功能。通过学生信息的批量及智能化录入,既减轻实验室管理人员的工作负担,使得网络远程实验的管理更加高效、便捷,同时又避免未选修该门课程的用户占用实验室资源,从而减轻了实验室的压力。最终完善了由远程实验平台对学生信息、实验信息以及设备信息的统一管理[4-5]。
1 网络远程实验平台的系统组成
1.1 平台的硬件组成
实验室硬件拓扑结构如图1所示。学生通过连接互联网访问网络实验室的SSL/VPN[6-9]防火墙,通过权限认证后即可进入实验室内部网络。网络设备的访问都是以B/S模式呈现给学生的,学生只要点击相应网络设备的链接即可登入该设备进行实验。
图1 平台的硬件组成
1.2 平台的软件组成
本平台采用了ASP.NET技术方案(Windows XP+IIS6.0+Sql2005+VS2008/C#)。.NET技术可以使各种应用程序通过Internet进行通讯和共享数据,而不受操作系统、设备或编程语言的限制[10]。ASP.NET中采用B/S(Browser/Server浏览器/服务器)结构的应用体系、C#编程语言、Sql Server数据库管理系统以及ASP.NET服务器技术[11]。
2 信息批量导入及智能匹配功能的设计
2.1 实现思路
信息批量导入功能是在教师管理机制的基础上进行设计的。其基本思路是,学生在首次登录到网络远程实验平台进行实验时,注册信息要先经过教师认证,即教师首先通过Web浏览器进行SSL/VPN认证,然后登录到教师管理平台,由于学生学号唯一,因此在页面中以一定学号范围输入未被认证的学生注册信息,点击批量添加,触发Button_Click事件,从而自动连接后台数据库并将输入信息传送到后台数据库表中,实现批量导入到远程服务器内。已被认证的用户信息会通过ASP.NET中GridView控件来动态显示在教师管理web页面上[12]。在录入学生注册信息时,系统自动进行智能匹配,若没按照正规的填写方式进行填写,则会提示请输入完整的学生信息。系统要根据其身份信息对其进行身份认证,认证成功后,便可登录实验平台进行远程实验。
2.2 设计流程
图2为信息批量导入功能程序设计流程图。
2.3 功能实现
2.3.1 构建后台数据库
数据库是一个信息系统应用程序的重要组成部分。在计算机中,它是一个数据存储的集合,是一个组织数据的规范。存在它里面的数据都是按照一定的结构来组织的。在日常工作中,常常需要把某些相关的数据存储在数据库中,然后对它们进行管理:数据的添加、删除、修改和查询[13]。本文采用操作简单、界面友好、与Windows平台很好地融合的SQL Serve数据库管理系统,为了实现网络远程实验平台信息批量导入功能,对学生学号、所在专业、所在院校等数据搭建了数据库,便于对数据的查询和管理。本文采用的数据库管理系统为SQL Server 2005,数据库命名为db_management,学生的注册信息存放在db_student表中。其中db_student表如表1所示。数据列stu_ID为学生学号,设置为主键,学号唯一。数据列stu_Major为学生所在专业、数据列stu_College学生所在院校。
表1 数据表db_student
2.3.2 存储学生基本信息
数据库db_management中的db_student表中存放学生的基本信息,数据库中的用户信息的更新由web应用程序中的控件来触发。本文中分别自定义的db类中的GreatDs()方法和Dosql()方法用来实现数据库的查询与更新,其中在db类中先定义一个数据路连接字符串connstring,字符串需要服务器、数据库及安全性声明等,创建SqlConnection数据库连接对象,根据connstring字符串打开数据库连接,在GreatDs()方法中创建SqlDataAdapter、DataSet对象实现对数据库中数据的查询[14-15]。然后声明一个公共、静态、不需要返回值的方法DoSql(string sql),方法实现数据库写操作。然后定义一个SqlCommand对象实例,调用该对象的ExecuteNonQuery()方法执行SQL操作字符串,实现把学生基本信息写入,最后存入数据库,主要实现代码如下:
public class db //定义数据库类
{
public static string connstring = "server=localhost;user id =sa;password=lrbt;database=db_liutongyang"; //连接字符串
public static void DoSql(string sql) //操作数据库方法声明
{
SqlConnection conn = new SqlConnection(); //创建SqlConnection对象
conn.ConnectionString = connstring; //执行连接
conn.Open(); //打开连接
SqlCommand cmd = new SqlCommand(sql, conn); //执行命令
cmd.ExecuteNonQuery(); //执行数据库更新操作
conn.Close();
}
public static DataSet GreatDs(string sql) //数据库显示方法声明
{
SqlConnection myconn = new SqlConnection(connstring.ToString());
myconn.Open();
SqlDataAdapter mydr = new SqlDataAdapter(sql, myconn); //创建适配器对象
DataSet myds = new DataSet(); //创建数据集对象
mydr.Fill(myds); //进行填充
return myds;
}
}
2.3.3 已认证学生信息的显示机制
教师登录到网络远程实验平台中的教师管理页面时,页面会显示出已经过认证的学生注册信息,包括:学生学号、学生专业以及学生院校。当有新的用户添加成功后,会更新当前的显示信息。通过GridView控件来实现此功能,主要实现代码:
protected void Page_Load(object sender, EventArgs e)
{
string sql = "select * from db_student"; //SQL查询字符串
DataTable dt = new DataTable(); //创建数据集对象
dt = db.GreatDs(sql).Tables[0];
if (dt.Rows.Count > 0) //判断是否存在已认证的学生注册信息
{
this.GridView1.Visible = true; //指定GridView控件可见
this.GridView1.DataSource = dt; //绑定数据
GridView1.DataBind(); //指定数据源
}
}
2.3.4 批量导入学生注册信息
当教师查询到学生的注册信息未被认证时,则需要将学生信息录入到系统中,一般学生的特点是以学号为主,因此通过学生学号作为唯一的标识,将学生的学号以一定的范围进行批量导入。
(1)教师若在TextBox控件中输入学生学号为空或信息不完整时,系统会自动提示请输入完整的数据信息,主要代码如下:
if (TextBox1.Text == "" & TextBox2.Text == "")
{
Response.Write("");
}
(2)教师在TextBox控件中输入的学生学生信息已被成功认证并存储在系统中,则系统提示该学生学号已存在,请更换输入信息,主要代码如下:
string sql = "select * from db_student where stu_ID='" + TextBox1.Text + "'";
DataTable dt = new DataTable();
dt = db.GreatDs(sql).Tables[0];
if (dt.Rows.Count > 0)
{
Response.Write("");
}
(3) 若以上条件都满足的(1)、(2)情况下,点击Button控件后,触发Button_Click事件,即连接SQL Server数据库,将前台TextBox控件中输入的数据自动传送到后台数据库,实现学生信息的批量导入,并存储新添加的数据以及更新原先的数据表,最后通过GridView控件显示在页面上。
else
{
for (int i = Convert.ToInt32(TextBox1.Text); i< Convert.ToInt32(TextBox2.Text); i++)
{
string sqls = "insert into db_student(stu_ID,stu_Major,stu_College) values( '"+i.ToString()+"','"+TextBox3.Text.Trim()+"','"+TextBox4.Text.Trim()+"')";
db.DoSql(sqls);
}
this.TextBox1.Text = "";
this.TextBox2.Text = "";
this.TextBox3.Text = "";
this.TextBox4.Text = "";
Response.Write("");
string sql3 = "select stu_ID as '学生学号',stu_Major as '所属专业',stu_College as '所属学院'from db_student";
DataTable dt3 = new DataTable();
dt3 = db.GreatDs(sql3).Tables[0];
this.GridView1.Visible = true;
this.GridView1.DataSource = dt3;
GridView1.DataBind();
}
3 信息批量导入功能的实现
3.1 已认证学生信息的显示功能验证
教师通过浏览器登录到网络远程实验平台的教师管理页面上,可以看到页面上以一定的排序显示已成功认证的学生注册信息,包括学生的学号、专业、院校。表明学生信息已存储在数据库内。
3.2 信息批量导入功能验证
教师登录到网络远程实验的管理页面,可对学生的注册信息进行批量导入,输入学生学号的范围、所属专业以及所属学院,点击批量导入控件即可实现对信息的批量导入。同时,在新的页面提示添加成功。最后将用户信息写入到数据库内,并更新管理页面中的学生信息。
4 结 语
基于ASP.NET技术方案和B/S模式的网络远程实验平台可以为学生提供一个基于互联网的远程实验平台,突破了时间、空间的限制,大大提高了实验的灵活性。在远程实验平台中加入信息批量导入功能,能够有效地将学生信息录入系统数据库内。用户远程使用实验室资源需要进行信息的认证,在成功认证前无法登录到实验页面。而教师在批量导入用户信息时未输入完整信息,Web页面将会给出相应的警告提示,使实验平台更加智能化与人性化。同时,系统还提示教师输入的学生信息是否已存在,以方便实验室管理员实时了解学生信息的录入情况,从而帮助管理员更加高效地管理实验室。另外,也避免了未选修该门课程的部分用户占用实验室资源。此功能在实验室教师管理中,具有较强的应用价值。
[1] 吴军强.远程网络实验系统的研究与实现[J].电脑知识与技术,2012,8(11):2460-2463.
[2] 何怀文,肖 涛,陈子醉.基于Internet的远程网络实验开放平台的设计与教学应用[J].现代计算机,2013,12:68-75.
[3] 陈 莹.远程网络教育的现状及发展前景[J].电脑知识与技术,2011,7(18):4515-4516.
[4] 郭 放,陈 光.现代通信网络应用实践[M].北京:中国水利水电出版社,2009:280-296.
[5] 谢希仁.计算机网络[M].北京:电子工业出版社,1999:236-253.
[6] 狄卫华. SSL VPN方案设计[J].科技资讯,2006(7):2-3.
[7] 肖 涛,程 东,何怀文.SSL VPN在远程网络实验室的应用与实现[J].实验科学与技术,2011,9(1):30-31.
[8] 周 航,任国恒,朱欣颖.SSL VPN技术在数字化校园中的应用[J].智能计算机与应用,2013,3(2):32-33.
[9] 简清明.SSL VPN及其在安全远程访问中的应用[J].四川理工学院学报(自然科学版),2005, 18(1):57-59.
[10] 朱 晔.ASP.NET 第一步[M].北京:清华大学出版社,2007:31-55.
[11] 朱印宏,苏震巍.ASP.NET 3.5+SQL Server网站模块化开发全程实录[M].北京:清华大学出版社,2009:1-4.
[12] 刘丽霞,李俊民.C#范例开发大全[M].北京:清华大学出版社,2010:320-322.
[13] 秦 婧.21天学通C#[M].北京:电子工业出版社,2011:282.
[14] 明日科技,王小科,赵会东. ASP.NET 程序开发范例宝典[M].北京: 人民邮电出版社,2012:315-316.
[15] 明日科技,房大伟. ASP.NET开发经典模块大全[M].北京: 人民邮电出版社,2010:283-284.
Design of Information Batch Import and Smart Match Function Based on Network Remote Experimental Platform
LIUTong-yang,CHENGuang,RENZhuo-jun
(Department of Information Science and Technology, Donghua University, Shanghai 201620, China)
According to the demands of teacher management platform in network remote experiment , this paper uses of ASP.NET technology, C# language and SQL database technology, designs the information batch import function of the network remote experiment using B/S mode. Based on the mechanism of student information management, teachers use Web browser to connect to the remote experimental platform via the Internet. To begin with, the inputted student registration information is identified by the system, and the system determines whether the input is valid and gives the administrator the appropriate prompts. Then, the techers make the inputted valid users' information match with the information which is successfully registered by system. At the end, the unmatched information will do the batch import. At the same time, the techers will display the inputted student information in the form of the web so that teachers could scan and check the information. In this process, the teacher not only could achieve the recognition of the validity of the information input, but also could implement efficient entry of student information and smart match. And it provides convenience for the information management of the network remote experiment.
network remote experiment; batch import; smart match; SQL database
2014-04-21
上海市教育科学2011年度重点项目(A1119)
刘同洋(1988-),男,山东滨州人,硕士生,研究方向:计算机网络通信。
Tel.:13817050421;E-mail:tengfeiyan110@126.com
陈光(1957-),男,广东汕头人,教授,研究方向:无线移动能信,电磁场理论等。
TP315
A
1006-7167(2015)01-0126-04