您的位置:新文秘网>>毕业相关/毕业论文/文教论文/>>正文

毕业论文:B/S单用户博客系统设计

发表时间:2013/9/14 15:24:27

毕业论文:B/S单用户博客系统设计

摘 要
本系统采用B/S的设计模式,运用了Visual Studio .NET 2005、SQL Server 2005等软件开发工具,前台采用ASP.NNET 2.0,后台采用C#代码,通过这些技术设计出一个单用户博客系统,并实现了博客系统的基本功能。本系统包括了博文、图片和留言的管理与显示。在论文中给出了其中的重要代码,这些代码都是各功能实现的基础,也是其中的重点和难点。
本文首先介绍了相关技术的基础,接着给出数据库和网页的需求分析,详细地说明了设计本系统时在功能实现方面的思路,并对数据库和网页的设计都进行了详细的分析,最后总结自己的感想和展望。

关键词:ASP.NET,C#,单用户博客,数据库

ABSTRACT

The system uses a B/S design mode and the software development tools like Visual Studio .NET 2005、SQL Server 2005. ASP.NET 2.0 is used on the foreground and C# language is used on the background. The system makes a single-user blog while achieving the fundamental functions of the blog system. The system concludes the managements and visions about the articles, photos and messages. The thesis provides the important codes and these codes are not only the foundations of the functions but also the key points and difficult points.
The thesis introduces the foundations about the related technology at the beginning, then provides the requirement analyses about the database and the web pages which introduce the thinkings of the functions. And then the thesis analyses the designs of the database and the web pages. At the end of the thesis, I sum up my feelings and e*pectations.

Keywords:ASP.NET,C#,single-user blog,database


目 录

