基于.net的三层构架在网络实训学习平台的应用与探讨

时间:2022-08-18 04:47:49

基于.net的三层构架在网络实训学习平台的应用与探讨

摘要:网络实训学习平台采用三层构架的Web应用系统开发,充分利用了三层构架的层的独立性和数据封装性,为系统开发提供了代码重用性好、系统安全性能优、有效发挥团队开发的良好开发平台。该文结合实例阐述了使用三层构架开发网络实训学习平台的方法。

关键词:网络实训学习平台;三层构架;实例

中图分类号:TP393文献标识码:A文章编号:1009-3044(2011)24-5880-02

With Discuss Based on the .NET Three Construction's Internet Training Platform Designs

MO Xiu-jin

(Guilin Finance and Trade School, Guilin 541001, China)

Abstract: The Internet Training Platform adoptsWeb Application Development of the .NET Three Construction.It takes advantage of the independence and Encapsulation of the .NET Three Construction.The .NET Three Construction provide a good development environment with Code reuse and safe.This article describes the development’s example of using threeConstruction architecture of the network training platfor.

Key words: internet training platform; .NET three construction; example

现代信息技术的迅猛发展,为人们的工作方式、学习方式和生活方式带来了前所未有的冲击。网络凭借其信息存储容量大、表现形式多样化、高度共享性和扩展性以及交流实时性和便利性等独特的优势在教育领域中得到日益广泛的应用,特别是为实训教学提供了可重复性练习、节省资源、学生学习与成绩测试反馈速度快的一种学习教学环境。日益兴起的网络实训学习平台打破传统的实训教学模式,形成以学生的“学”为主的自主学习,教师由原来的知识传授者转变成为学生学习的指导者、学生主动建构意义的帮助者的新型学习模式。

目前,以网络实训学习平台为主要表现形态的教学资源的设计开发蓬勃发展。网络实训学习平台是数据、应用与权限集成的综合系统。本系统采用Web应用系统开发的三层结构设计模型,客户端只需浏览器进行业务处理,用户业务逻辑处理在业务逻辑层实现,对数据的实际操作在数据库访问层完成。的三层结构提供了一种结构合理、易于维护的Web应用系统设计模型,本文就的三层构架在网络实训学习平台的设计与实现进行探讨。

1 网络学习平台系统功能设计

基于网络的实训学习平台的建设,以解决学生新实训学习方法与评价、教师新教学方法的改革与评价、学习资源的获取等问题为出发点。以会计网络实训平台为例,我们主要设计了以下系统功能:1、会计实训平台。作为实训平台的重点,提供学生实训练习题库、标准答案、相关专业知识讲解等功能,学生通过实训平台可以重复练习、自我测验、复习检查是否掌握相关专业知识。2、资源库:提供实训库、包括教学视频和专业知识讲解的教学资源库,为学生的自主学习提供了有效的工具,也为教师提供了良好的资源共享平台。3、信息交流平台:以答疑室、BBS论坛等形式,提供即时的和错时的交互学习途径。4、自动评价系统:在完成实训,参与答疑、讨论,提交作业等操作完成时,设计对应的自动生成性积分评价体系,对学习和教学的效果进行量化评价,以达到展示和激励的效果。

2 三层架构简介

随着软件工程的不断进步和规范以及面向对象编程思想的应用,人们对封装、复用、扩展、移置等方面的要求,使得传统的B/S双层架构显然更加臃肿繁琐。于是,作为三层构架,即是在客户/服务之间加入了一个"中间层",也叫组件层,它将复杂的商业逻辑从传统的双层结构(Client-Server)应用模型中分离出来,通过提供可伸缩、易于访问、易于管理的方法,可以将多种应用服务分别封装部署于应用服务器,同时增强了应用程序可用性、安全性、封装复用性、可扩展性和可移置性,从而实现了便捷、高效、安全、稳定的企业级系统应用。

在中,通常所指的三层即指表示层、业务逻辑层和数据访问层。Web表示层为用户提供应用系统的界面及功能,业务逻辑层将通过系统提供的方法提供所有与数据库的操作,包括从数据库返回数据集,向数据库更新数据,对数据的验证等。数据访问层提供对数据的存储和查询等实际的数据库操作。一般对数据库操作的代码都写在这里。一般的三层构架表示如图1所示。

