BBS论坛三层架构设计说明
目录
一、概述 (2)
1、三层架构的含义 (2)
2、三层架构的优势 (3)
3、开发平台和支持技术 (3)
二、系统设计框架 (4)
1、架构设计思想 (4)
2、系统设计思路 (4)
三、三层架构的应用实现 (4)
1、创建数据库 (4)
2、创建数据访问层 (5)
3、创建业务逻辑层 (7)
4、创建用户表示层 (9)
四、总结 (11)
一、概述
1、三层架构的含义
三层体系架构是N层体系结构的一种特殊结构,也是最常见的一种结构。
简单地说,N层结构是指把解决方案分解到N个逻辑层中。
在一个比较复杂的项目中,把业务层分解为多个层有许多好处,如结构清晰、代码复用性强、维护方便等。
该文以网上购买服务的Web应用系统的实现为例,说明使用三层结构的技术方法和优势。
选择三层架构是因为它提供了N层体系结构的大多数优势,同时不需要花费很长时间来设计用以支持N层复杂体系结构的代码。
三层架构自下而上分别指的是业务表示层(UI)、逻辑层(DDL)、数据访问层(DAL)。
表示层主要是由窗体和用户控件组成,该层是直接面向用户的,要求设计美观大方、界面方便使用。
表示层中的业务逻辑都存储在业务逻辑层中,当用户操作界面发生请求时,由表示层调用业务逻辑层中相应的方法来具体实现。
业务逻辑层是程序的核心部分,它主要是由各种函数构成,它们集中在该层有利于模块化管理和程序复用,且能够使程序结构清晰、提高可读性。
数据访问层负责接收来自业务层的数据调用请求,该层包含数据库访问链接字符串,负责访问数据库调用存储过程,并将数据操作结果返回给业务逻辑层。
2、三层架构的优势
1)扩展性强、依赖性小。
假设一个没有分层的系统各种逻辑关系紧密连接、相互关联制约、彼此间相互依赖不可替代,那么需要
一旦要求改变,对系统的影响将是极为严重的,甚至是颠覆性的。
三层架构规范了各层的职责,降低了层与层之间的依赖性,大大
提高了系统的可扩展性。
2)复用性强、开发周期缩短。
系统不同功能模块在各层中均有定义好的接口,可供其他功能模块调用,这种设计架构可实现团
队并发试开发,提高了程序的复用性、缩短了开发周期。
将三层架构设计思想运用在Web应用系统设计中能使其在长期使用过程中更加灵活,它的松散耦合体现出了很强的扩展性和复用性,提高了软件开发人员的工作效率,提升了系统的整体性能
3、开发平台和支持技术
该文实例使用Microsoft公司的和SQL Server数据库作为开发平台、语言编写应用程序,他们都是主流开发工具,具有兼容性好、移植性强、执行效率高、复用性好等特点。
实例选取了B/S结构(即浏览器/服务器结构)作为应用模型,这种结构对用户端机器性能要求低、安全性高,迎合了大众主流需求。
二、系统设计框架
1、架构设计思想
1)此系统共有八个页面,分别是index.asp、list.asp、detail.asp、login.asp、left.asp、typemanage.asp、typeinsert.asp、infomanage.asp
2)主要面板有注册、登录、发帖、回帖、删帖、投票、积分
3)数据库名称为:mybbsDB,其包含有九个表,分别是:Users、Big、Small、Info、Reply、Admin、VoteTitle、VoteItem、Fix。
2、系统设计思路
1) 采用MVC三层架构,其主要技术是+SQL Server 2005。
2)采用flash技术,实现登录模块。
3)采用面向对象思想,使界面、业务、数据之间的耦合关系降低。
4)把登录模块嵌入到主页中,方便用户登录。
三、三层架构的应用实现
1、创建数据库
打开SQL Server 2005,创建数据库“mybbsDB”,然后建立九个数据结构表Users、Big、Small、Info、Reply、Admin、VoteTitle、VoteItem、Fix
2、创建数据访问层
在开始创建数据访问层(DAL)之前,首先需要创建一个网站,配置好数据库链接。
第一步:创建一个Web项目,配置数据库连接
打开Visual Studio 2008(以下简称VS2008)集成开发环境, 首先创建一个C#语言的网站,并将其命名为WebSite,设置位置
(Location)列表的选项为文件系统( File System),然后选这一个放置这个网站的文件夹,然后选择编程语言为C#。
Visual Studio会为你生成一个新的网站,同时生成一个名为Default.aspx的网页,和一个
App_Data文件夹。
第二步:创建数据访问层,配置数据库连接
3、创建业务逻辑层
第一步:创建PublicClass类,完成整个系统通用的功能
在App_Code文件夹中创建2个类文件。
在解决方案浏览器(Solution Explorer)中右键点击App_Code文件夹,并选择新建项目(New Item),然后在弹出的对话框中选择“类”模板
(Class template)就可以创建新的类文件了
4、创建用户表示层
用户表示层是针对论坛系统的不同功能页面而言的,具体包括前台操作页面的实现和后台页面的实现
第一步:添加和配置ObjectDataSource控件
(1)新建一个“Web窗体”模板文件(Index.aspx),语言
Visual C#,选择“将代码发在单独文件中”。
(2)拖入一个“GirdView”控件,点击智能标记中的“配置数据源”,选择“新建数据源…”,进入数据源配置向导来添加一个ObjectDataSource。
(3)进入数据源配置向导。
首先给ObjectDataSource指定一个业务对象。
如果勾选上“只显示数据组件”,那么下拉框中就仅仅显示出那些以[DataObject]特征修饰过的对象。
可以不勾选“只显示数据组件”从而看见所有对象。
从下拉列表中选择业务对象
根据页面设计的需要为SELECT,UPDATE,INSERT及DELETE 操作指定相应的业务对象的方法。
这些方法已经在业务逻辑层中定义。
如果用GridView及DetailsView服务器控件呈现数据,SELECT 操作是必须的。
第二步:配置GridView
从GridView的智能标记点选“编辑列”,为“选定的字段”指定标题名,格式,删除不需要的列,添加命令字段(Command Field)等。
四、总结
由于时间和个人精力有限,完成的系统不够完美,经过一个学期的学习和研究,能比较顺利地独立完成这个BBS论坛系统,个人心理上感觉良好,有成就感。
与此同时,在完成这个项目的过程中,我也学到了很多,不管是精神上的,还是专业知识技能上,都有着明显的
进步和提升。
在今后的学习和生活中,我会加倍努力的。