1 前言……………………………………………………………………1
1.1 选题背景以及发展现状………………………………………1
1.2 课题研究意义…………………………………………………1
2 系统设计相关技术……………………………………………………2
2.1 ASP.NET基本概述……………………………………………2
2.2 数据库及SQL Server 2005基本概述…………………………3
2.2.1 数据库…………………………………………………3
2.2.2 SQL Server 2005………………………………………3
2.3 .NET 2005开发环境及.NET框架………………
……(新文秘网https://www.wm114.cn省略2514字,正式会员可完整阅读)…… 
多。但是ASP.NET也有一个特点,就是每修改一次程序(即代码类)必须重新编译一次,修改几次就必须重新编译几次,执行效果也会有所降低。
因为ASP. NET是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.NET的Web应用中。ASP.NET同时也是language-independent(语言独立化)的,所以,用户可以选择一种最适合你的语言来编写程序,或者把程序用很多种语言来写,现在已经支持的有C#,VB,Jscript , C++、F++。将来,这样的多种程序语言协同工作的能力保护基于COM+开发的程序,能够完整地移植向ASP.NET。
2.2 数据库及SQL Server 2005基本概述
2.2.1 数据库
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。
数据库的基本结构分三个层次,反映了观察数据库的三种不同角度。
(1)物理数据层。
它是数据库的最内层,是物理存贮设备上实际存储的数据的集合。这些数据是原始数据,是用户加工的对象,由内部模式描述的指令操作处理的位串、字符和字组成。
(2)概念数据层。
它是数据库的中间一层,是数据库的整体逻辑表示。指出了每个数据的逻辑定义及数据间的逻辑联系,是存贮记录的集合。它所涉及的是数据库所有对象的逻辑关系,而不是它们的物理情况,是数据库管理员概念下的数据库。
(3)逻辑数据层。
它是用户所看到和使用的数据库,表示了一个或一些特定用户使用的数据集合,即逻辑记录的集合。
数据库不同层次之间的联系是通过映射进行转换的。
2.2.2 SQL Server 2005
SQL Server 是一个关系数据库管理系统。它最初是由Microsoft、Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNI* 操作系统上的应SQL Server安装界面用。
SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI) 工具提供了企业级的数据管理。SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使用户可以构建和管理用于业务的高可用和高性能的数据应用程序。
SQL Server 2005 数据引擎是本企业数据管理解决方案的核心。此外 SQL Server 2005 结合了分析、报表、集成和通知功能。这使企业可以构建和部署经济有效的 BI 解决方案,帮助团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。
与 Microsoft Visual Studio、Microsoft Office System 以及新的开发工具包(包括 Business Intelligence Development Studio)的紧密集成使 SQL Server 2005 与众不同。无论是开发人员、数据库管理员、信息工作者还是决策者,SQL Server 2005 都可以为用户提供创新的解决方案,帮助用户从数据中更多地获益。
2.3 .NET 2005开发环境及.NET框架
.NET Framework是微软公司提出的支持生成和运行下一代应用程序和*ML Web Services的内部Windows组件的平台,而Visual Studio.NET 2005是支持ASP.NET 2.0的开发环境。
. NET Framework具有两个主要组件:公共语言运行库和.NET Framework类库。公共语言运行库是.net Framework的基础,提供内存管理、线程管理和远程处理等核心服务,并且强制实施严格的类型安全以及可提高安全性和可靠性的其他形式的代码准确性。类库是一个综合性的面向对象的可重用类型集合,可以用于开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面应用程序,也包括基于ASP.NET所提供的最新创新的应用程序(如Web窗体和*ML Web Services)。
. NET Framework可由非托管组件承载,这些组件将公共语言运行库加载到它们的进程中并启动托管代码的执行,从而创建一个可以同时利用托管和非托管功能的软件环境。.net Framework不但提供若干运行库宿主,而且还支持第三方运行库宿主的开发。
公共语言运行库管理内存、线程执行、代码执行、代码安全验证、编译以及其他系统服务,这些功能是在公共语言运行库上运行的托管代码所固有的。
至于安全性,取决于包括托管组件的来源在内的一些因素,托管组件被赋予不同程度的信任,这意味着即使用在同一活动应用程序中,托管组件既可能能够执行文件访问操作、注册表访问操作或其他须小心使用的功能,也可能不能够执行这些功能。
运行库强制实施代码访问安全。例如,用户可以相信嵌入在Web页中的可执行文件能够在屏幕上播放动画或唱歌,但不能访问他们的个人数据、文件系统或网络。这样,运行库的安全性功能就使通过Internet部署的合法软件能够具有特别丰富的功能。
运行库还通过实现称为通用类型系统(CTS)的严格类型验证和代码验证基础结构来加强代码可靠性。CTS确保所有托管代码都是可以自我描述的。各种Microsoft和第三方语言编译器生成符合CTS的托管代码。这意味着托管代码可以在严格实施类型保真和类型安全的同时使用其他托管类型和实例。




















第三章 需求分析与设计

需求分析与设计主要对系统的功能和需求进行分析设计,简单的来说就是“做什么”,主要包括数据库需求分析、客户端需求分析和管理端需求分析三个部分。
3.1 数据库需求分析与设计
3.1.1 数据库需求分析
博客系统的数据库功能主要体现在对各种信息的提供、保存、更新和查询操作上,包括博文信息、评论信息、相片信息和留言信息等,各个部分的数据内容又有内在联系。针对该系统的数据及特点,可以总结出如下需求:
 博文信息表记录作者发表的文章信息
 评论信息表记录对应着某个文章浏览者发表的评论
 相片信息表记录个人相片信息
 留言信息表记录访客对博客主人的留言信息
 用户信息表记录博客主人的登录信息
根据以上系统功能分析与需求总结,设计如下的数据项和数据结构:
 博文信息表,包括数据项:编号、标题、主题、内容、发表日期、阅读人数
 评论信息表,包括数据项:编号、评论内容、评论人、评论日期、对应博文编号
 相片信息表,包括数据项:编号、图片名称、图片介绍、图片内容、上传日期
 留言信息表,包括数据项:编号、留言内容、留言人、留言日期
 用户信息表,包括数据项:编号、用户名、密码
3.1.2 数据库概念结构设计
得到上面的数据项和数据结构后,就可以设计满足需求的各种实体及相互关系了,再用E-R(Entity-Relationship)图将这些内容表达出来,为后面的逻辑结构设计打下基础。
本系统规划出的实体有:博文信息实体、评论信息实体、相片信息实体、留言信息实体和用户信息实体,它们之间的关系如下图3-1 ~ 3-5所示。






