个人博客系统设计实现.docx
- 文档编号:15560358
- 上传时间:2023-07-05
- 格式:DOCX
- 页数:53
- 大小:482.76KB
个人博客系统设计实现.docx
《个人博客系统设计实现.docx》由会员分享,可在线阅读,更多相关《个人博客系统设计实现.docx(53页珍藏版)》请在冰点文库上搜索。
个人博客系统设计实现
个人博客
摘要
随着Internet的广泛应用,动态网页技术也应运而生。
本文介绍了应用ASP动态网页技术开发博客系统的设计与实现。
该系统以ASP.NET为开发技术,使用C#为开发语言,实现Blog的动态管理,使得对Blog信息的管理更加及时、高效,提高了工作效率。
本文对博客系统进行整体分析,明确了系统的可行性和用户需求;根据模块化原理,规划设计了系统功能模块;在数据库设计部分,详细说明了系统数据库的结构和数据库的完整性、安全性措施;程序设计则采用面向对象的程序设计思想,提出系统的程序设计思路,对前台与后台功能的程序实现进行了详细论述;系统测试部分,具体分析测试过程中出现的主要问题,并提出了解决方案,实现系统功能。
关键词Blog;ASP.NET;C#;SQLserver
PersonalBlog
Abstract
WiththeextensiveapplicationoftheInternet,dynamicwebtechnologyhasemerged.ThistextdescribestheapplicationofASPdynamicwebtechnologyanddevelopmenttheblogsystem.
ThissystemtakeASP.NETasthedevelopmenttechnology,usesC#isthedevelopmentlanguage,realizestheBlogwebsitedynamicmanagement,causestobeevenmoreprompttotheBloginformationmanagement,highlyeffective,raisedtheworkingefficiency.Inthistext,itanalysistheblogsystembyfeasibilityandthedemandoftheuser.Underthemodulartheory,planninganddesignofthesystemfunctionalmodules;Inthedatabasedesign,adetaileddescriptionofthedatabasestructureanddatabaseintegrity,securitymeasures;Programmingisusedobject-orientedprogrammingdesign,systemdesignideas,backgroundforthefutureandfunctionoftheprogramindetail;Systemtesting,Analysisofthespecificcourseoftestingthekeyissuesandproposedsolutionstoachievesystemfunction.
KeywordBlog;ASP.NET;C#;SQLserver
第一章绪论
1.1引言
Blog,是Weblog的简称。
Weblog,其实是Web和Log的组合词。
Web,指WorldWideWeb,当然是指互连网了;Log的原义则是“航海日志”,后指任何类型的流水记录。
合在一起来理解,Weblog就是在网络上的一种流水记录形式或者简称“网络日志”。
Blogger或Weblogger,是指习惯于日常记录并使用Weblog工具的人。
虽然在大陆早些时候或者等地,对此概念的译名不尽相同(有的称为“网志”,有的称之为“网录”等等),但目前已基本统一到“博客”一词上来。
该词最早是在2002年8月8日由著名的网络评论家王俊秀和方兴东共同撰文提出来的。
博客也好,网志也罢,仅仅是一种名称而已,它的本义还是逃不过Weblog的围。
只是,通常我们所说的“博客”,既可用作名词Blogger或weblogger——指具有博客行为的一类人;也可以作动词用(相当于英文中的Weblog或blog),指博客采取的具有博客行为反映、是第三方可以用视觉感受到的行为,即博客们所撰写的Blog。
因此,“他/她是一位博客,他/她天天在博客”及“博客博什么客?
”在中文语法与逻辑上都是正确。
只是不同场合的用法不同罢了。
本系统由远行者信息技术开发,更多容请参阅公司官网。
Blog究竟是什么?
说了半天,其实一个Blog就是一个网页,它通常是由简短且经常更新的帖子(Post)所构成,这些贴的文章都按照年份和日期倒序排列。
Blog的容和目的有很大的不同,Blog的容和目的有很大的不同,从对其他的超级和评论,有关公司、个人、构想的新闻到日记、照片、诗歌、散文,甚至科幻小说的发表或贴都有。
许多Blogs记录着blog个人所见、所闻、所想,还有一些Blogs则是一群人基于某个特定主题或共同利益领域的集体创作。
撰写这些Weblog或Blog的人就叫做Blogger或Blogwriter。
博客存在的方式,一般分为三种类型:
一是托管博客,无须自己注册域名、租用空间和编制网页,博客们只要去免费注册申请即可拥有自己的博客空间,是最“多快好省”的方式。
如英文的www.blogger.、及多种语言的博客室(blogates.)等都提供这样的服务;二是自建独立的博客,有自己的域名、空间和页面风格,需要一定的条件。
如方兴东建立的“博客中国”站(.blogchina.);三是附属博客,将自己的博客作为某一个的一部分(如一个栏目、一个频道或者一个地址)。
这三类之间可以演变,甚至可以兼得,一人拥有多种博客。
目前进行开发的语言很多,如ASP、PHP、JSP、ASP.NET等。
究竟应该选择什么语言来开发一个BLOG呢,对于一个中小型的来说,ASP无疑是最好的选择,利用简单的HTML代码与脚本融合而成的ASP技术可以开发强大的Web应用程序。
ASP(ActiveSeverPages)是Microsoft推出的一种服务器端脚本环境,ASP嵌于IIS中,让用户可以轻松的结合HTMLWeb页面、脚本和ActiveX组件建立或执行动态的、交互的Web服务器应用程序。
ASP并不单指某一种编程语言,而是一门把HTML代码与VBScript和JavaScript等脚本语言融合在一起的技术,ASP技术的诞生,应该说是一项成功的技术,它开创了非专业人员开发高水平的历史。
1.2课题研究的意义
博客的精神是:
自由表达,开放宽容,个性扬,专业精神。
在没有自己的博客之前,人们会经常进出于论坛发表贴子或者通过即时通信软件聊天,来表达自已的想法,可是这些都是零散的和杂乱的。
博客的出现,让人们可以不断的把自己以前的和每天激发的一些想法或者感受整理放在自己的博客上,每次在写文章的时候,可能又会产生新的想法。
虽然一些想法一些思考只是皮毛,没有什么深度,但是当下笔去写的时候每次都会对某个小小的问题有了更多的一点点思考,再写博客的时候就感觉到了一种满足感,一种想法得以释放思考得以延伸的满足感。
生活中每天的一个小小的事情都会引起人们的思考,甚至是和朋友的聊天中一个小小的火花迸发。
督促自己努力、把一时的想法变成观点,争取在生命中的每天里留下点什么,这也是人们写博客的目的之一。
这样就能督促自己每一天不要浑浑噩噩,时光流逝无痕无声无息,写博客也是在自己的每一天上留下了一道浅浅的思考和划痕。
如果说博客是一个舞台,那么所有的博客都是其中的舞者,把自己有价值的真实的一面展示在网络世界中,相互交流沟通;如果博客仅仅为了写日志,那么博客是一面镜子,镜子中展现的是真实的自己;如果博客是一个自由媒体,可以把自身感觉有价值的信息通过博客这个工具发布,与网友共享
随着Blog人数的增加,Blog作为一种新的生活方式、新的工作方式和新的学习方式已经被越来越多的人所接受,并且在改变传统的网络和社会结构。
它使交流和沟通更有明确的选择和方向性;单一的思想和群体的智慧结合变得更加有效;个人出版变成人人都可以实现的梦想。
Blog正在影响和改变着我们的生活。
Blog是以网络作为载体,简易迅速便捷地发布自己的心得,及时有效轻松地与他人进行交流,再集丰富多彩的个性化展示于一体的综合性平台。
展示丰富的个性化,对Blog功能的要求自然更高,新一代具有更多、更新、更全功能的Blog急需走进舞台。
系统加入聊天功能可以更加方便大家的交流。
博客有以下用途:
(1)促进学习。
写blog可以促进学习,想写出文章来,自然不能是泛泛的了解就可以的,要理解了才能写得出来的。
这就促进了对某些领域的不断学习和思考。
(2)记录收获。
blog中,常常是记录下来都是瞬间的灵感,对事物的感悟,经过多日思考和实践的结果,对某个问题的解决方案等等,这些都是财富,要记录下来。
(3)反映成长。
写blog,可以反映出人的思考过程,而不仅仅是思考结果。
对一个问题或领域,从不了解到了解,从了解到熟悉,从熟悉到精通。
这纪录了一个人思考和解决问题的成长过程。
很久之后,看到自己之前的文章,你将会觉得自己进步了。
(4)结交朋友。
写了blog,自然会有许多志趣相同的朋友来阅读,这可以认识许多朋友。
大家有共同的兴趣爱好,自然谈得来。
(5)共享知识。
blog给大家看,大家的blog也给你看。
这个问题我解决了,那个问题他解决了。
大家互通有无,建立起一个社群。
(6)交流看法。
回复的人对blog的观点或赞同,或反对,大家一起讨论,听听别人的思想,可以促进双方的共同进步。
(7)包装自己。
看到一篇篇用心写出的文章,自然是对自己知识技能的最好宣传。
1.3系统概述
一个博客其实就是由一序列网页组成的,它通常是由简短且经常更新的帖子所构成的,这些贴的文章都按照年份和日期倒序列排列,能按照日期和主题检索。
博客的容和目的有很大的不同,有到其他的超级;有对其他的评论;有个人的日记,日常所思所想;有个人照片、诗歌、散文,甚至科幻小说的发表。
正是由于博客能收容这些不拘于个人思想的表达,使博客这种交流和表达方式日益红火起来,博客秉承了个人的自由精神,也开拓了激发创造的新模式,能扬人的个性,从这个意义上说,博客将会变得越来越普及,越来越为更多的人接受。
本系统主要完成以下功能。
1.客户界面部分
我的文章
给我留言
用户注册/登录
首页:
文章分类,最新评论,最新文章,最新加入
2.管理界面部分
添加分类
分类管理
文章管理
留言管理
基本设置
第二章相关技术介绍
2.1ASP.NET技术概论
本系统采用ASP.NET开发技术进行开发。
ASP.NET不仅仅是ASP的一个新版本,更是Web应用程序编程方面的一个全新的概念和方法。
ASP.NET中的新功能并不是对ASP的改进,设计它的初衷是为用户入境提供最佳的应用程序架构。
它相比于ASP有着以下几个方面的优点:
(1)多语言
ASP曾在脚本引擎方面受到了限制,特别是VBScript和Jscript。
而ASP.NET则支持多种语言,默认情况下为VisualBasic.NET、C#和Jscript.NET,另外还支持一些第三方语言。
(2)服务器处理
ASP在服务器处理上不管页面的容是纯HTML还是ASP生成的HTML,它都是按照实现,形成所谓3-tier页面顺序显示的。
因此逻辑代码依赖于它在页面中的位置,并且无法将HTML控件作为目标,除非将它们作为流的一部分进行显示。
而ASP.NET就解决了这个问题,方法是为控件引入一个声明的基于服务器的模型,因为控件在服务器上有,可以在服务器上编程,也可以是客户端驱动的事件。
(3)WebForm控件
将现有的HTML控件转换为服务器端的控件是比较容易的,但是也存在一些不方便,例如比较难于区分HTML控件和服务器端的控件。
于是Microsoft公司就创建了一组专门的服务器控件,它们都用asp:
前缀标识。
(4)代码与容分离
一个的设计与开发往往由不同的人来实现的,而ASP中就是存在着这样一个问题,代码(ASP脚本)和容(HTML)混合在一起。
这样就使得同时进行设计和开发变得很困难。
而ASP.NET则采用了代码联和后台编码两种方法实现了代码与容的分离。
2.2ASP.NET工作原理
在多数场合下,能够将ASP.NET版面容易地当做等闲的HTML版面,版面包括符号有特异处理措施的一些代码段。
当安装.NET时,本地的IISWeb服务器积极搭配成查找伸展名为.aspx的文件,且用ASP.NET模块(名为aspnet_isapi.dll的文件)处理这些文件。
从技巧上讲,ASP.NET模块分析ASPX文件的容,并将文件容分解成独自的号召以发生代码的大局构造。
告终此工作后,ASP.NET模块将各号召放置到预定义的类定义中(无须要放在同时,也无须要按编写次序放置)。
然后利用这个类定义一个特异的ASP.NET对象Page。
该对象要告终的任务之一即便生成HTML流,这些HTML流能够归来到IIS,再从IIS归来到客户。
简言之,在用户哀求IIS服务器供给一个版面时,IIS服务器就依据版面上的文本、HTML和代码(这对我们来说是最重要的)发生该版面。
2.3数据库选择
数据库(Database),是按照数据结构来组织、存储和管理数据的仓库,是用于查询的大量数据的存储区域。
使用数据库可以带来许多好处:
如减少了数据的冗余度,从而大节省了数据的存储空间,实现数据资源的充分共享等等。
近年来推出的计算机关系数据库管理系统,还具有操作直观,使用灵活,编程方便,功能强大,环境适应广泛,数据处理能力极强等诸多优点。
总的来说,数据库的设计对系统的经济性、功能性和效率有很大的影响,一个好的数据库,要求在设计时尽量避免数据的多余,另外,还要尽可能提高数据的存取速度。
数据库设计时速度与空间在式上是相互矛盾的。
一方面按规化理论的要求,关系模式应尽量取高级式,尤其对记录数较多的关系,低级式将会造成存储的大量重复,是空间遭受严重浪费;另一方面从存取速度上考虑,应该尽量做到一个模式涉及的属性越多越好,相互运算越少越好,这样,又应取低级式。
因此我们在设计数据库时要严格地探讨它的使用环境,充分了解用户的需求,清楚地掌握数据库系统的特点。
经过综合的评价和分析后设计出的数据库应满足以下要求:
(1)数据库信息要能充分体现出用户使用系统的需求。
(2)能够支持用户对数据进行的所有处理。
(3)能够容易被数据库管理系统运行维护。
(4)数据一致性、完整性好,无更新异常。
本系统采用SQLSERVER2005做为后台数据库,使用ADO.NET技术对数据进行操作。
2.3.1数据分析
博客系统中,主要是管理用户的文章、留言、系统信息等数据。
数据的类型决定了程序对数据的处理方式也就是算法,因此,数据是系统实现分析的起点。
现通过数据流图的方式分析系统中数据的流动和处理。
对系统的管理员,在登录系统后,本系统接受管理员的修改、添加、删除请求,通过分析将这种请求转化成相应的SQL语句执行对数据库的相关的操作,并将执行的相应结果送回系统中。
系统接收到数据库返回的结果集,经过一定的分析处理,将其转化成ASP页面,返回到客户端显示给用户。
2.3.2SQLSERVER2005
SQLSERVER2005是可以在WEB上运行的数据库服务产品。
它既可适用于桌面系统的单用户数据库,也可适用于企业的网络数据库,甚至适用于专业的WEB站点数据库,具有很强的可伸缩性。
并且具有很高的可靠性、可用性和可管理性。
从经济和开发效率上适合中小型。
它和ASP.NET同属于微软公司开发,在开发接口有一致性,能更好的协调工作。
同时,SQLSERVER2005对数据的安全性也有一定的保障,它对用户的访问进行了两个阶段的检查:
一是认证阶段,二是许可确认阶段。
数据库使用ADO.NET来处理数据。
2.3.3ADO.NET
ADO.NET是基于.NET框架结构、面向分布式和以XML数据格式为核心的数据访问技术,它提供了一组数据访问服务的类,可用于对MicrosoftSQLServer、Oracle等数据源及通过OLEDB和XML公开的数据远源的一致访问。
ADO.NET统一了数据容器类编程接口,无论编写何种应用程序(Windows窗体、Web窗体、Web服务)都可以通过同一组类来处理数据。
为使用方便,ADO.NET还提供了一组丰富的控件,利用可视化方式来开发数据库应用。
ADO.NET体系结构如下图2-1所示
图2-1ADO.NET体系结构
ADO.NET体系结构的两大核心控件是.NETFramework数据提供程序和Dataset。
.NETFramework数据提供程序用于连接到数据库、执行命令和检索结果。
Dataset是一个功能丰富、比较复杂的数据集,它是支持ADO.NET的断开式、分布式数据方案的核心对象。
Dataset专门用来处理从数据源获得的数据,无论数据来自什么数据源,它都使用相同的方式操作数据。
2.4ASP.NET配置
A的配置文件都是XML格式的文件,XML格式文件易于书写和定制,采用这种方法进行配置方便灵活。
另外,的配置都是可以随时更改的,即应用程序运行期间,可以随时增加和删除配置文件中的项目,修改后可以立刻激活使用比当配置发生变化时需要服务重新启动配置才生效的方法有很大的优势。
第三章需求分析
3.1需求分析
任何一个软件项目的开发都是从需求调查开始,博客管理系统也不例外。
系统管理员通过前台页面进入后台管理模块后,可以对注册的博客用户进行管理,包括对注册用户的添加、查找、修改和删除等操作;而博客用户通过前台登陆后,可以对自己的博客空间进行管理,包括发布自己的网络日志、收藏个人图片、与相关人员进行交流和沟通以及删除访问者的评论等。
针对博客管理系统的一些需求,总结出如下信息:
1.用户分普通用户、管理用户和超级管理用户。
2.超级管理用户员可以对博客管理员进行管理和设置权限。
3.博客管理员涉及对博客的类型管理、文章管理、图片管理、评论管理、留言管理和通信管理。
4.普通用户可一阅读文章、发表回应、留言和评论。
5.一种文章类型有多篇文章。
6.一种文章有多篇评论。
3.2可行性分析
可行性分析(FeasibilityAnalysis)也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。
可行性研究的目的就是用最小的代价在尽可能短的时间确定问题是否能够解决。
为了确定开发具有可行性,对本系统主要进行了以下四个方面的分析。
(1)经济可行性。
经济可行性主要是对项目的经济效益进行评价。
本系统对系统开发者来说并不需要太高的成本支出,只是对系统的管理者付出管理报酬即可,而且开发周期不需要太长,节省了人力、物力、财力资源,所以本系统在经济上是可行的。
(2)技术上的可行性。
技术上的可行性分析主要是分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。
在软件方面,本系统采用的是ASP(ActiveSeverPages)进行开发,前台网页设计使用的是DreamweaverMX,而数据库系统采用的是MicrosoftAccess2000。
通过分析,在软、硬件方面现有工具与环境完全可以实现系统的开发,因此具有技术上的可行性。
(3)时机可行性。
时机可行性是分析系统开发时机是否成熟。
目前越来越多的应用程序都已经是转向基于Web的开发,并且Internet已经广泛使用,因此系统的设计具有时机可行性。
(4)管理上的可行性:
主要是管理人员是否支持,现有的管理制度和方法是否科学,规章制度是否齐全,原始数据是否正确等。
系统的开发主要就是为了方便校友信息的管理,补充现在传统管理方式的不足,因此具备了管理上的可行性。
综上所述,本系统开发目标已明确,在技术和经济等方面具备可行性,并且投入少、见效快,因此系统的开发是完全可行的。
第四章概要设计
4.1系统设计方案
本系统是面向个人用户和小型集体用户开发的系统,完成用户在Blog上进行预定操作,实现用户和来宾之间的双向沟通。
具体设计方案为:
(1)系统服务器为IIS,数据库为SQLSERVER2005,整个系统界面采用MicrosoftvisualStudio2008开发。
(2)用C#语言实现。
(3)服务器与数据库的连接使用OLEDB编程接口的OleDbConnection对象进行连接。
(4)系统分成两部分,前台为普通用户操作界面,功能包括:
阅读文章,发表留言,发表评论,在线聊天。
后台为管理员操作界面,管理员通过登录进入管理界面,功能包括:
分类管理,文章管理,添加文章,评论管理,管理,留言管理。
4.2系统功能模块
系统功能模块包括两大块:
管理界面功能模块和普通用户界面功能模块。
其具体功能如下所示:
本系统由远行者信息技术开发,更多容请参阅公司官网。
博客系统文章实体E-R图如图4-1所示。
图4-1文章资源E-R图
管理员用户功能模块图4-2如下:
图4-2管理员功能模块
普通用户功能模块图4-3如下:
图4-3普通用户功能模块
4.3数据库需求分析
■用户分为普通用户和管理员用户
■管理员涉及类型管理、文章管理、添加文章、评论管理、管理、留言管理。
■普通用户可以阅读文章、发表回应、留言、评论和在线聊天。
■一种文章类型有多篇文章。
■一篇文章有多篇评论、回复。
对上面系统功能分析,设计如下数据项:
■管理员信息:
用户名、密码。
■类型信息:
类型编号、类型名称。
■:
编号、名称、地址。
■留言:
留言编号、留言人呢称、留言标题、个人主页、留言容、留言时间、留言回复。
■文章信息:
文章序号、文章作者、文章标题、摘要、文章容、文章发表日期、文章人气、回复、文章类型编号、文章类型名称、文章回复数。
■评论:
评论序号、评论用户呢称、评论标题、评论容、评论时间、评论的文章序号。
4.4系统操作流程
分析传统Blog系统这一环节所应具有的功能,可以得到Blog系统应具有以下功能:
高级系统用户(管理员)通过浏览器,可以实现文章的管理(对文章的各种信息进行浏览、增加、删除、修改等)、普通系统用户对文章信息只能阅读和留言。
由此得到的系统的流程图如图4-4所示
图4-4系统操作流程
4.5数据表设计
数据库的概念结构设计完毕后,现在可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据模型,也就是数据库逻辑结构。
博客系统中的数据管理形式采用数据库,根据系统需要与数据规化分为博客文章类型表,博客友情表,留言信息列表,博客文章信息列表,评论信息列表,系统管理员列表,博客管理员列表,联系人信息列表,图片信息列表这9表,在此只给出比较重要的数据表。
表4-1ST_news(文章信息列表)
字段
说明
类型
长度
允许空
ST_n_id
文章唯一ID号
Int
4
否
ST_n_author
文章作者
nvarchar
50
是
ST_n_title
文章标题
nvarchar
200
是
ST_n_key
文章摘要
nvarchar
200
是
ST_n_content
文章容
ntextr
50
是
ST_n_date
文章发表
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 个人 博客 系统 设计 实现