在三层架构体系中,系统通过浏览器提供的用户交互平台,把按照业务逻辑层要求的接口参数封装规则封装用户数据,并提交到业务逻辑层。业务逻辑层通过对数据进行解析并分别送入不同的逻辑处理然后向用户返回处理结果。同时,业务逻辑层根据不同的处理流程分析数据和命令产生出对应的一个实体,这个实体根据其本身的属性和方法以及上层传入的命令,将数据处理为数据访问层需要的接口参数,并向数据访问层提交访问数据库的请求,并向业务接口层返回访问结果(实体层);数据访问层会将数据转化为数据库可识别的语句(SQL),并访问数据库层,访问结果会返回给实体层(数据访问层);数据库处理上层传入的SQL,读写数据库内置对象,并根据其内置对象本身的关系对数据做进一步校验和处理。通过以上处理,三层构架实现了用户请求到数据操作的整个流程。

3 三层构架在会计实训学习平台的设计与实现

根据会计实训学习平台的需求,我们将系统分为实训平台模块、系统资源模块、论坛模块、管理模块。我们以实训模块的部分来说明三层构架的Web应用在系统中的实现。实训模块中又包含用户管理模块、角色权限模块、实训题目模块、标准答案模块。通过对系统功能的分析,我们采用 的三层构架来实现系统功能。

3.1 表示层

Train.aspx和Train.aspx.cs是学生进行实训练习的界面文件,都属于表示层部分。是使用 Web Form结合用户控件编写的。每个.aspx的代码都封装在一个单独的文件中,Train.aspx.cs调用BLL得到用户信息后,通过代码绑定到Train.aspx的数据控件上。将封装好的方法添加到当前应用程序中,并在Code-behind中将其实例化。在页面中不出现执行数据库操作的代码,很好地实现了表示层与数据的分隔。

3.2 业务逻辑层

业务逻辑层通过根据系统功能定义对应的类,比如对实训功能模块中的用户管理中,定义了UserBLL.cs(用户类)、RollBLL.cs(角色类)、ExerciseBLL.cs(实训类)、AnswerBLL.cs(答案类),在用户类中,我们定义了一些方法:

public IList GetUsers():返回所有的用户信息列表

public UserInfo GetUser(int UserId):返回指定用户的详细信息

public bool AddUser(UserInfo User):新增用户信息

public bool ChangeUser(UserInfo User):更新用户信息

public void RemoveUser(int UserId):移除用户信息

public void RemoveUser(int UserId):移除用户信息

如果用户表示层页面要调用UserBLL. GetUsers()方法,只需引入该BLL层就可直接调用该方法。通过代码的封装,类、方法的引入有效地提高了系统的可扩展性、可移植性。

3.3 数据访问层

在对数据库的访问中,通常的方法是在不同的数据访问中重复地编写OleDbConnection、OleDbDataAdapter等类和方法。我们在框架设计时编写了DBoperation类。把创建连接字符串,打开、关闭、释放连接,执行存储过程等的数据库操作代码编写在DBoperation类中。DBoperation类通过一组静态的重载方法来封装数据访问功能,开发时,每一个业务逻辑对数据库的访问可以通过调用DBoperation类中的静态方法实现对数据库的访问。

4 结束语

由于三层构架具有层与层之间的独立性强、数据封装性好等特点,有利于系统开发中的代码重用,同时也增强了系统的安全性。在本实训学习平台系统开发中采用三层构架体系,它更适合于团队开发,有利于项目分工,并且开发人员可以只专注于所负责的层。随着三层架构的不断完善及应用,基于三层架构的系统开发会得到更好的发展。

参考文献:

[1] 吴乃鑫.基于.Net技术的三层架构教工培训管理系统的研究与实现[J].电脑知识与技术,2011(15).

[2] 王孝明,胡健,陆坤,周伟.基于.NET平台可复用软件框架的设计与实现[J].计算机工程,2004(22).

[3] 闫飞,王鹏.基于.NET研究生教育信息管理系统的设计与实现[J].长春理工大学学报(自然科学版),2010(1).

[4] 张亮,赵娜.基于.NET的网络考试系统设计与实现[J].现代电子技术,2010(8).

[5] 张跃廷,顾彦玲从入门到精通[M].北京:清华大学出版社,2008.

[6] 陈娴,刘志宝,李岱项目开发实践[M].北京:中国铁道出版社,2005.

注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文

上一篇:讲解“C语言”课程几点心得 下一篇:基于Nutch的垂直搜索技术研究