3.2 客户端需求分析与设计
博客系统客户端主要面向访问该博客的游客们,因此需要将数据库中的内容有针对性地展示在网页中,以供游客浏览。因此,博客客户端应包含以下功能:
 登录页面:游客通过登录页面的按键进入客户端主页面
 首页:游客进入博客网站后显示的主页面,主要显示博客主人的基本信息,最近发表的博文、评论和留言等
 博文目录页面:游客点击进入后,可以看到主人发表的一系列博文列表,点击其中一个博文即可阅读全文
 博客全文页面:游客点击某个博文后进入全文页面,可以阅读博文的详细内容以及相关评论,也可以针对该篇文章发表自己的评论
 我的相片页面:游客点击进入后可以浏览主人分享的一些图片

 留言页面:游客点击进入后可以浏览其他游客给主人的留言,也可以自己给主人留言
3.3 管理端需求分析与设计
博客系统管理端主要面向博客主人,方便博客主人对自己的博客内容进行管理,对其中共享的某些信息进行修改或删除等操作。因此,博客管理端应包含以下功能:
 登录页面:主人通过输入用户名和密码后,对用户名和密码进行匹配,密码正确则可以进入管理端主页面,错误则需要重新输入,当用户输错用户名或密码时也可以进行重置,方便用户更正
 首页:管理端首页与客户端首页相同,可参考客户端首页需求
 博文目录页面:主人点击进入后,可以对自己发表的博文进行添加、修改或删除操作。当按下“发表新文章”时,进入添加博文页面;当按下“修改”时,进入博文修改页面;当按下“删除”时,则对博文进行删除
 添加博文页面:进入添加博文页面后,可以发表新的文章
 博文修改页面:进入博文修改页面后,可以对博文进行修改,也可以对相应的评论进行删除
 我的相片页面:点击进入后,可以对图片进行添加和删除操作。当按下“添加新图片”时,可选择添加图片;当按下“删除”时,则对图片进行删除
 留言页面:点击进入后,可以对留言进行删除操作












第四章 数据库逻辑设计

博客系统数据库BlogData包括5张表,分别是用户信息表、博文信息表、评论信息表、相片信息表和留言信息表。
4.1 用户信息表
用户信息表(Admins)记录了用户的账号和密码。结构如表4-1所示。
列 名 数 据 类 型 长 度 允 许 空
AdminID int 4 否
AdminName nvarchar 50 否
Psaaword nvarchar 50 否
表4-1
创建数据表SQL语句如下:
use BlogData
go
set ansi_nulls on
go
set quoted_identifier on
go
create table [dbo].[Admins]
(
[AdminID] [int] identity(1,1) not null,
[AdminName] [nvarchar](50) collate Chinese_PRC_CI_AS not null,
[Password] [nvarchar](50) collate Chinese_PRC_CI_AS not null,
constraint [PK_Admins] primary key clustered
(
[AdminID] ASC
) with (ignore_dup_key = off) on [primary]
) on [primary]
代码解释:
Ansi_nulls设定为on后,null型将不再与空值相同;quoted_identifier设定为on后,文字必须由单引号分隔;indentity(1,1)设置了标识符,起始值为1,步进为1;collate Chinese_PRC_CI_AS为按照汉字排序规则进行排序;ignore_dup_key设定为off后,若向表中插入已有的主键值,则插入失败。
4.2 博文信息表
博文信息表(Articles)记录了博文的编号、标题、主题、内容等详细信息。结构如表4-2所示。
列 名 数 据 类 型 长 度 允 许 空
ArticleID int 4 否
Title nvarchar 50 是
A_Content nvarchar MA* 是
PublishedTime datetime - 是
Dec nvarchar 200 是
ViewNum int 4 否
表4-2
创建数据表SQL语句如下(字段定义部分):
[ArticleID] [int] id ……(未完,全文共39251字,当前仅显示7059字,请阅读下面提示信息。收藏《毕业论文:B/S单用户博客系统设计》