范振钧,于金华
(通化师范学院 计算机学院,吉林 通化 134002)
《古代汉语》课是高等师范院校汉语言文学专业的基础课之一,是专业必修课,是教育部规定的高等教育汉语言文学专业核心骨干课程之一,在培养方案中处于非常重要的地位,也是一门专业必修课、工具课,同时也是对外汉语专业必修课之一.教学内容介绍涉及词汇、文字、语法、虚词、音韵、诗律等方面.每一章节涵盖了教学目的、教学重点、教学难点、教学方法与教学手段,内容精炼,对整个古代汉语课的学习起到了提纲挈领的引导作用.为配合古汉语课程教学及课程建设需要,创建了古汉语网络教学平台,对提高教学质量,普及古汉语知识可起到推动作用.
(1)课程介绍. 该栏目主要对古汉语文学涉及到的课程的教学内容进行概要介绍.课程介绍涉及先秦两汉文学、魏晋南北朝至隋唐五代文学、宋元文学、明清近代文学、魏晋南北朝文学批判与文学发展的关系、中国古代文学史简介等课程.每一门课程涵盖了课程特点、学习目标、教学目标、教学要点、教学方法.内容精炼,对整个古汉语文化学习起到提纲挈领的引导作用.
(2)教学大纲. 该栏目对古汉语文学涉及到的课程的教学大纲、教学内容进行详细的介绍.对每一门课程的教学目的、教学要求、课程内容进行了详细的介绍.尤其在课程内容中,结合教学进度,对每一节课相应的授课内容进行了细致的介绍,方便读者自学或学生复习.
(3)教学队伍. 该栏目对通化师院从事古汉语文学教学工作的教师进行了全面的介绍,内容包括职称、学历、论文、著作、研究方向、讲述的具体课程、个人的e-mail、qq等信息,方便学生与教师之间的互动.
(4)资源下载. 为方便学生和自学者的需要,特设此栏目.该栏目内容涵盖了古汉语教研室历年来累积的古汉语课程的所有资料,内容包括教师的讲义、课件、历年毕业生的学习心得体会、收藏的各种专家讲课的视频、音频信息,历年的考试试卷及其答案.方便于学生自学、复习、考试,此栏目受到各届同学的好评.
(5)作业发布.教师通过账号登录后,可以对本人授课的课程随时发布作业及作业答案.
(6)古汉语论坛.教师和学生都可以在论坛上发布对古汉语课程的意见,促进了师生之间的交流.
系统采用B/S 模式开发.B/S模式的主要特点是客户端接受用户的请求,向应用服务器提出请求;应用服务从数据库中获得数据,对数据进行处理并将结果提交给客户端,客户端浏览器将结果呈现给用户[1].B/S模式充分体现了胖服务器、瘦客户的思想,客户端电脑可以进行低配,可以节省设备资金,另外从应用服务到客户端只传递服务器端处理完毕的数据,传输量较少,解决了网络带宽受限的问题,基于上述两点在各级各类的教学平台的设计都采用B/S模式.
系统分为在线论坛、资源下载、作业发布三大部分.其中在线论坛包括用户管理、帖子管理、主题管理四个主要模块.用户管理包括用户注册、身份验证、修改资料和取回密码功能; 帖子管理包括添加、修改、删除和浏览目录功能; 主题管理包括添加、修改和浏览主题功能.资源下载部分主要实现用户对网上资源的下载功能,作业发布部分主要实现教师在网上发布作业功能.
系统通过给管理员和普通用户设置不同权限,保障系统安全.管理员用户可以进行用户管理、主题管理、帖子管理、发布作业等一系列功能,普通学生用户可以进行浏览帖子、浏览主题、发布帖子、下载作业、回复帖子等操作.
使用flash、dreamwaver作为前台页面开发工具,visual 2008作为后台开发工具,sql Server2008作为数据库管理工具.
基于.net技术的应用程序通过Ado.net组件对数据库进行操作.Ado.net为创建具有分布式数据共享功能的应用程序提供了一组丰富的组件,使其可以对各种关系型数据、XML和应用程序中的数据进行访问,是.net Framework中不可缺少的一部分[2].Ado.net的结构图如图1所示:
图1 Ado.net结构图
从图1中我们可以看出Ado.net提供了以下两个组件来访问和处理数据:
(1)数据提供程序:是专门为数据处理以及快速地只进、只读访问数据而设计的组件[3].
包括Connection对象、Command对象、DataReader对象.
(2)DataSet组件:专门为独立于任何数据源的数据访问而设计.因此,它可以用于多种不同的数据源,用于 XML 数据,或用于管理应用程序本地的数据.通过DataadApter作为适配器,实现数据库访问.
应用程序通过Ado.net连接到数据源, 对数据实行各种操作.Ado.net通过3.1所述的两个不同的组件,以两种方式进行数据库访问.
(1)保持连接的方式.使用数据提供程序组件,通过Connection 对象创建到数据库的连接[4];通过Command对象对数据源执行SQL指令并返回数据; 通过DataReader 对象读取和处理数据源的数据.在Ado.net中对数据库进行操作时,需要先请求连接,以便进行客户端相关信息的验证.
(2)无状态方式.利用数据适配器SqlDataAdapter的Fill方法将数据表填充到客户端的Dataset数据集中,填充后与Sql服务器的连接就断开了,然后可以在客户端对Dataset中的数据表进行浏览、插入、修改、删除等操作.
在Ado.net提供的数据库操作基础上,将数据库的相关操作封装在一个或多个类中[5],有利于代码重用,提高编程效率.数据库访问类由DataBase.cs类来实现,该类封装了两种不同的数据库连接方式的所有实现代码.该类的类图如图2所示:
图2 数据访问类图
在类图中主要包括一个私有字段和9个方法,字段和方法的基本功能如下所示.
(1)作类的主要方法和字段.
ConnStr:私有字段,存放数据库连接字符串.
CreateCmd():3次重载,3种参数情况下,生成Command对象.
CreateDA():返回DataAdapte对象.
DataBase():1次重载,类的构造函数,用于生成数据操作对象.
Dispose():数据操作对象的析构函数.
ExistDate():检验是否存在数据.
ReturnValue():1次重载,返回SQL语句执行结果的第1行第1列数据.
ReturnConn();返回数据库连接对象connection.
RunProc():6次重载,运行不同语境下的SQL语句.
RunProcGetReader():运行SQL语句返回DataReader.
类中的方法:CreateCmd,ExistDate,ReturnValue,ReturnConn、ReturnConn主要用来实现连接方式的数据库访问.
类中的方法: CreateDA,RunProc用来实现无连接方式的数据库访问.
类中的方法:DataBase、Dispose()是类的构造函数和析构函数.
(2)数据访问类的使用方法.
在系统的具体实现中可以由实现业务逻辑的类,调用数据操作的类,实现数据库操作.比如帖子管理的功能就由业务逻辑类posts生成的实例,调用数据操作类dataBase生成的实例,实现帖子的添加、删除、修改等功能.
(3)各个方法的实现代码.
限于篇幅,该数据访问类的具体实现代码略.
由业务逻辑类User类来实现用户管理的各种业务,User类中调用数据访问类的实例,进行数据库的各种操作,来完成各种业务逻辑的实现.包括用户登录功能、添加、删除、修改用户、查找用户等一系列和用户操作相关的功能.
(1)用户登录功能的实现.
protected void Page Load( Object sender , EventArgs e)
{ if ( ! IsPostBack )
User user = new User();//生成业务逻辑类User
int UserId = user.Login(UserName.Text,UserPWD.Text);//返回用户编号
if (UserId == 0)
{
lblMessage.Text = "用户名或密码错误!";
}
else
{
Response.Redirect("ArticleShow.aspx?From=1");
}
}
(2)业务逻辑类User中的login方法.
public int Login(string name,string pwd)
{
DataBase aa=new DataBase();//创建数据访问类对象
Int Result=aa.ReturnValue(select * from Usertablewhere name='"+name+"'
+password='"+pwd+"');//调用通用数据访问类中的ReturnValue方法,返回查询的数据
Return Result;
}
本例中,业务逻辑类user中的login方法中生成通用数据访问类的实例对象aa,实例对象调用ReturnValue方法进行数据库访问,实现登录功能,返回用户的id号.如果id为0则说明用户名或密码错误,否则说明用户验证成功,转到浏览主题页面.
上述例子可见,对数据库访问类进行操作,使以往.net应用程序中复杂的数据库连接及操作变得轻松自在,便于修改、调试,提高了编程效率,避免了代码的冗余.
网络平台论坛模块的运行,方便了教师与学生的交流,作业的定期发布、资源下载模块,方便了学生学习,提高了教学效率.为了更好的发挥网络教学平台的作用,今后还需进一步对网络教学平台进行改进,比如增加教师电子备课系统、学生在线考试系统等功能.
参考文献:
[1]张星云. 基于NET的C语言精品课程网站的设计与实现[J].软件导刊,2010(10).
[2]刘瑞新. c#网络编程及应用[M]. 北京:机械工业出版社.2007.
[3]唐伟.基于ASP.NET 的网上论坛系统的设计与实现[J].电脑知识与技术,2006(11).
[4]吴莲贵,基于ASP.NET 的Web 网站设计的应用与研究[J].计算机教育,2007(10).
[5]杨洪伟.基于Asp.net 的论坛管理系统的设计与实现[J]. 农业网络信息,2008(5).