基于ASP个人博客系统的开发和设计文档格式.docx
- 文档编号:7566277
- 上传时间:2023-05-08
- 格式:DOCX
- 页数:22
- 大小:61.11KB
基于ASP个人博客系统的开发和设计文档格式.docx
《基于ASP个人博客系统的开发和设计文档格式.docx》由会员分享,可在线阅读,更多相关《基于ASP个人博客系统的开发和设计文档格式.docx(22页珍藏版)》请在冰点文库上搜索。
三是以个人为中心的传播出版。
blog作为个人的一种学习工具,简单易用,吸引人的兴趣。
Blog在教育方面得到了很大的发展,它将互联网从过去的通讯功能,资料功能、交流功能等进一步强化,使其更加个性化、开放化、实时化、全球化,把信息共享发展到资源共享、思想共享、生命历程共享。
Blog已经成为一种继课件、积件、资源库、教育主题网站等信息化教学模式之后,新的网络应用模式。
它是应时代的需求而兴起的,也是应时代需求不断进步的。
课题研究的意义
随着Blog人数的增加,Blog作为一种新的生活方式、新的工作方式和新的学习方式已经被越来越多的人所接受,并且在改变传统的网络和社会结构。
它使交流和沟通更有明确的选择和方向性;
单一的思想和群体的智慧结合变得更加有效;
个人出版变成人人都可以实现的梦想。
Blog正在影响和改变着我们的生活。
Blog是以网络作为载体,简易迅速便捷地发布自己的心得,及时有效轻松地与他人进行交流,再集丰富多彩的个性化展示于一体的综合性平台。
展示丰富的个性化,对Blog功能的要求自然更高,新一代具有更多、更新、更全功能的Blog急需走进舞台。
系统加入聊天功能可以更加方便大家的交流。
第二章Blog系统开发技术
介绍
本系统采用开发技术进行开发。
不仅仅是ASP的一个新版本,更是Web应用程序编程方面的一个全新的概念和方法。
中的新功能并不是对ASP的改进,设计它的初衷是为用户入境提供最佳的应用程序架构。
它相比于ASP有着以下几个方面的优点:
(1)多语言
ASP曾在脚本引擎方面受到了限制,特别是VBScript和Jscript。
而则支持多种语言,默认情况下为Visual、C#和,另外还支持一些第三方语言。
(2)服务器处理
ASP在服务器处理上不管页面的内容是纯HTML还是ASP生成的HTML,它都是按照实现,形成所谓3-tier页面顺序显示的。
因此逻辑代码依赖于它在页面中的位置,并且无法将HTML控件作为目标,除非将它们作为流的一部分进行显示。
而就解决了这个问题,方法是为控件引入一个声明的基于服务器的模型,因为控件在服务器上有,可以在服务器上编程,也可以是客户端驱动的事件。
(3)WebForm控件
将现有的HTML控件转换为服务器端的控件是比较容易的,但是也存在一些不方便,例如比较难于区分HTML控件和服务器端的控件。
于是Microsoft公司就创建了一组专门的服务器控件,它们都用asp:
前缀标识。
(4)代码与内容分离
一个网站的设计与开发往往由不同的人来实现的,而ASP中就是存在着这样一个问题,代码(ASP脚本)和内容(HTML)混合在一起。
这样就使得同时进行设计和开发变得很困难。
而则采用了代码内联和后台编码两种方法实现了代码与内容的分离。
MVC开发模式
MVC由TrygveReenskaug提出,首先被应用在SmallTalk-80环境中,是许多交互和画面系统的构成基础。
MVC结构是为那些需要为同样的数据提供多个视图的应用程序而设计的,它很好地实现了数据层与表示层的分离。
MVC作为一种开发模型,通常用于分布式应用系统的设计和分析,以及用于确定系统各部分间的组织关系。
对于画面设计可变性的需求,MVC(Model-View-Controller)把交互系统的组成分解成模型、视图、控制器3种部件。
(1)视图部件把表示模型数据及逻辑关系和状态的信息以特定形式展示给用户。
它从模型获得显示信息,对于相同的信息可以有多个不同的显示形式或视图。
(2)控制器部件是处理用户与软件的交互操作的,其职责是控制提供模型中任何变化的传播,确保用户画面与模型间的对应联系;
它接受用户的输入,将输入反馈给模型,进而实现对模型的计算控制,是使模型和视图协调工作的部件。
(3)模型部件保存由视图显示、由控制器控制的数据;
它封装了问题的核心数据、逻辑和功能的计算关系,它独立于具体的画面表达和I/O操作。
模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。
如果用户通过某个视图的控制器改变了模型的数据,所有其他依赖于这些数据的视图都应反映了这些变化。
因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。
这实际上是一种模型的变化——传播机制。
(4)模式下如何实现MVC
提供了一个很好的实现这种经典设计模式的类似环境。
开发者通过在ASPX页面中开发用户接口来实现视图;
控制器的功能在逻辑功能代码(.cs)中实现;
模型通常对应应用系统的业务部分。
在中实现这种设计而提供的一个多层系统,对较经典的ASP结构实现的系统来说有明显的优点。
将用户显示(视图)从动作(控制器)中分离出来,提高了代码的重用性。
将数据(模型)从对其操作的动作(控制器)分离出来,可以让用户设计一个与后台存储数据无关的系统。
就MVC结构的本质而言,它是一种解决耦合系统问题的方法。
Ajax介绍
2.3.1什么是Ajax
Ajax是AsynchronousJavaScriptandXML的缩写,即异步JavaScript和XML。
Ajax是一种客户端技术,Ajax技术借助异步JavaScript实现浏览器和服务器之间的异步交互,即相当于在Web应用中实现了原来C/S(Client/Server)结构下的交互结果,且这种效果的实现并没有带来繁琐的客户部署工作。
比如:
无需重新加载整个页面就可以想服务器发送请求,并接受响应。
同时对XML文档解析和处理。
Ajax的解决方案及其优越性
Ajax相当于在浏览器客户端与服务器之间架设了一个桥梁、一个媒介,在它的帮助下,可以消除网络交互过程中的处理—等待—处理—等缺陷。
在处理过程中Web服务器响应是标准的且易于解析的XML格式的数据传递给Ajax,然后再转换成HTML页面的格式,辅助CSS进行显示。
Ajax是使用XMLHttpRequest对象发送请求并获得服务器端的响应,同时Ajax可以在不重新载入整个页面的情况下用JavaScipt操作DOM以实现最终更新页面。
因此在读取数据的过程中,用户棉对的不是白屏,而是原来的内容。
这种更新是瞬间的,使用户感觉是连贯的。
借助Ajax,可以把以前一些原本由服务器负担的工作转移到客户端来完成,利用客户端闲置的能力来进行处理,这样也可以有效地减轻服务器和带宽的负担,使服务器更稳定,更良好的运行。
同时节约了空间和宽带。
2.3.2Ajax相关技术介绍
Ajax是多种技术的综合应用,包括JavaScipt脚本、CSS、DOM和重要对象XMLHttpRequest。
(1)JavaScipt是一种可以与HTML标记混合使用的脚本语言,编写的程序可以直接在浏览器中解释执行。
因此使用脚本语言编写程序可以在浏览器支持下跨平台运行。
JavaScipt脚本中可以调用浏览器及Ajax中提供的相关对象。
利用这些对象的属性方法可以实现页面效果的动态控制。
(2)CSS是层叠样式表。
CSS规则由模式匹配段和操作部分组成。
模式匹配段用于表示元素与行为之间的关联性;
操作部分用于确定对指定部分的操作。
CSS层叠样式可以弥补HTML超文本标记语言在格式修饰中的不足,同时也为能够实现页面格式的批量动态更新。
(3)DOM的全称是文档对象模型(DocumentObjectModel),它在本质上是一种文档平台。
在使用Ajax技术中,借助DOM,可以结合脚本语言实现动态的数据存储以及动态上传文件。
(4)XMLHttpRequest是Ajax技术中最重要的一个对象。
页面可以在不刷新的情况下通过它发送请求来获取服务器响应。
也可以使用该对象在不刷新当前页面的情况下更新页面中的数据。
2.3.3Ajax技术在系统中的应用
Ajax技术运用于该系统的在线即时聊天功能模块。
通过该技术实现了聊天信息的不断更新,但并没有将整个页面都刷新,也不会带来页面在连续闪烁等问题。
利用Ajax技术将聊天窗口不段更新数据,聊天窗口采用CSS样式,实现页面格式的批量动态更新。
数据库
本系统才用SQLSERVER2000做为后台数据库,采用技术对数据进行操作。
2.4.1SQLSERVER2000
SQLSERVER2000是可以在WEB上运行的数据库服务产品。
它既可适用于桌面系统的单用户数据库,也可适用于企业的网络数据库,甚至适用于专业的WEB站点数据库,具有很强的可伸缩性。
并且具有很高的可靠性、可用性和可管理性。
从经济和开发效率上适合中小型网站。
它和同属于微软公司开发,在开发接口有一致性,能更好的协调工作。
同时,SQLSERVER2000对数据的安全性也有一定的保障,它对用户的访问进行了两个阶段的检查:
一是认证阶段,二是许可确认阶段。
数据库使用来处理数据。
2.4.2A
是基于.NET框架结构、面向分布式和以XML数据格式为核心的数据访问技术,它提供了一组数据访问服务的类,可用于对MicrosoftSQLServer、Oracle等数据源及通过OLEDB和XML公开的数据远源的一致访问。
统一了数据容器类编程接口,无论编写何种应用程序(Windows窗体、Web窗体、Web服务)都可以通过同一组类来处理数据。
为使用方便,还提供了一组丰富的控件,利用可视化方式来开发数据库应用。
体系结构如下图所示
体系结构图
体系结构的两大核心控件是.NETFramework数据提供程序和Dataset。
.NETFramework数据提供程序用于连接到数据库、执行命令和检索结果。
Dataset是一个功能丰富、比较复杂的数据集,它是支持的断开式、分布式数据方案的核心对象。
Dataset专门用来处理从数据源获得的数据,无论数据来自什么数据源,它都使用相同的方式操作数据。
配置
的配置文件都是XML格式的文件,XML格式文件易于书写和定制,采用这种方法进行配置方便灵活。
另外,的配置都是可以随时更改的,即应用程序运行期间,可以随时增加和删除配置文件中的项目,修改后可以立刻激活使用比当配置发生变化时需要服务重新启动配置才生效的方法有很大的优势。
该系统运用了文件进行配置web服务器,使用文件配置web服务器简明扼要。
文件是采用XML格式进行编写的XML文件。
XML
XML是ExtensibleMarkupLanguage(可扩展标记语言)。
它是一种存储数据的方法。
它提供一种独立于应用程序的格式来保存数据,且容易实现不同应用程序之间的数据共享。
与数据库相比,它不需要任何专用软件就可以创建和管理XML文档,只要一个文本编辑器就可以了;
而数据库需要专门的数据库管理系统对数据进行管理。
第三章BLOG系统分析
系统设计方案
本系统是面向个人用户和小型集体用户开发的系统,完成用户在Blog上进行预定操作,实现用户和来宾之间的双向沟通。
具体设计方案为:
(1)系统服务器为IIS,数据库为SQLSERVER2000,整个系统界面采用MicrosoftvisualStudio2005开发。
(2)系统采用MVC框架,用C#语言实现。
(3)服务器与数据库的连接使用OLEDB编程接口的OleDbConnection对象进行连接。
(4)系统分成两部分,前台为普通用户操作界面,功能包括:
阅读文章,发表留言,发表评论,在线聊天。
后台为管理员操作界面,管理员通过登录进入管理界面,功能包括:
分类管理,文章管理,添加文章,评论管理,链接管理,留言管理。
系统功能模块
系统功能模块包括两大块:
管理界面功能模块和普通用户界面功能模块。
其具体功能如下所示:
1.管理员功能:
分类管理,文章管理,评论管理,链接管理,留言管理。
2.普通用户功能:
阅读文章,留言,评论和在线聊天。
3.分类管理:
文章类型的添加,修改,删除。
4.文章管理:
文章的修改,删除。
5.评论管理:
评论的删除。
6.链接管理:
链接的添加和删除。
7.留言管理:
留言的删除和回复。
管理员用户功能模块图如下:
图1管理员功能模块图
普通用户功能模块图如下:
图2普通用户功能模块图
数据库需求分析
■用户分为普通用户和管理员用户
■管理员涉及类型管理、文章管理、添加文章、评论管理、链接管理、留言管理。
■普通用户可以阅读文章、发表回应、留言、评论和在线聊天。
■一种文章类型有多篇文章。
■一篇文章有多篇评论、回复。
对上面系统功能分析,设计如下数据项:
■管理员信息:
用户名、密码。
■类型信息:
类型编号、类型名称。
■链接:
链接编号、链接名称、链接地址。
■留言:
留言编号、留言人呢称、留言标题、个人主页、留言内容、留言时间、留言回复。
■文章信息:
文章序号、文章作者、文章标题、摘要、文章内容、文章发表日期、文章人气、回复、文章类型编号、文章类型名称、文章回复数。
■评论:
评论序号、评论用户呢称、评论标题、评论内容、评论时间、评论的文章序号。
系统操作流程
分析传统Blog系统这一环节所应具有的功能,可以得到Blog系统应具有以下功能:
高级系统用户(管理员)通过浏览器,可以实现文章的管理(对文章的各种信息进行浏览、增加、删除、修改等)、普通系统用户对文章信息只能阅读和留言。
而该系统添加了在线即时聊天,是为该系统的一个亮点。
由此得到的系统的流程图如图3-3所示
系统操作流程图
组件和样式分析
博客系统中存在很多相同或相似的元素,这些元素可能是页面的标题,可能是页面的版权声明,也可能是文章的列表或是登录信息框。
需要寻找一种方式在整个系统中共享,而不需在变化时修改所有的页面。
所以就采用了样式文件进行管理以及用户自定义组件。
用户控件
为开发人员提供了用户控件这一新技术来实现Web元素的共享,开发人员可以通过Visual进行Web元素的外面的开发,同时可以通过Web元素后台代码的方式进行表现层的开发。
设计用户控件提高了代码的可重复使用的性能。
在本系统中,使用了ST_Header、ST_Footer等用户控件。
第四章BLOG系统设计
后台功能模块详细设计
通过此功能用户可以对主页中的许多功能和数据进行操作控制。
4.1.1身份验证
管理员通过此登陆入口进入管理界面,此入口需要填写正确的ID才能够登陆,非法ID不能够登陆,其界面如图所示:
图管理员登录界面
一个系统能正常使用,安全性是非常重要的一个部分。
安全性是对用户的生份进行验证并通过验证的用户按照为其授予的访问权限来确定用户是否可以访问某资源的一个过程。
为了保证系统的安全,为了保证应用程序的安全,本系统采用了身份验证技术。
该代码表示系统禁止对ST_login目录下的ST_admin进行匿名访问.如果存在匿名用户,系统将自动验证用户名,提示错误信息。
保证了系统的安全.关键代码如下:
实现此功能的关键代码为:
protectedvoidButton1_Click(objectsender,e)
{
();
OleDbDataReaderST_read=();
if())
Session["
UserName"
]=ST_read[0].ToString();
("
"
);
}
else
<
script>
alert('
用户名和密码不对'
)<
/script>
4.1.2后台文章添加管理
管理员可以在此页面操作管理功能,这些功能可以对主页进行添加、删除、修改等操作:
图管理员操作界面
publicvoidST_Save_Add()
stringST_n_title=HtmlEncode["
n_title"
]);
stringST_n_author=HtmlEncode["
n_author"
stringST_n_key=HtmlEncode["
n_key"
stringST_n_content=["
n_content"
].Replace("
'
"
intST_cmd;
if["
n_iscmd"
]!
=null)
ST_cmd=1;
ST_cmd=0;
if(ST_n_title=="
||ST_n_key=="
||ST_n_content=="
)
divalign=center>
li>
标题,摘要,内容不能为空!
/li>
ahref=javascript:
()>
点此返回<
/a>
}
stringST_sql="
insertintoST_news(ST_n_author,ST_n_title,ST_n_key,ST_n_content,ST_c_id,ST_n_iscmd)values('
+ST_n_author+"
'
+ST_n_title+"
+ST_n_key+"
+ST_n_content+"
"
+["
listtype"
]+"
+ST_cmd+"
)"
;
OleDbCommandST_myCmd=newOleDbCommand(ST_sql,ST_myConn);
4.1.3后台文章类别管理
图类别管理界面
protectedvoidPage_Load(objectsender,e)
{
stringST_dns=["
conn"
];
ST_myConn=newOleDbConnection(ST_dns);
ST_Type_List_Bind();
}
privatevoidST_Type_List_Bind()
OleDbDataAdapterST_classCmd=newOleDbDataAdapter("
selectST_c_id,ST_c_namefromST_class"
ST_myConn);
DataSetST_classds=newDataSet();
(ST_classds,"
类别列表"
=newDataView[0]);
();
前台功能模块详细设计
4.2.1前台主界面
前台主界面图如下:
图前台主界面
该页面是普通用户最主要的页面,普通用户所有功能操作都与该页面有关。
普通用户采用匿名登录,可以访问该页面的所有功能。
4.2.2前台用户回复评论文章模块
前台普通用户回复评论文章界面如下图所示:
该模块的功能是对文章发表回复,同时验证发送内容都不能为空。
其关键代码如下:
protectedvoidreplay_Click(objectsender,e)
if(IsPostBack)
{
{
("
昵称,标题,内容不能为空!
();
}
else
OleDbCommandST_myCmd=newOleDbCommand(ST_sql,ST_myConn);
ST_add_Re();
+["
id"
]+"
.aspx"
}
4.2.3在线聊天登录界面模块
用户可以通过该页面进入聊天室,实现在线即时
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ASP 个人 博客 系统 开发 设计