个人博客网站毕业设计.docx
- 文档编号:27596750
- 上传时间:2023-07-03
- 格式:DOCX
- 页数:37
- 大小:1.26MB
个人博客网站毕业设计.docx
《个人博客网站毕业设计.docx》由会员分享,可在线阅读,更多相关《个人博客网站毕业设计.docx(37页珍藏版)》请在冰豆网上搜索。
个人博客网站毕业设计
前言
由于计算机网络技术和通信技术的完美结合,因特网技术的应用达到了前所未有的程度。
许多传统的应用和研究与网络进行了结合,出现了日渐成熟的博客网站,而且随着网络应用的不断深化,博客系统及博客技术也得到了飞速发展。
基于信息即时交流的博客网站已经逐步成为信息分享和发布的一种重要渠道,具有全球化、方便快捷、成本低、效率高等优点,是虚拟信息时代的主流信息沟通方式,拥有广阔的发展前景[1]。
本文概述介绍了个人博客网站。
随着WEB的兴起,互联网信息从传统的ISP转移到个人。
对用户来说,要想在浩瀚的信息海洋里找到想要的信息已非易事。
这种频繁更新的数据库,比采用更新较慢的搜索引擎更快获取信息。
博客是继Email、ICQ、BBS之后出现的第四种网络交流方式[1],通过博客,用户可以方便地使用多媒体技术建立起个性化的私密空间,并将该空间的内容选择性的和他人交流、沟通。
在需求分析中,参照当今较为成功的博客网站的应用发展状况,从软件开发及技术的角度描述了从需求分析、系统设计直到实现一个博客的过程。
本迷你博客系统采用.NET技术作为开发平台,在架构上采用经典实用的三层架构:
数据访问层、业务逻辑层和用户表现层。
然后根据系统对象设计出与其功能相关的类、组件、各个实现模块、各模块详细的程序描述,确定在.NET平台上实现各功能的技术,最后完成本系统的数据库设计。
使从信息交流更方便,共享信息更安全等角度考虑开发了这个网站,它允许用户以此为平台书写自己的网络日志,同时方便了大量的浏览者获取信息。
同时提供给用户机会创建自己喜欢的栏目,给用户更广阔的发挥空间。
本文研究的目的是:
在前人研究的基础上,试图优化博客技术和系统模型,建立界面友好、美观大方、程序高效,特别是能快速准确地提供信息的博客系统。
本系统采用MicrosoftVisualStudio2008作为开发平台,用AJAX网页开发技术,以SQLServer2005作为后台数据库进行开发。
以普通信息网站系统为依托,构建一个性化的博客系统,为用户提供准确、方便、安全、优质的信息交流服务。
第一章绪论
1.1系统开发背景和研究现状
互联网的飞速发展正在逐步改变着人们的生产生活方式,并且成为人们获取和交流信息的重要途径。
因为互联网的开发性,网络信息量正以惊人的速度增长,博客是当今快速发展的互联网技术。
博客是一种特定的网络信息发布平台,使用者拥有一个属于自己的空间,在结合网络后,博客完全可以成为用户的一个信息化平台。
从整个互联网的角度观察,早期的用户只是作为一个信息的阅读者被动地从各个网站上接受信息,随着网络技术的日益进步,一系列动产生网页的技术相继出现,使互联网与用户交互的能力不断增强,表现方式极为丰富。
博客正是在这种背景环境下产生的,虽然只是一个小型的网络应用程序,却表现出网络的社会化特点[2]。
博客系统与认知科学、信息检索有密切的关系[3]。
最早的博客是作为网络“过滤器”的存在的,即从很多网站中挑选一些特别的网站,让后对他们作简单的介绍。
随着Web2.0技术的日臻成熟,博客系统在网络上的应用也蓬勃发展,国内外学术界对博客系统的研究也日趋兴旺。
博客在中国发展为:
在网络上发表Blog的构想始于1998年,人们开始寻求博客网站这种快速、准确、安全的方式进行信息交流;但博客真正流行是2000年之后,博客网站在中国迅速发展;2005年,国内各著名的门户网站包括新浪微薄,搜狐博客,腾讯博客等,博客在中国市场越来越流行[4]。
迄今为止博客网站以其即时性、开放性、个人性、平民化、互动性等特点得到了越来越多的个人和企业的关注。
目前国内外互联网上有许多大型网站已经应用博客这项技术为用户提供更加智能的信息服务。
1.2博客系统概述
所谓博客系统,是指使用计算机语言编写便于用户安装和使用的能在互联网上创建博客的一整套的系统。
博客上的文章一般根据张贴时间有新到旧,以倒叙的方式来进行排序。
许多博客对特定的课题或新闻进行评论,一部分则被当做比较私人的日记。
一个典型的博客一般都会结合文字、图像,还具有与其他博客或网站链接的功能,也能使读者以互动的方式留下各自的想法和观点。
随着Web2.0技术的日臻成熟,博客系统在网络上的应用也蓬勃发展,国内外学术界对博客系统的研究也日趋兴旺。
最早的具有代表性的博客系统是由WordPress,PivotxZ-Blog等[5]。
中国博客近几年来飞速发展。
博客是以个性化的互动型网络形式存在,包含不断发展的各种功能和适合网络发展的各种优点。
本文从综合的视角看待整个博客,包括博客内容、博客形式、博客的传播互动的过程。
1.3系统开发的目的和意义
1.3.1系统开发的目的
随着Internet的迅猛发展,万维网上存储的信息呈现爆炸式增长,随之而来的海量信息给人们的信息搜寻带来了相当大的困难。
博客系统作为一种重要的交流工具,建立博客系
统可以很方便解决这个问题,只需要加入你希望展示的平台,别人就可以很方便的浏览你的博客。
本文的研究目的是通过对网站算法的研究,分析了在博客系统中存在模式较为单一、访问速度慢等问题,多方面借鉴国内外的博客网站开发思路,设计更为完善的博客网站,制作能实现文章的发布和修改、评论过滤、添加链接、发表评论、用户留言等功能模块的博客[7]。
由于此系统是基于ASP的个人博客网站,用户可以快速方便地发布交流信息,提高了系统的可应用性。
1.3.2系统开发的目的和意义
研究博客系统比较具有实践意义。
第一,作为交流平台的博客网站,希望通过优化博客技术和预测用户的使用需求,提供实时网上交流互动,通过计算机技术和网络技术,尽可能克服地域的限制,增强网站的运行能力,提高用户的满意度,最终达到提高网站知名度和实用性的目的。
第二,通过选择开发一个web应用程序,使用学习到的开发技术及工具,完成一件具有实际意义的研究工作,同时更多的是巩固专业知识。
1.4全文体系结构
第一章简述了系统的开发背景、发展现状、开发的目的和意义。
第二章介绍了博客系统概述,迷你博客系统开发运行环境,并详细介绍了系统开发平台、ASP.NET编程技术、AJAX技术、数据库设计工具MicrosoftSQLServer等。
第三章讨论了运用软件工程的思想,做迷你博客系统的需求以及整个系统的设计与分析。
第四章主要介绍博客系统的具体实现。
第五章是结束语。
总结了全文的主要思想,分析了今后继续努力的方向。
第二章系统构建的相关技术及开发环境
2.1系统的总体目标
一个迷你博客系统的角色分为普通用户和系统管理员[8]。
普通用户是系统使用者,而系统管理员是系统管理者,虽然系统管理员也是一个用户,但这并不影响系统的功能。
管理员界面主要实现:
文章类型管理、文章内容管理、评论管理、链接管理、留言管理。
一般用户实现:
观看博客、查看推荐博客、打开友情链接并查看、给在博客网页上发表留言、发表评论等功能。
管理员实现目标如下:
(1)类型管理:
对博客实行添加新类型修改和删除操作。
(2)文章内容管理:
对博客进行选择删除编辑和新建操作。
(3)评论管理:
对评论实行删除操作。
(4)链接管理:
删除选择内容和添加新连接。
(5)留言管理:
删除留言。
普通用户实现目标如下:
观看博客,查看推荐博客,打开友情链接并查看,在博客网页上发表留言,发表评论等功能。
2.2系统开发及运行环境
当今网页开发技术飞速发展,开发工具也是不胜枚举,选择适合本系统开发的关键技术和开发工具就变得尤其重要。
通过调查研究,选择如下:
●开发平台:
ASP.NET项目开发平台
●开发工具:
MicrosoftVisualStudio2008
●操作系统:
MicrosoftWindowsXP
●数据库:
SQLServer2005
●服务器:
IIS5.1
●开发语言:
C#
●开发技术:
Ajax
2.3系统开发关键技术和开发工具
2.3.1ASP.NET项目开发
ASP是由微软公司开发的一个服务器端脚本环境[9]。
用户可以运用ASP将HTML语言和脚本结合起来,用来创建动态交互的WEB服务器应用程序。
ASP程序是以扩展名为.asp的文本文件形式保存的,可以被任何一种文本编辑器编辑使用。
当程序执行完毕后,服务器仅将执行的结果返回给用户浏览器,这样也减轻了客户端浏览器的负担,大大提高了交互的速度。
ASP的运用极大地方便了WEB应用程序的开发过程。
只需几行脚本,就可以将数据库连接或不同的高级自定义功能按照要求添加到相关网页中去。
在ASP中,由于所有的程序是在服务器端执行的特性,所以你不必担心客户的浏览器能不能运行编写的代码。
ASP.NET是建立在.NET基础上的语言,它可以用任何与.NET兼容的语言(例如C#、VB.NET等)编写Web应用程序[9]。
ASP.ENT可以与HTML编辑器及其他编程工具一起工作.这使Web开发范围变得更加广泛。
ASP.NET页面主要的优点有:
●安全性:
ASP.NET为WEB应用程序提供了默认的Windows身份验证和必要的安全配置方案,可以保护每个程序的安全。
●可管理性:
ASP.NET采用基于文本的分级配置系统,以纯文本的形式存储配置信息,因此,大大简化了服务器环境和程序应用的设置。
●扩展性:
ASP.NET拥有许多可扩展的功能,开发人员可以用自己编写的自定义功能组件来替代库中任何组件,实现扩展功能。
●灵活性:
ASP.NET基于公共语言运行库,并且无语言局限性,开发人员可以选择最适合程序开发的语言来编译。
●代码分离:
实现了业务代码和页面的分离,更易于维护。
2.3.2AJAX
AJAX即异步JavaScript和XML,是一种创建交互式网页应用的网页开发技术[12]。
这个术语源自描述从基于网页的WEB应用到基于数据的应用的转换。
在基于数据的应用中,用户需求的数据如各种列表,可以从独立于实际网页的服务器端取得并且可以被动地写入网页中。
Ajax技术是目前开发WEB的较好选择。
传统WEB由于是同步交互,容易引起响应速度慢、数据呈现出现混乱以及服务器端负载等问题。
争对传统WEB的缺陷和不足,通过综合运用AJAX技术中的JavaScript、HTML等技术,使用户在浏览Web页时,不必耗时等待数据刷新带来的白屏界面,而是继续执行一些其他的操作,从而改善了WEB应用效率,提升了用户体验。
2.3.3C#语言
C#是一种最新的、面对对象的编程语言,它功能强大,能够被灵活使用。
它使得程序员可以快速地编写各种基于微软.NET平台的应用程序,微软.NET提供了一系列的工具和服务,通过C#可以让开发人员更快的掌握其应用。
C#语言是为了提升软件开发效率的产物,也是Microsoft公司为了市场竞争而推出的一个产品。
C#语言不仅仅继承了C/C++强大的开发功能,还同时具备C/C++所没有的高效率开发能力。
除此之外,C#还有一些重要特性:
1.开发效率与安全性比较高。
C#能够帮助开发者运用更少的代码完成相同的功能,并且能够更好地避免错误的发生。
2.与Web开发相结合。
可以轻松方便地被应用在.NET平台上,同时C#也可以把任何组件转变为Web服务[16]。
3.减少错误率。
C#的先进设计思想可以消除C/C++开发中的许多常见的错误。
4.提供内置的版本支持类减少开发费用。
5.可扩展的写作能力.
2.3.4SQLServer2005数据库
SQLServer是一个关系数据管理系统。
它是一个拥有众多有吸引力的优点的数据库。
SQLServer数据库还具有许多优秀的特性,变现为:
1.具有隔离性、一致性和持续性。
真正的客户机/服务器体系结构。
2.高安全性。
拥有十分严密的安全模型。
3.开发的灵活性。
丰富的编程接口工具,为用户进行程序设计提供了更大的选择余地。
4.可伸缩性。
可被Windows95/98的膝上型电脑使用,也能在Windows2000的大型多处理器等平台上运行。
5.完备性。
其中包含一些附加的功能,如复制、DTS、分析服务(AnalysisServer)等。
其次还拥有着众多简洁易用、图形化操作的客户组件。
SQLServer主要包括以下客户组件:
企业管理器(EnterpriseManager)、服务管理器(ServiceManager)和查询分析器(QueryAnalyzer)。
SQLServer2005引入了SQLServerManagementStudio,这是一个新型的统一的管理工具组。
这个工具组包括一些新的功能,能够在开发、配置SQLServer数据库的同时发现、修理其中的故障,同时还能对以前的功能做一些改进。
2.3.5SQL语句
SQLServer2005数据库所使用的语句是SQL语句。
SQL是一种运用于数据库查询和程序设计的语言,它的主要功能包括数据的查询、更新和管理数据库系统。
SQL语言包含3个部分:
数据定义语言,例如:
CREATE、DROP、ALTER等语句;数据操作语言,例如:
INSERT(插入)、UPDATE(修改)、DELETE(删除)语句;数据控制语言,例如:
GRANT、REVOKE、COMMIT、ROLLBACK等语句[17]。
下面主要介绍数据操作语言和数据定义语言。
●SQL的数据查询:
SQL的数据的查询是数据库的核心操作,它使用SELECT语句进行数据库的查询操作,其一般格式为:
SELECT[ALL|DISTINCT]<目标列表达式>[,<目标列表达式>]
FROM<表名或视图名>[,<表名或视图名>]…
[WHERE<条件表达式>]
[GROUPBY<列名1>[HAVING<条件表达式>]]
[ORDERBY<列名2>[ASC|DESC]];
●SQL的数据更新:
SQL数据的更新通常包括数据的插入、删除和修改。
(1)插入(INSERT)语句一般格式为:
INSERT
INTO<表名>[(<属性列1>[,<属性列2>……])]
SELECT子查询语名;
(2)删除(DELETE)语句一般格式为:
DELETE
FROM<表名>
[WHERE<条件>];
(3)修改(UPDATE)语句一般格式为:
UPDATE<表名>
SET<列名1>=<表达式1>[,<列名2>=<表达式2>……]
[WHERE<条件>];
2.4本章小结
本章重点介绍了开发该系统所用到的关键技术。
介绍了博客系统的概述,这种基于ASP.NET平台开发目前流行的博客网页。
同时也简要介绍了本系统的开发运行环境,C#编程语言的背景及其优点和MicrosoftVisualStudio2008的相关技术。
最后对SQLServer2005数据库特点以及SQL语言做了比较详细的说明。
第三章系统分析与设计
3.1需求分析
需求分析在软件定义时期对目标系统提出了具体、全面、准确、清晰的要求,是软件开发能够顺利进行的前提条件,也是软件开发中最关键的一个环节。
为了创建更好的网络信息发布方式,使用户拥有一个属于自己的空间,同时方便浏览者获取大量的信息。
本迷你博客系统为用户提供了一个很好的平台,实现快速、高效的信息交流互动。
3.1.1系统总体框架设计
前台为标准浏览器(发出http请求至中间),中间为WEB服务器(接收请求,做出响应,返回结果),后台为SQLServer数据库(存放数据)。
整个系统结构及工作原理如图3-1所示:
http请求
http请求http请求
图3-1系统结构原理图
在软件体系架构中,三层从下至上分别为:
数据访问层、业务逻辑层、表现层。
表现层是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。
业务逻辑层是针对具体问题的操作,也可以是对数据层的操作,对数据业务逻辑处理。
数据访问层所做事务直接操作数据库,针对数据进行增添、删除、修改、更新查找等操作。
3.1.2系统结构图及功能描述
迷你博客系统需要满足两方面的要求,系统按照参与角色分供普通用户子系统和后台管理子系统。
1.管理员子系统结构图如图3-2所示:
管理员登录
图3-2管理员子系统结构图
管理员登录到后台管理员界面进行相关操作。
文章管理主要是用于修改和删除现有的博客文章,并对新的博客文章进行添加操作;评论管理主要用于删除过期或不需要的评论;管理员通过链接管理删除已存在的链接,添加新的链接到感兴趣的网址;留言管理和评论管理一样,管理员可以通过留言管理,删除过时或具有攻击性的留言信息;类型管理主要用于修改和删除当前博客列表中的博客文章类型,或者添加新的类型到博客网站中。
1.普通用户子系统的结构图如图3-2所示:
图3-3普通用户子系统结构图
普通用户登录时,系统为普通用户提供了浏览文章、查看网友回应、发表评论和发表留言的功能。
3.2基于UML的系统分析
3.2.1用例图
迷你博客系统的使用角色为普通用户和系统管理员。
通过对系统用例图的分析,我们可以清楚地知道管理员与普通用户执行的操作,他们之间的联系,更好地分析他们的需求关系。
1.普通用户用例图,如图3-4所示:
<
普通用户
图3-4普通用户用例图
上图显示了普通用户的7个用例分别为登录系统、发表评论、浏览文章、推荐文章、查看回复、发表留言、退出。
当该普通用户觉得一篇博客文章很精彩时,他可以推荐该博客文章文章。
2.管理员用例图如图3-5所示:
图3-5管理员用例图
此图为管理员用例图,包含了17个用例。
17个用例分别为登录系统、类型管理、删除类型、修改类型、添加类型、链接管理、添加链接、删除链接、评论管理、删除评论、留言管理、删除留言、文章管理、删除文章、修改文章、添加文章、注销退出。
以上用例都是系统管理员可以执行的操作。
3.3系统详细设计
详细设计阶段的根本任务是确定如何具体得到客户要求设计的目标系统,即详细设计每个模块实现算法,所需的局部结构等等。
由于详细设计的结果直接影响最终代码的质量,所以详细设计第一个任务是要保证程序的准确性以便于运行,第二是要保证编写的程序要简单易懂,便于测试、修改以及维护,以上两点都是是详细设计最重要的宗旨与目的[18]。
。
3.3.1系统功能模块设计
系统的主要功能主要分为两部分,分别前台应用模块与后台管理模块。
模块具体的设计过程如下:
一、系统前台功能模块:
●阅读文章模块
普通用户登入系统首页后可以根据兴趣随意浏览自己喜欢的博客文章和推荐文章。
●发表留言模块
普通用户可以通过此平台给博主留言,从而做到与博主很好的互动。
●发表评论模块
普通用户可以通过此平台发表自己评论,表达个人在看完博客文章后的观后感。
二、系统后台管理功能模块
●文章管理管理模块
管理员可以通过此模块查看文章信息,对博客文章进行选择删除、编辑和新建操作。
●文章类型管理模块
管理员可以通过此模块对对博客文章类型实行添加新类型、修改和删除操作。
●留言管理模块
管理员可以通过此对留言选择性地删除和回复。
●链接管理模块
管理员可以通过此模块输入网址添加到新的链接、删除现有的链接。
●评论管理模块
管理员可以通过此模块对评论实行删除操作。
3.3.2系统流程图
后台管理程序流程图是一个软件完整执行的过程概述。
用户登入本系统有一个验证过程,如果输入不对不能正常进入后台管理页面,如果正确则可以进入该界面,就可以实现对文章进行相关编辑操作。
博客系统流程图如图3-6所示:
否是
图3-6博客系统操作流程图
根据系统提供功能,绘制本系统操作流程图,以方便对本系统整体有一个清晰的认识。
当管理员登录时,先输入用户名和密码,则读取用户信息,登录到管理员页面。
如果用户名和密码正确,则登录到管理员页面。
如果用户名和密码错误,则弹出错误警告;当普通用户登录页面时,点击“直接转到主页”超链接,不需要验证就可以匿名进入主页。
管理员登录时可分别进入类型管理、文章管理、链接管理、留言管理、评论管理界面进行相关操作,最后注销退出页面;当普通用户登录主页面时,用户可根据用户的喜好浏览文章并推荐文章,对博客文章发表评论,给博主发表留言,最后退出页面。
3.4系统数据库设计
3.4.1实体关系图
实体关系图如3-7所示:
图3-7实体之间关系图
通过数据表之间的关系,可以清晰地了解博客系统数据标之间的关系,这里给出了主要
的数据表之间的关系图。
3.4.2数据库E-R图
根据数据流项,设计出满足用户需求的各种实体之间的关系。
这些实体包含各种具体信息,通过相互之间的作用形成数据的互动[1]。
本系统实体之间的关系E-R图如3-8所示:
1N
1
N
图3-8系统E-R图
本系统设计了以下实体:
管理员信息实体、文章类型信息实体、链接信息实体、留言信息实体、文章信息实体和评论信息实体和验证码信息实体[4]。
针对本系统的特点,需求信息如下:
一钟文章类型有多篇文章,一篇文章有多篇评论,因此系统E-R图如上图所示。
3.4.3数据库表设计
数据库的逻辑设计是概念模型向逻辑模型的转化,一般步骤是先将概念结构转化为关系模型,然后将转化来的关系模型向特定DBMS支持下的数据模型转换,最后对数据模型进行优化。
下面列举本系统用到的主要数据表[22]。
1.管理员信息表(ST_admin),如图3-9所示:
表3-9管理员信息表(ST_admin)
序号
字段
类型和长度
说明
1
ST_admin_user
nvarchar(50)
管理员的用户登入名
2
ST_admin_psw
nVarchar(50)
管理员密码
此表主要用于记录管理员的用户名密码。
2.文章类型信息表(ST_class),如图3-10所示:
Keys:
ST_c_id
表3-10文章类型信息表(ST_class)
序号
字段
类型和长度
说明
1
ST_c_id
nvarchar(8)
文章类型唯一ID号
2
ST_c_name
nVarchar(50)
文章类型名称
此表用于记录文章类型信息包括:
文章类型ID号、文章类型名称。
3.链接信息表(ST_link),如图3-11所示:
Keys:
ST_l_id
表3-11链接信息表(ST_link)
序号
字段
类型和长度
说明
1
ST_l_id
int(8)
链接唯一ID号
2
ST_l_name
nvarchar(50)
链接名称
3
ST_l_url
nvarchar(50)
链接地址
此表主要用于记录链接的相关信息包括:
链接ID号、链接名称、链接地址。
4.验证码表(codetable),如图3-12所示:
Keys:
Id
表3-12验证码表(ST_replay)
序号
字段
类型和长度
说明
1
Id
int(8)
字符串ID
2
Code
nchar(50)
生成校验图片的校验字符
此表主要用于记录验证码信息。
5.留言信息表(ST_message),如图3-13所示:
Keys:
ST_id
表3-13留言信息表(ST_message)
序号
字段
类型和长度
说明
1
ST_id
int(8)
留言唯一ID号
2
ST_nickname
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 个人 博客 网站 毕业设计