1、 本科毕业论文(设计) 博客管理系统摘要:伴随计算机普及,博客(BLOG)成为了现在Internet上比较流行应用。为了方便大家交流、分享,本文将从实际出发,介绍博客网站系统开发背景和意义,软件具体设计,及系统开发可行性。本系统采取B/S体系结构,设计尝试用ASP.NET技术,后台则使用SQL SERVER 数据库,在网络上架构一个博客信息管理平台,采取C#语言编写窗体代码、连接数据库,能够实现对各个模块信息同时操作。其关键模块有:用户注册,用户管理,文章管理,评论、留言管理等。该系统含有很大优点,比如:操作方便,信息检索效率高,安全性好,查询修改一目了然。实现Blog网站动态管理,使得对Bl
2、og信息管理愈加立即、高效,提升了工作效率。关键词:博客;ASP.NET;B/S,;SQL SERVER 目录第1章 绪论11.1 开发背景11.2 博客发展现实状况11.3 系统开发目标和意义11.4 系统概述21.5 论文组织结构2第2章 博客系统开发技术42.1 C#语言介绍42.2 AJax技术42.2.1 AJax概念42.2.2 Ajax优点52.3 数据库52.3.1 SQL SERVER 概述52.3.2 SQL SERVER 数据库优势52.4 LINQ数据访问技术62.5 ASP.NET 配置62.6 UML建模概述7第3章 系统需求分析83.1 可行性分析83.1.1 经
3、济可行性83.1.2 技术可行性83.1.3 操作可行性83.1.4 法律可行性83.2 系统功效需求83.2.1 用户界面功效93.2.2 管理界面功效103.3系统性能需求103.4 故障处理要求103.5 系统用例模型和描述103.6 系统数据需求123.6.1 系统数据需求包含以下几点:123.6.2 数据流图133.6.3 数据字典15第4章 系统总体设计174.1 系统目标174.2 系统总体设计174.3 系统数据库设计184.3.1数据库概念结构设计184.3.2 数据库逻辑结构设计204.3.3 数据库物理结构设计20第5章 系统具体设计和实现235.1 前台功效模块具体设计
4、235.1.1 首页设计和实现235.1.2 用户注册模块设计和实现235.1.3 给我留言模块设计和实现245.1.4 文章评论模块设计和实现255.2 后台功效模块具体设计和实现255.2.1 “添加文章”功效模块设计和实现255.2.2 文章管理功效模块设计和实现265.2.3 文章类型管理模块设计和实现265.2.4 用户信息管理模块设计和实现265.2.5 留言信息管理模块设计和实现27第6章 系统运行和测试286.1 测试目标286.2 测试方法286.3 测试实例296.3.1 后台管理权限测试296.3.2 前台文章显示测试296.3.3 前台显示文章具体内容测试296.3.4
5、 管理员测试306.3.5 后台管理权限测试306.3.6 文章管理306.4 系统测试内容326.5 测试结果评价32第7章 总结和展望未来337.1 总结337.2 展望33致谢351 绪论1.1 开发背景Blog本是Weblog简称,而Weblog则是由Web和Log两个英文单词组合而成。Weblog即在网络上公布和阅读流水统计,通常称为“网络日志”,简称为“网志”。Blogger即指撰写Blog人。Blogger在很多时候也被翻译成为“博客”一词,而撰写Blog这种行为,有时候也被翻译成“博客”。博客,关键以日志形式公布文章,并能够附加评论个人网页。就像现在无偿电子邮件注册、写作和发送
6、一样,博客一样也能够完成个人网页创建、公布和更新。以网络作为载体,简易快速便捷地公布自己心声,立即有效轻松和她人进行交流,同时集丰富多彩个性化展示于一体综合性平台。伴随Internet技术发展,博客正在改变着大家交流方法、情感体验和表示形态,改变着大家聚散方法;网络信息不再是虚假不可验证;交流和沟通更有明确选择和方向;个体思想和群体智慧结合变得愈加有效;个人出版变成人人全部可实现梦想。Blog正在影响和改变着我们生活。本章将实现一个含有简单公布和管理功效Blog平台1。1.2 博客发展现实状况在国外,博客是一个自助式网络出版工具,是一个草根媒体;美国博客兴起是因为给了个人参与便利、无偿出版,给
7、一般人提供了一个向世界表示自己甚至表示政治见解机会。在中国,博客则多用作交流工具借助于互联网,实现更为良好、更有深度人际沟通。Blog诞生时间并不长,中国常见英文字典里面甚至找不到这个词,但其发展速度还是尤其惊人。 年,博客概念被引入中国并得到快速发展; 年,博客得到规模性增加; 年,网民注册博客空间更是超出3300 万个。伴伴随注册数量增多,博客以极快速度融入到社会生活中,逐步大众化,成为基于互联网基础服务。并随之带来一系列新应用,诸如博客广告、博客搜索、企业博客、移动博客、博客出版、独立域名博客等创新商业模式,日益形成一条以博客为关键价值链条。现在,中国优异汉字博客网有:新浪博客,搜狐博客
8、,中国博客网,腾讯博客,博客中国等。截至底,中国博客作者为1750万,十二个月多来增加了快要3000万,博客作者群体数量实现大幅度增加。Blog已成为家庭、企业、部门和团体之间越来越盛行沟通工具,因为它也逐步被应用在企业内部网络(Intranet)。现在,BSP商家风起云涌,已经有数十家大型博客站点。由此可见,博客发展是乐观2。1.3 系统开发目标和意义伴随使用Blog人数增加,Blog作为一个新生活方法、新工作方法和新学习方法在以后生活中将更受欢迎。博客作为一个新表示方法,它传输不仅是情绪,还包含大量智慧、意见和思想。一个能够搜集和共享感爱好事物地方,能够进行评论、个人日志,能够指向您想记住
9、网站链接。从某种意义上说,它也是一个新文化现象,博客出现和繁荣,真正凸现了网络知识价值,标志着互联网发展开始步入更高阶段。以网络作为载体,简易快速便捷地公布自己心得,立即有效轻松地和她人进行交流,再集丰富多彩个性化展示于一体综合性平台。经过研究开发本系统,使我们了解当今博客发展最新动态,和博客对整个社会影响力。同时,能够使我们掌握个人网站开发基础方法和技术,为以后实际开发奠定基础。1.4 系统概述博客就是利用现成网页模板,能够发表文章和评论,并可按日期和专题索引个人网站。它形式相对简单,管理者和公布者通常就是一个人,和部分新闻网站文章公布系统类似。但博客内容和目标有很大不一样,有到其它网站超级
10、链接;有对其它网站评论;有个人日志,日常所思所想。正是因为博客包含了这些不拘于个人思想表示,使博客这种交流和表示方法倍受欢迎,博客秉承了个人网站自由精神,也开拓了激发发明新模式,能张扬人个性,从这个意义上说,博客将会变得越来越普及,越来越为更多人接收。本系统关键完成以下功效:1用户界面部分文章管理文章添加个人通讯录管理2管理界面部分博客管理员管理类型管理链接管理博客管理评论管理留言管理1.5 论文组织结构本文总共有七个部分,分别对系统各个阶段工作做了具体计划和描述。第一部分概述了本系统起源、现在中国研究现实状况和研究本课题目标和意义,在此基础上引出本课题研究内容。第二部分概括地介绍了对本系统研
11、究含有支持意义概念和技术,具体有C#语言介绍、AJAX技术、SQL Server 数据库、LINQ数据访问技术、UML建模概述。第三部分是系统需求分析部分,包含本系统可行性分析、功效需求分析、性能需求分析、数据需求分析。 第四部分是系统总体设计和数据库概念和逻辑设计。第五部分是系统各模块具体设计和关键技术编码介绍。第六部分是系统测试部分,介绍测试必需性和测试分析、测试方案、测试方法和测试结果是否正确。 第七部分是本课题总结和展望,就整个开发过程进行了简明总结和收获结果,并提出了对系统深入设想和完善工作。2 博客系统开发技术该系统在Microsoft Visual Studio 集成开发环境下编
12、码,利用ADO.NET技术连接Microsoft SQL Server ,使用ASP.NET+C#语言开发,相关技术见下文。2.1 C#语言介绍本系统采取ASP.NET开发技术进行开发。编程语言使用C#,C#是微软企业在6月公布一个新编程语言,专门为和微软企业.NET Framework一起使用而设计。C#就其本身而言只是一个语言,尽管它用于生成面向.NET环境代码,但它本身不是.NET一部分。.NET支持部分特征,C#并不支持,而C#语言支持另部分特征,.NET也不支持(比如运算符重载)3。 C#是一个全新且简单、安全、面向对象程序设计语言,关键用于开发能够再.NET平台上运行应用,它吸收了
13、C+、Visual Basic、Delphi、Java等语言优点,表现了当今新程序设计技术功效和精华。C#继承了C语言语法风格,同时又继承了C+面向对象特征。同C#对象模型已经面向Internet进行了重新设计使用.NET框架类库;C#再提供对指针类型支持使得程序能随便访问内存地址空间从而愈加健壮;C#再支持多重继承避免了往类层次结构因为多重继承带来怕.NET框架C#提供了强大、易用、逻辑结构致程序设计环境同时公共语言运行时(Common Language Runtime)C#程序语言提供了托管运行时环境使程序比往愈加稳定、安全。其特点有: (1) 语言简练。 (2) 保留了C+强大功效。 (
14、3) 快速应用开发功效。 (4) 语言自由性。 (5) 强大Web服务器控件。 (6) 支持跨平台。 (7) 和XML相融合。2.2 AJax技术2.2.1 AJax概念Ajax是Asynchronous JavaScript and XML缩写,即异步JavaScript 和XML。Ajax是一个用户端技术,Ajax技术借助异步JavaScript实现浏览器和服务器之间异步交互,即相当于在Web应用中实现了原来C/S(Client/Server)结构下交互结果,且这种效果实现并没有带来繁琐用户布署工作。在Ajax模式下,假如知识需要变更部分数据,则并不将整个页面重新载入,二十经过Ajax技术
15、向服务器发送请求,经过Css和Xhtml将影响内容表示出来。能够看出,Ajax技术大大降低了服务器和用户端之间数据流量,很大程度提升了对应速度。同时,因为不是每次全部发挥整个页面,也能大大降低出现空白页面情况,界面友好度有很大提升4。2.2.2 Ajax优点(1)改善用户操作体验,不会动不动因PostBack,整页重新加载造成闪动;(2)实现Web页面局部更新,不整页更新;(3)异步取回服务器端数据,用户不会被限制于等候状态,也不会打断用户操作,从而加紧了响应用户能力;(4)提供跨浏览器兼容支持,AJAXJavaScript是跨浏览器; (5)大量内建用户端控件,更便于实现JavaScript
16、 功效和特效。2.3 数据库本系统才用SQL SERVER做为后台数据库,采取ADO.NET技术对数据进行操作。2.3.1 SQL SERVER 概述SQL Server 是一个高性能关系型数据库管理系统,该系统是一个全方面数据库平台,使用集成商业智能工具提供企业级数据管理,能够为不一样规模企业提供不一样数据处理管理方案。SQL Server 是企业信息系统用户服务器体系结构首选产品之一。数据库在建立、运行和维护时由DBMS统一管理和控制确保数据安全性、完整性、多用户对数据并发使用发生故障后系统恢复。数据库系统从整体角度看待和描述数据,数据面向整个系统,能够被多个用户、多个应用共享使用5。SQ
17、L SERVER是能够在WEB上运行数据库服务产品。是按client/server结构设计。它既可适适用于桌面系统单用户数据库,也可适适用于企业网络数据库,甚至适适用于专业WEB站点数据库,含有很强可伸缩性。而且含有很高可靠性、可用性和可管理性。从经济和开发效率上适合中小型网站。数据库引擎中加入了.NET公共语言实施环境,使用.NET语言能够穿件数据库对象,而且支持xml语言同时,能愈加好协调工作。SQL SERVER对数据安全性也有一定保障,采取权限验证模式和数据库用户及账号来确保数据库安全性。并拥有多个版原来满足不一样需要6。 2.3.2 SQL SERVER 数据库优势NET框架主机:使
18、用SQL Server ,开发人员经过使用相同语言,比如微软VisualC#.net和微软Visual Basic,将能够创建数据库对象。开发人员还将能够建立两个新对象-用户定义类和集合。XML技术:在使用当地网络和互联网情况下,在不一样应用软件之间散步数据时候,可扩展标识语言(XML)是一个关键标准。SQL Server将会本身支持存放和查询可扩展标识语言文件。ADO.NET2.0版本:从对SQL类新支持,到多活动结果集(MARS),SQL Server中ADO.NET将推进数据集存取和操纵,实现更大可升级性和灵活性。增强安全性:SQL Server中新安全模式将用户和对象分开,提供存取、并
19、许可对数据存取进行更大控制。另外,全部系统表格将作为视图得到实施,对数据库系统对象进行了更大程度控制。Transact-SQL增强性能:SQL Server为开发可升级数据库应用软件,提供了新语言功效。这些增强性能包含处理错误、递归查询功效、关系运算符PIVOT,APPLY,ROW_NUMBER和其它数据列排行功效,等等。SQL服务中介:SQL服务中介将为大型、营业范围内应用软件,提供一个分布式、异步应用框架。 通告服务:通告服务使得业务能够建立丰富通知应用软件,向任何设备,提供个人化和立即信息,比如股市警报、新闻订阅、包裹递送警报、航空企业票价等。在SQL Server中,通告服务和其它技术
20、愈加紧密地融合在了一起,这些技术包含分析服务、SQL Server Management Studio.Web服务:使用SQL Server,开发人员将能够在数据库层开发Web服务,将SQL Server看成一个超文本传输协议(HTTP)侦听器,而且为网络服务中心应用软件提供一个新型数据存取功效。报表服务:利用SQL Server,报表服务能够提供报表控制,能够经过Visual Studio 发行。全文搜索功效增强:SQL Server 将支持丰富全文应用软件。服务器编目功效将得到增强,对编目标对象提供更大灵活性。查询性能和可升级性将大幅得到改善,同时新管理工具将为相关全文功效运行,提供更深入
21、了解。2.4 LINQ数据访问技术LINQ(Language-Integrated Query, 语言集成查询)是微软企业提供一项新技术,它是一组用于C#和Visual Basic语言扩展。它许可编写C#代码以查询数据库相同方法操作内存数据,从而在对象领域和数据域之间架起了一座桥梁。借助于LINQ技术,我们能够使用一个类似SQL语法来查询任何形式数据。使用LINQ查询数据库中数据,和传统SQL语句或存放过程相比查询数据愈加简练。2.5 ASP.NET 配置A配置文件全部是XML格式文件,XML格式文件易于书写和定制,采取这种方法进行配置方便灵活。另外,配置全部是能够随时更改,即应用程序运行期间
22、,能够随时增加和删除配置文件中项目,修改后能够立即激活使用比当配置发生改变时需要服务重新开启配置才生效方法有很大优势。该系统利用了Web.config文件进行配置web服务器,使用Web.config文件配置web服务器简明扼要。Web.config文件是采取XML格式进行编写XML文件。2.6 UML建模概述UML(Unified Modeling Language,统一建模语言),它是用来对软件密集系统进行可视化建模一个语言,也是为面向对象开发系统产品进行说明、可视化、结构和编制文档一个标准语言。UML展现了一系列最好工程实践,这些最好实践在对大规模,复杂系统进行建模方面,尤其是在软件架构
23、层次已经被验证有效7。UML集成了Booch,OMT和面向对象软件工程等方法中基础概念,将这些方法融合为单一,通用,而且能够广泛使用建模语言。UML计划成为能够对并发和分布式系统标准建模语言。在UML系统开发中有三个关键模型:功效模型、对象模型、动态模型。区分UML模型和UML图是很关键,UML图,包含用例图、协作图、活动图、序列图、布署图、构件图、类图、状态图,是模型中信息图形表示方法,不过UML模型独立于UML图存在。XML目前版本只提供了模型信息交换,而没有提供图信息交换。UML使用一套和Java语言或其它面向对象语言等价物,同时也是本体论等价物图形标识。UML并不是一个方法学,也不要求
24、使用一个方法学,不过UML对于Rational 统一过程来说是必不可少8。 3 系统需求分析3.1 可行性分析3.1.1 经济可行性本系统使用基础开发工具为Microsoft Visual studio专业版(开发平台), Microsoft SQL Server (数据库软件),IIS (Internet 信息服务器) Microsoft Visio 和Photoshop7.0全部是网络提供无偿软件。本系统关键劳动成本集中在编码阶段,经济成本小,人力投入适宜,含有开发能力,而且得以将所学应用于实践。所以,该网站开发在经济方面含有可行性。3.1.2 技术可行性博客系统开发关键包含后台数据库建立
25、和维护和前台页面浏览开发两个方面。对于前者要求建立数据一致性和完整性强,数据安全性好数据库;而对于后者则要求应用程序功效完备、易使用等特点。基于这两点,本系统采取B/S结构开发模式,服务器端采取市场广泛使用关系型数据库管理系统Microsoft SQL Server ,该数据库轻易使用,为多个编程语言提供API;用户端使用跨平台网络开发语言ASP.NET实现应用程序设计。Microsoft Visual Studio,面对底层程序,它能很轻松和Windows API结合,能够快速进行网站开发。ASP.NET拥有C#开发语言强大功效,足以实现应用程序所需要实现功效,还能够结合HTML语言使用来实
26、现系统操作便利性。经过分析,在软、硬件方面现有工具和环境完全能够实现系统开发,所以含有技术上可行性。3.1.3 操作可行性本系统是一个基于Web网上博客管理系统,在操作使用上十分方便,经过Web浏览器就可使用本系统。管理员对网站进行操作是经过浏览器进入网站后台系统,在可视化界面下对网站内容进行使用和操作。一般用户也是在浏览器中直接对文章进行添加、浏览、修改、删除等管理工作。同时博客系统对信息流向和犯错全部进行了人性化处理。所以,在操作使用上,本系统简单、方便,易于使用户接收,所以该系统是方便可操作。3.1.4 法律可行性因为该系统只作毕业设计使用,包含相关专业知识均来自我校图书馆相关书籍和网络
27、搜索,所以不存在法律和社会影响方面问题。3.2 系统功效需求系统功效模块包含两大块:管理界面功效模块和一般用户界面功效模块。其功效结构图以下3.1所表示:服务器用户端系统管理员博客管理员博客注册用户服务器注册用户匿名用户服务器博客管理员博客类型管理链接管理博客文章管理广告管理评论管理留言管理阅读文章发表文章发表留言文章管理文章添加个人通讯录 图3.1 系统功效结构图3.2.1 用户界面功效在用户界面功效实现上,能够分为以下多个部分:1. 用户注册用户将个人信息存放到博客网站数据库中,就成为本博客正式用户。2. 用户登录网站用户用个人注册帐号,密码登录到网站。网站检测用户帐号,密码并给其对应权限
28、对网站进行操作。3. 最新文章分类用户能够检索或浏览博客中自己感爱好文章分类。4. 发表留言用户在浏览文章后,可给作者留言,以和其互动。5. 网友回应网友能够对文章进行评论,回应。6. 热点文章对于网友点击率较高文章,会显示文章题目及点击率。7. 最新博友文章用户发表文章,会显示文章题目和作者。3.2.2 管理界面功效经过计算机网络将前台和后台数据库相连,网站管理员将以前台得到信息进行处理,实现文章管理,公告管理,评论管理,链接管理,用户设置及博主设置等子系统。1.文章管理管理员对网站中已经有文章进行删除,修改等操作。2.留言管理添加,删除,更改留言。3.评论管理删除评论内容。4.链接管理对超
29、级链接进行修改,删除等操作。5.博客管理修改,删除博客用户信息。6.博主设置对博主信息等进行操作。3.3系统性能需求博客网站特征要求博客网站系统需要含有以下多个关键特征:正确性:本系统要求系统命名绝对正确。多样性:本系统关键指功效多样性符适用户习惯和要求。安全性:本系统不仅要考虑信息、设备和管理安全可靠,还要确保用户个人资料数据安全。可维护性:数据库文件能够立即修改和维护,且后期系统建设不能影响前期已投入使用功效。可测试性:设计时尽可能简练合理,降低测试各个功效工作量。复用性:代码模块化,尽可能实现代码可重用性。可扩展性:要求系统设计时还要考虑用户不停改变需求,降级系统在扩展新功效是复杂度。可
30、了解性:要求界面上菜单、按钮、提醒信息等,简单、直观,一看就懂。可移植性:要求在台式机、笔记本电脑上通用9。3.4 故障处理要求本系统故障关键有:数据库服务器无法访问、非法操作数据库数据和非法填写相关信息。所以,良好容错性能和友好犯错提醒要求在系统中出现。3.5 系统用例模型和描述本系统包含两个实体即用户和管理员和服务器,服务器作为传输媒介,用户交流、数据实时传输等功效均需要该媒介来承载。(1)用户使用系统用例模型用户在注册相关信息以后使用正确用户名及密码进入博客系统,所以该模型包含一个用户实体和信息注册及进入系统后发表文章,管理文章,管理通讯录等功效,其用例模型如3.2所表示。注册登录管理文
31、章发表文章管理通讯录查看修改添加添加删除删除用户图3.2 用户交互子系统用例模型(2)管理员使用系统用例模型 管理员一样需要先行注册,使用正确用户名及密码进入博客系统。和用户用例不一样,为实现对用户信息管理和批量删除,管理员用例增设了系统管理模块,系统管理模块关键包含对博客管理员管理、文章类型管理、链接管理、评论管理、留言管理等操作,管理员使用系统用例模型见下图3.3所表示:注册登录类型管理链接管理博客管理评论管理留言管理博主管理删除修改编辑删除添加删除浏览修改删除查看回复管理员图3.3 管理员管理子系统用例模型3.6 系统数据需求3.6.1 系统数据需求包含以下几点:1. 数据录入和处理正确
32、性和实时性数据输入正确是否是数据处理前提,错误输入会造成系统输出不正确和不可用,从而使系统工作失去意义。数据输入起源是用户手工输入。手工输入要经过系统界面上安排系统含有容错性,而且对用户操作进行实时跟踪和错误提醒。在系统中,数据输入往往是大量,所以系统要有一定处理能力,以确保快速处理数据。2. 数据一致性和完整性因为网站数据是共享,所以怎样确保这些数据一致性,是网站必需处理问题。要处理这一问题,要有一定人员维护数据一致性,在数据录入处控制数据去向,而且要求对数据库数据完整性进行严格约束。对于输入数据,要为其定义完整性规则,假如不能符合完整性约束,网站应该拒绝该数据。3. 数据共享和独立性整个个
33、人博客数据是共享。然而,从网站开发角度上看,共享会给设计和调试带来困难。所以,应该提供灵活配置,使各个分系统能够独立运行,而经过人工干预手段进行系统数据交换。这么,也能提供系统强壮性。93.6.2 数据流图系统运行过程中,关键包含到两部分数据流向,一部分是管理员在系统后台管理界面上发出对数据库操作数据流,另一部分是用户在应用前台使用系统时所产生数据流10。数据流图符号说明以下图3.4所表示:外部实体加工数据流存放文件图 3.4 数据流图符号说明首先,确定系统外部实体:用户和管理员,用户是系统数据起源,管理员是系统数据去向。明确系统边界后,绘制出系统“关联图”,以下图3.5所表示:用户管理员博客
34、系统登录显示显示管理图 3.5 博客系统关联图 然后,确定系统关键处理功效和数据存放,绘制出系统“顶层数据流图”,以下图3.6所表示:用户管理员系统处理登录登录浏览查看系统处理图 3.6 博客系统顶层图 最终,将博客系统数据处理功效分解为文章处理、博客管理、后台处理三个子处理。伴随系统处理拆分,将数据存放细分成文章文件、评论文件、用户文件和后台文件四个子数据存放,绘出“系统数据流图”以下图3.7所表示:W1用户文章处理博客管理后台处理W2管理员F1F4P1P2D4D1D2D3D4F7F8F9F10F12P3F11F2F3F5F6文章文件评论文件用户文件留言文件后台文件图3.7 系统数据流图 P
35、表示数据处理,F表示数据流,D表示数据存放 ,W表示外部实体F1: 发表文章 F2: 存放文章信息 F3: 发表评论 F4: 管理信息 F5: 存放用户信息 F6: 存放留言信息 F7:查看博客文章 F8: 查看评论信息 F9: 查看用户信息 F10:查看留言信息 F11:管理 F12: 存放管理信息3.6.3 数据字典(1)名字: 用户信息描述:用户个人信息,用于对用户确实定和更新。输入:注册用户账号、密码过程:判定是否为正当用户输出:用户浏览器(前台) (2)名字:留言信息描述:用户登录博客系统后,可进行留言输入:昵称、留言标题、留言内容过程:判定用户可否进行留言输出:用户浏览器(前台)(
36、3)名字: 评论信息描述:对已经有文章进行评论输入:评论题目、评论内容、评论日期 过程:对已经有文章进行评论输出:用户浏览器(前台)(4)名字: 文章类型信息描述:用于对文章进行分类输入:类型名称、分类说明过程:对分类信息信息进行修改输出:用户浏览器(前台)(5)名字: 管理员信息描述:管理员个人信息,用于对管理员确实定和更新输入:管理员帐号、密码过程;判定是否为正当用户输出:管理员浏览器(后台)4 系统总体设计完成系统需求分析以后,就进入了系统设计阶段,在整个系统开发时期中,设计阶段是最关键阶段。按软件生存周期划分,设计任务通常分两个阶段来完成。第一个阶段是概要设计,它任务是建立软件总体结构
37、,即软件组成,和各组成成份(子系统或模块)之间相互联络。第二个阶段是具体设计,其任务是确定模块内部算法和数据结构,产生描述各个模块程序过程具体设计文档。在本系统设计过程中采取了模块化设计方法,化繁为简11。4.1 系统目标博客网站系统总目标是:在计算机网络,数据库和优异开发平台上,利用现有软件,配置一定硬件,开发一个含有开放体系结构、易扩充、易维护、含有良好人机交互界面博客管理网站,为网络用户提供进行立即交流网络平台。经过博客网站能够结交更多好友,表示更多想法,随时能够自己公布文章。具体目标以下:(1) 博客用户能够简单添加、删除和管理文章;(2)独立于具体数据库平台。对于和数据库交互部分充足
38、考虑兼容性;(3)轻易在原先基础上进行二次开发;(4)中间基础平台无型性。尽可能采取开放标准技术,达成跨平台运行效果;为了达成以上开发目标,博客网站应遵照一定设计和开发和标准:(1)模块接口定义清楚;(2)基础类库和接口设计合理,尽可能建立可扩展接口和抽象类;(3)数据库操作使用标准SQL语句,假如一定要使用有差异SQL语句,则尽可能集中在一起,以降低未来维护和移植难度;(4 )采取开放标准和工具等;4.2 系统总体设计依据系统总体功效分析,可画出网站首页功效描述模块图4.1所表示。首页文章分类推荐文章网友回应友谊链接注册/登录VBScriptSQL 数据库图4.1 网站首页功效 依据该系统要
39、实现功效,可分别从用户界面、管理界面对功效模块图加以描述。用户界面系统功效模块图4.2所表示。 首页我文章我留言管理文章管理通讯录登录/注册文章添加文章管理评论 图4.2 用户界面模块功效图管理界面功效图4.3所表示。 首页类型管理链接管理评论管理留言管理博客管理删除修改删除基础管理修改修改删除 图4.3 管理界面功效图4.3 系统数据库设计本系统采取SQL Server 数据库,名称为db_Blog。4.3.1数据库概念结构设计概念设计阶段目标是把需求分析阶段得到用户需求抽象为数据库概念结构,即概念模式。设计关系型数据库过程中,描述概念结构有力工具是E-R模型,其组成元素有:实体、属性、关系
40、,E-R模型用E-R图表示。实体是用户工作环境中所包含事务,属性是对实体特征描述。在设计E-R图过程中,需要注意以下问题:(1)实体,即数据对象,表示含有不一样属性事物,E-R图用带有标识矩形来表示。(2)属性也称性质, E-R图用带有标识椭圆来表示。 (3)关系表示实体之间相互连接,E-R图用直线连接相关联数据对象,并在直线上用带标识菱形框来表示关系。 (4)各子系统模块中主键相同字段之间存在着相互关联关系。 (5)在程序中实现对她们完整性和一致性控制。依据需求分析,能够得出该数据库中使用数据库实体对象为:文章类型实体、链接信息实体、留言信息实体、评论信息实体、文章信息实体。博客作者在发表文
41、章时,可依据文章类型公布,同一个文章类型可包含多篇文章。同时,该网站还设计了部分友谊链接,方便访客在其它网站查找自己所需信息。文章类型信息实体E-R图和链接信息实体E-R图,分别图4.4和图4.5所表示。文章管理文章类型文章类型文章管理文章类型文章类型图4.4 文章类型实体E-R图 图4.5 链接信息实体E-R图 对于发表博客文章作者,访客有时要给其留言,在留言时需要填写部分相关信息,如昵称、标题、内容等。留言信息实体E-R 图,图4.6所表示。留言信息留言编号留言编号留言编号留言编号留言编号留言编号留言编号图 4.6 留言信息实体E-R图对于博客作者发表文章,访客阅读后能够进行评论。评论信息
42、实体E-R图,图4.7所表示。评论信息评论编号昵称评论标题评论内容评论日期文章编号图 4.7 评论信息实体E-R图博客是以个人为中心信息摘选,是展现个人风采、张扬个性一个网络日志。当博客作者发表博客文章时,会有对应文章回复。文章信息实体E-R图,图4.8所表示。文章信息文章摘要文章发表日期文章人气文章回复文章内容文章标题文章作者文章回复数文章类型编号文章编号文章类型名图 4.8 文章信息实体E-R图4.3.2 数据库逻辑结构设计逻辑结构设计任务就是把概念结构设计阶段设计好基础E-R图转换为和选择DBMS产品所支持数据模型。系统关系模式设计以下:文章(ST_n_id#,ST_n_author,S
43、T_n_title,ST_n_key,ST_n_content,ST_n_date,ST_n_hit,ST_n_re,ST_c_id,ST_c_name,ST_n_iscmd)评论(ST_r_id#,ST_r_nick,ST_r_title,ST_r_content,ST_r_date,ST_n_id)留言(ST_id,ST_nickname,ST_title,ST_homepage,ST_content,ST_mdate,ST_hf)4.3.3 数据库物理结构设计物理结构设计阶段实现是数据库系统内模式,数据库物理设计阶段任务是为给定数据库模型确定合理存放结构和存取方法。(1)ST_news(
44、文章信息列表)文章信息列表,用来统计文章信息,如表4.1所表示。表4.1 ST_news(文章信息列表)字段类型长度是否为空说明ST_n_idint4否文章唯一IDST_n_authornvarchar50是文章作者ST_n_titlenvarchar200是文章标题ST_n_keynvarchar200是文章摘要ST_n_contentntextr50是文章内容ST_n_datedatetime8是文章发表日期ST_n_hitbigint8是文章人气SY_n_rebigint8是文章回复ST_c_idbigint8是文章类型编号ST_c_namenvarchar50是文章类型名称ST_n_iscmdint4是文章回复数(2)ST_reply(评论信息列表)评论信息列表用来保留评论信息,如表4.2所表示。表4.2 ST_reply(评论信息列表)字段类型长度是否为空说明ST_r_idbigint8否评论唯一IDST_r_nickn