个人博客系统毕业设计论文

时间:2024.3.24

你如果认识从前的我,也许会原谅现在的我。

摘 要

随着Internet的广泛应用

动态网页技术也应运而生

本文介绍了应用ASP动态网页技术开发博客系统的设计与实现

博客系统主要为用户提供发表文章、浏览文章等功能

用户通过Internet可以发表一些自己撰写的文章以和其他网友进行交流

博客系统主要实现了文章管理的数字化、信息化、智能化

是打破传统报刊、杂志发表文章方式的新尝试

本系统的开发设计实现采用ASP技术

系统后台使用SQL Server 2008数据库

并通过使用ODBC技术访问

本文对博客系统进行整体分析

明确了系统的可行性和用户需求;根据模块化原理

规划设计了系统功能模块;在数据库设计部分

详细说明了系统数据库的结构和数据库的完整性、安全性措施;程序设计则采用面向对象的程序设计思想

提出系统的程序设计思路

对前台与后台功能的程序实现进行了详细论述;系统测试部分

具体分析测试过程中出现的主要问题

并提出了解决方案

实现系统功能

最后

对系统作以客观、全面的评价

并对进一步改进提出了建议

关键字:博客ASP SQL Server 2008 ODBC

目 录

1 系统概述 3

1.1项目背景 3

1.2系统开发的意义 4

1.2.1发布想法 4

1.2.2博客的用途 4

1.3 系统开发的目标 5

1.3.1任何拥有博客的人都可以做到 5

1.3.2 访问博客系统的人

可以做到 5

1.4系统概述 5

1.5 系统的开发方法 6

2 系统分析 8

2.1 可行性分析 8

2.2 需求分析 8

2.2.1 管理员登录 8

2.2.2 文章管理 9

2.2.3 系统信息管理 9

2.3 系统的主要技术分析 9

2.3.1 ASP技术概论 9

2.3.2 ASP工作原理 10

2.3.3 ODBC技术 10

2.3.4 硬件设备及操作系统 11

2.3.5 系统开发平台 11

2.4 数据分析 11

2.5 数据流图 12

3 数据库设计 13

3.1 数据库技术概述 13

3.2 数据库选择 13

3.3数据库逻辑结构设计 13

3.4 数据库的完整性和安全性 15

3.4.1 数据库的完整性约束 15

3.4.2 数据库的安全性 16 4 系统设计 17

4.1系统总体设计 17

4.2公用模块的编写 17

4.2.1数据库连接文件 17

4.2.2用户登录和注销 17

4.3客户界面的设计与实现 17

4.3.1 界面头设计 17

4.3.2 界面尾设计 18

4.3.3首页设计与实现 18

4.3.4用户注册模块设计 19

4.3.5"文章评论"功能模块设计 20

4.4管理界面设计 20

4.4.1"添加文章"功能模块 20

4.4.2"文章管理"功能模块 21

4.4.3"评论管理"功能模块 21

4.4.4"基本设置"功能模块 22

5 系统测试 22

5.1 测试目的 22

5.2 测试方法 22

5.3测试实例 23

5.3.1 后台管理权限测试 23

5.3.2 前台文章显示测试 23

5.3.3 前台显示文章详细内容测试 24

5.3.4 管理员登陆 24

5.3.6 文章管理 25

5.3.7 系统信息管理 26

总 结 27

致 谢 28

参考文献 29

附 录 30

1 系统概述

1.1项目背景

Blog

是Weblog的简称

Weblog

其实是Web和Log的组合词

Web

指World Wide Web

当然是指互连网了;Log的原义则是"航海日志"

后指任何类型的流水记录

合在一起来理解

Weblog就是在网络上的一种流水记录形式或者简称"网络日志"

Blogger或Weblogger

是指习惯于日常记录并使用Weblog工具的人

虽然在大陆早些时候或者台湾等地

对此概念的译名不尽相同(有的称为"网志"

有的称之为"网录"等等)

但目前已基本统一到"博客"一词上来

该词最早是在20xx年8月8日由著名的网络评论家王俊秀和方兴东共同撰文提出来的 博客也好

网志也罢

仅仅是一种名称而已

它的本义还是逃不过Weblog的范围

只是

通常我们所说的"博客"

既可用作名词Blogger或weblogger--指具有博客行为的一类人;也可以作动词用(相当于英文中的Weblog或blog)

指博客采取的具有博客行为反映、是第三方可以用视觉感受到的行为

即博客们所撰写的Blog

因此

"他/她是一位博客

他/她天天在博客"及"博客博什么客?"在中文语法与逻辑上都是正确

只是不同场合的用法不同罢了

Blog究竟是什么?说了半天

其实一个Blog就是一个网页

它通常是由简短且经常更新的帖子(Post)所构成

这些张贴的文章都按照年份和日期倒序排列

Blog的内容和目的有很大的不同

Blog的内容和目的有很大的不同

从对其他网站的超级链接和评论

有关公司、个人、构想的新闻到日记、照片、诗歌、散文

甚至科幻小说的发表或张贴都有

许多Blogs记录着blog个人所见、所闻、所想

还有一些Blogs则是一群人基于某个特定主题或共同利益领域的集体创作

撰写这些Weblog或Blog的人就叫做Blogger或Blog writer

博客存在的方式

一般分为三种类型:一是托管博客

无须自己注册域名、租用空间和编制网页

博客们只要去免费注册申请即可拥有自己的博客空间

是最"多快好省"的方式

如英文的、wordpress.com及多种语言的博客室(blogates.com)等都提供这样的服务;二是自建独立网站的博客

有自己的域名、空间和页面风格

需要一定的条件

如方兴东建立的"博客中国"站();三是附属博客

将自己的博客作为某一个网站的一部分(如一个栏目、一个频道或者一个地址) 这三类之间可以演变

甚至可以兼得

一人拥有多种博客网站

目前进行网站开发的语言很多

如ASP、PHP、JSP、ASP.NET等

究竟应该选择什么语言来开发一个BLOG网站呢

对于一个中小型的网站来说

ASP无疑是最好的选择

利用简单的HTML代码与脚本融合而成的ASP技术可以开发强大的Web应用程序 ASP(Active Sever Pages)是Microsoft推出的一种服务器端脚本环境

ASP内嵌于IIS中

让用户可以轻松的结合HTML Web页面、脚本和ActiveX组件建立或执行动态的、交互的Web服务器应用程序

ASP并不单指某一种编程语言

而是一门把HTML代码与VBScript和JavaScript等脚本语言融合在一起的技术 ASP技术的诞生

应该说是一项成功的技术

它开创了非专业人员开发高水平网站的历史

1.2系统开发的意义

1.2.1发布想法

博客能让个人在互联网上表达自己的心声

这是一个收集和共享任何感兴趣的事物的地方--可以是政治评论、个人日记或是指向您想记住的网站的链接

许多人使用博客只是要组织自己的想法

而有些人则在全球成千上万的浏览者中赢得影响力

职业和业余新闻记者使用博客发布特发新闻

而有写日记习惯的人则会在博客 中宣示自己内心的想法

而摄影和美术发烧者

可以通过博客 系统的管理自己的作品

无论您要发表什么意见

博客都可以帮您表达出来

博客作为一种新表达的方式

它的传播不仅情绪

包括大量的智慧、意见和思想

某种意义上说

它也是一种新的文化现象

博客的出现和繁荣

真正凸现网络的知识价值

标志着互联网发展开始步入更高的阶段

1.2.2博客的用途

(1)促进学习

写blog可以促进学习

想写出文章来

自然不能是泛泛的了解就可以的

要理解了才能写得出来的

这就促进了对某些领域的不断学习和思考

(2)记录收获

blog中

常常是记录下来都是瞬间的灵感

对事物的感悟

经过多日思考和实践的结果

对某个问题的解决方案等等

这些都是财富

要记录下来

(3)反映成长

写blog

可以反映出人的思考过程

而不仅仅是思考结果

对一个问题或领域

从不了解到了解

从了解到熟悉

从熟悉到精通

这纪录了一个人思考和解决问题的成长过程 很久之后

看到自己之前的文章

你将会觉得自己进步了

(4)结交朋友

写了blog

自然会有许多志趣相同的朋友来阅读 这可以认识许多朋友

大家有共同的兴趣爱好

自然谈得来

(5)共享知识

blog给大家看

大家的blog也给你看

这个问题我解决了

那个问题他解决了

大家互通有无

建立起一个社群

(6)交流看法

回复的人对blog的观点或赞同

或反对

大家一起讨论

听听别人的思想

可以促进双方的共同进步

(7)包装自己

看到一篇篇用心写出的文章

自然是对自己知识技能的最好宣传

1.3 系统开发的目标

1.3.1任何拥有博客的人都可以做到

(1)登录博客系统浏览文章

(2)管理自己博客的基本信息

(3)撰写个人随笔

(4)处理留言、文章评论等内容

1.3.2 访问博客系统的人

可以做到

游览博客系统中的文章目录、评论博客系统中的内容 只有博客管理员登录系统之后

才能进行管理

而博客系统的访问者不需要注册

也不需要登录就可以访问博客系统中的内容

1.4系统概述

一个博客其实就是由一序列网页组成的

它通常是由简短且经常更新的帖子所构成的

这些张贴的文章都按照年份和日期倒序列排列

能按照日期和主题检索

博客的内容和目的有很大的不同

有到其他网站的超级链接;有对其他网站的评论;有个人的日记 日常所思所想;有个人照片、诗歌、散文

甚至科幻小说的发表

正是由于博客能收容这些不拘于个人思想的表达

使博客这种交流和表达方式日益红火起来

博客秉承了个人网站的自由精神

也开拓了激发创造的新模式

能张扬人的个性

从这个意义上说

博客将会变得越来越普及

越来越为更多的人接受

本系统主要完成以下功能

1.客户界面部分

我的文章

给我留言

用户注册/登录

首页:我的头像

最新评论

最新文章

2.管理界面部分

文章管理

留言管理

基本设置

1.5 系统的开发方法

本系统主要采用ASP技术进行开发

ASP是服务器端的脚本执行环境

可用来产生和执行动态的高性能的WEB服务器程序

当用户使用浏览器请求ASP主页时

WEB服务器响应

调用ASP引擎来执行ASP文件

并解释其中的脚本语言(JScript 或VBScript)

通过ODBC连接数据库

由数据库访问组件ADO(ActiveX Data Objects)完成数据库操作

最后ASP生成包含有数据查询结果的HTML主页返回用户端显示

由于ASP在服务器端运行

运行结果以HTML主页形式返回用户浏览器

因而ASP源程序不会泄密

增加了系统的安全保密性

此外

ASP是面向对象的脚本环境

用户可自行增加ActiveX组件来扩充其功能

拓展应用范围

1. 本系统的前台开发采用Visual Studio 2010

Visual Studio 是微软公司推出的开发环境

Visual Studio 可以用来创建 Windows 平台下的 Windows 应用程序和网络应用程序 也可以用来创建网络服务、智能设备应用程序和 Office 插件

Visual Studio 2010特点:支持 Windows Azure

微软云计算架构迈入重要里程碑;助力移动与嵌入式装置开发

三屏一云商机无限; 实践当前最热门的 Agile/Scrum 开发方法

强化团队竞争力;升级的软件测试功能及工具

为软件质量严格把关; 搭配 Windows 7

Silverlight 4 与 Office

发挥多核并行运算威力

创建美感与效能并重的新一代软件; 支持最新C++标准

增强IDE

切实提高程序员开发效率

2. 本系统的后台数据库采用SQL Server 2008

SQL Server 2008是一个重大的产品版本

它推出了许多新的特性和关键的改进

使得它成为至今为止的最强大和最全面的SQL Server版本

这篇文章详细介绍了Microsoft SQL Server 2008中的新的特性、优点和功能...... 在现今数据的世界里

公司要获得成功和不断发展

他们需要定位主要的数据趋势的愿景

微软的这个数据平台愿景帮助公司满足这些数据爆炸和下一代数据驱动应用程序的需求 微软将继续投入和发展以下的关键领域来支持他们的数据平台愿景:关键任务企业数据平台、

动态开发、关系数据和商业智能

SQL Server 2008出现在微软数据平台愿景上是因为它使得公司可以运行他们最关键任务的应用程序

同时降低了管理数据基础设施和发送观察和信息给所有用户的成本

这个平台有以下特点:

· 可信任的--使得公司可以以很高的安全性、可靠性和可扩展性来运行他们最关键任务的应用程序

· 高效的--使得公司可以降低开发和管理他们的数据基础设施的时间和成本

· 智能的--提供了一个全面的平台

可以在你的用户需要的时候给他发送观察和信息

2 系统分析

2.1 可行性分析

可行性分析(Feasibility Analysis)也称为可行性研究

是在系统调查的基础上

针对新系统的开发是否具备必要性和可能性

对新系统的开发从技术、经济、社会的方面进行分析和研究

以避免投资失误

保证新系统的开发成功

可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决 为了确定开发具有可行性

对本系统主要进行了以下四个方面的分析

(1) 经济可行性

经济可行性主要是对项目的经济效益进行评价

本系统对系统开发者来说并不需要太高的成本支出

只是对系统的管理者付出管理报酬即可

而且开发周期不需要太长

节省了人力、物力、财力资源

所以本系统在经济上是可行的

(2) 技术上的可行性

技术上的可行性分析主要是分析技术条件能否顺利完成开发工作

硬、软件能否满足开发者的需要等

在软件方面

本系统采用的是ASP(Active Sever Pages)进行开发

前台网页设计使用的是vs2010

而数据库系统采用的是SQL Server 2008 r2

通过分析

在软、硬件方面现有工具与环境完全可以实现系统的开发

因此具有技术上的可行性

(3) 时机可行性

时机可行性是分析系统开发时机是否成熟

目前越来越多的应用程序都已经是转向基于Web的开发 并且Internet已经广泛使用

因此系统的设计具有时机可行性

(4) 管理上的可行性:主要是管理人员是否支持

现有的管理制度和方法是否科学

规章制度是否齐全

原始数据是否正确等

系统的开发主要就是为了方便校友信息的管理

补充现在传统管理方式的不足

因此具备了管理上的可行性

综上所述

本系统开发目标已明确

在技术和经济等方面具备可行性

并且投入少、见效快

因此系统的开发是完全可行的

2.2 需求分析

在可行性分析阶段已经简要地分析和研究了本系统的基本需求 也论证了开发平台及软件的可行性

但为了明确系统设计的目标

了解用户的需求

现对用户需求作以调研

从而进一步明确了设计所实现子系统的功能

2.2.1 管理员登录

在调研中了解到

用户想要使用系统

首先要有一个友好的用户注册界面

其次

用户需要经历登录验证过程

只有合法的拥有管理员身份的用户才可以使用系统中的管理功能 这样做可以防止非法用户登录并使用本系统

妨害数据安全

用户登录

通过系统登录验证

用户成功进入系统并开始使用其中功能

2.2.2 文章管理

文章管理是用户所有文章的信息

用户可以进入此处进行相关文章的管理

这部分主要包括以下方面:

(1) 文章信息显示

显示出所有文章的大概信息

(2) 发表新文章

可以发表新的文章

(3) 删除文章

允许用户对文章信息进行删除操作

2.2.3 系统信息管理

系统开始运行之后

随着时间的变化会有想要更改系统的相关信息的要求

比如:修改博客的个人头像

爱好

最难忘的事等等

因此需要提供信息修改的功能

2.3 系统的主要技术分析

2.3.1 ASP技术概论

Microsoft Active Server Pages 即我们所称的ASP

其实是一套微软开发的服务器端脚本环境

ASP内含于IIS3.0和4.0之中

通过ASP我们可以结合HTML网页、ASP指令和ActiveX元件建立动态、交互且高效的WEB服务器应用程序

有了ASP你就不必担心客户的浏览器是否能运行你所编写的代码

因为所有的程序都将在服务器端执行

包括所有嵌在普通HTML中的脚本程序

当程序执行完毕后

服务器仅将执行的结果返回给客户浏览器

这样也就减轻了客户端浏览器的负担

大大提高了交互的速度

以下罗列了Active Server Pages 所独具的一些特点:

1.使用VBScript、JScript等简单易懂的脚本语言

结合HTML代码

即可快速地完成网站的应用程序

2.无须compile编译

容易编写

可在服务器端直接执行

3.使用普通的文本编辑器

如Windows的记事本

即可进行编辑设计

4.与浏览器无关(Browser Independence)

用户端只要使用可执行HTML码的浏览器

即可浏览Active Server Pages所设计的网页内容

Active Server Pages所使用的脚本语言(VBScript 、Jscript)均在WEB服务器端执行 用户端的浏览器不需要能够执行这些脚本语言

5.Active Server Pages能与任何ActiveX scripting语言相容

除了可使用VBScript或JScript语言来设计外

还通过plug-in的方式

使用由第三方所提供的其他脚本语言

譬如REXX、Perl、Tcl等

脚本引擎是处理脚本程序的COM(Component Object Model)物件

6.Active Server Pages的源程序

不会被传到客户浏览器

因而可以避免所写的源程序被他人剽窃

也提高了程序的安全性

7.可使用服务器端的脚本来产生客户端的脚本

8.物件导向(Object-oriented)

9.ActiveX Server Components(ActiveX服务器元件)具有无限可扩充性

可以使用Visual Basic 、Java 、Visual C++ 、COBOL等编程语言来编写你所需要的ActiveX Server Component

2.3.2 ASP工作原理

ASP的执行过程

(1)用户在浏览器的地址栏中键入ASP文件

并回车触发这个ASP的申请

(2)浏览器将这个ASP的请求发送到给Web服务器

(3)Web Server接收这些申请并根据.asp的后缀名判断这是ASP要求

(4)Web Server 从硬盘或内存中读取正确的ASP文件

(5)Web Server 将这个文件发送到ASP.DLL的特定文件中

(6)ASP文件将会从头至尾执行并根据命令要求生成相应的HTML文件

(7)HTML文件被送回浏览器

(8)用户的浏览器解释这些HTML文件并将结果显示出来

图2-1 ASP工作原理

2.3.3 ODBC技术

ODBC的基本思想是为用户提供简单、标准、透明的数据库连接的公共编程接口 开发厂商根据ODBC的标准去实现底层的驱动程序

这个驱动对用户是透明的

并允许根据不同的DBMS采用不同的技术加以优化实现

这就利于不断吸收新的技术而趋完善

这同时也就是数据库驱动的思想

它很类似于Windows中打印驱动的思想

在Windows中

用户安装不同的打印驱动程序

使用同样一条打印语句或操作

就可很容易地实现在不同打印机上打印输出

而不需要了解内部的具体原理

ODBC出现以后

用户安装不同的DBMS驱动就可用同样的SQL语句实现在不同DBMS上进行同样的操作 而且无需预编译

ODBC带来了数据库连接方式的变革

如图1所示

在传统方式中

开发人员要熟悉多个DBMS及其API

一旦DBMS端出现变动

则往往导致用户端系统重新编建或者源代码的修改

这给开发和维护工作带来了很大困难

在ODBC方式中

不管底层网络环境如何

也无论采用何种DBMS

用户在程序中都使用同一套标准代码

无需逐个了解各DBMS及其API的特点

源程序不因底层的变化而重新编建或修改

从而减轻了开发维护的工作量

缩短了开发周期

ODBC具有以下灵活的特点:

1. 使用户程序有很高的互操作性

相同的目标代码适用于不同的DBMS;

2. 由于ODBC的开放性

它为程序集成提供了便利

为客户机/服务器结构提供了技术支持;

2.3.4 硬件设备及操作系统

为了满足系统开发设计的需要

表2.1为实现系统设计开发对硬件要求的最低配置

建议使用当前中等或以上计算机配置

表2-1 硬件要求配置表

CPU

要求在PⅢ以上

内存

256MB及其以上

硬盘

20GB及其以上

光驱

无要求

软驱

无要求

显示器

无要求

其他计算机设备

网卡等联网设备

2.3.5 系统开发平台

电脑配置:DELL电脑 CPU:P3 2.53 内存:2G 硬盘:320G 操作系统:Microsoft Windows7旗舰版

数据库:SQL Server 2008

开发平台:Visual Studio 2010

2.4 数据分析

博客系统中

主要是管理用户的文章、留言、系统信息等数据

数据的类型决定了程序对数据的处理方式也就是算法

因此

数据是系统实现分析的起点

现通过数据流图的方式分析系统中数据的流动和处理

对系统的管理员

在登录系统后

本系统接受管理员的修改、添加、删除请求

通过分析将这种请求转化成相应的SQL语句执行对数据库的相关的操作 并将执行的相应结果送回系统中

系统接收到数据库返回的结果集

经过一定的分析处理

将其转化成ASP页面

返回到客户端显示给用户

2.5 数据流图

博客整体图

文章管理细节图

3 数据库设计

3.1 数据库技术概述

数据库(Database)

是按照数据结构来组织、存储和管理数据的仓库

是用于查询的大量数据的存储区域

使用数据库可以带来许多好处:如减少了数据的冗余度

从而大大地节省了数据的存储空间

实现数据资源的充分共享等等

近年来推出的计算机关系数据库管理系统

还具有操作直观

使用灵活

编程方便

功能强大

环境适应广泛

数据处理能力极强等诸多优点

总的来说

数据库的设计对系统的经济性、功能性和效率有很大的影响 一个好的数据库

要求在设计时尽量避免数据的多余

另外

还要尽可能提高数据的存取速度

数据库设计时速度与空间在范式上是相互矛盾的

一方面按规范化理论的要求

关系模式应尽量取高级范式

尤其对记录数较多的关系

低级范式将会造成存储的大量重复

是空间遭受严重浪费;另一方面从存取速度上考虑 应该尽量做到一个模式涉及的属性越多越好

相互运算越少越好

这样

又应取低级范式

因此我们在设计数据库时要严格地探讨它的使用环境 充分了解用户的需求

清楚地掌握数据库系统的特点

经过综合的评价和分析后设计出的数据库应满足以下要求:

(1) 数据库信息要能充分体现出用户使用系统的需求

(2) 能够支持用户对数据进行的所有处理

(3) 能够容易被数据库管理系统运行维护

(4) 数据一致性、完整性好

无更新异常

3.2 数据库选择

本系统所采用的数据库是 SQL Server2008

SQL(Structured Query Language)

结构化查询语言

SQL语言的主要功能就是同各种数据库建立联系

进行沟通

按照ANSI(美国国家标准协会)的规定

SQL被作为关系型数据库管理系统的标准语言

SQL语句可以用来执行各种各样的操作

例如更新数据库中的数据

从数据库中提取数据等

绝大多数流行的关系型数据库管理系统都采用了SQL语言标准 虽然很多数据库都对SQL语句进行了再开发和扩展 但是包括Select

Insert

Update

Delete

Create

以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作

3.3数据库逻辑结构设计

数据库的概念结构设计完毕后

现在可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据模型 也就是数据库逻辑结构

根据博客的使用情况的不同

可以采用SQL Server 2008数据库

SQL Server 2008便于安装

博客系统中各个表的设计结果如下面表格所示

每个表格表示在数据库中的一个表:

表3-1 aspnet_Users注册用户表

表3-1 aspnet_Users注册用户表

用来记录用户信息

AddUser表记用户信息

其字段如表3-2所示

表3-3AddrizhiMessage博文信息表

表3-3 博文信息表

发表博文的信息存储

表3-4 Comments文章评论表

表3-4文章评论表

记录文章的所有评论

表3-5 liuyan文章表

表3-5为留言表

记录用户书写的所有留言

3.4 数据库的完整性和安全性

3.4.1 数据库的完整性约束

数据库的完整性是指数据的正确性和相容性

数据库管理系统(DBMS)用一定的机制来检查数据库中的数据是否满足规定的条件--完整性约束条件

数据的约束条件是语义的体现

将作为模式的一部分存入数据库中

数据库的完整性约束主要包括以下三方面要求:

(1)实体完整性

实体完整性是指若属性A是基本关系R的主属性

则属性A不能取空值

对于每个表来说

主键都不可以为空

在用户提交信息时

系统会对用户所填写的信息进行验证

对于其中的关键信息没有填写或者数据非法时

系统会提示用户更改后再提交

这样保证了系统实体完整性

(2)参照完整性

由于表和表之间会存在某些联系

当关系R和关系S之间是一对多关系时(R的主键是A

S的主键是b

c是s中的外码)

在插入数据时就要保证外码c的值或者为空或者等于R中某个元组的主码值

在对被参照表进行删除操作时应同时进行及联删除

(3)用户定义完整性

任何关系数据库系统都应该支持实体完整性和参照完整性

除此之外

不同的关系数据库系统根据其应用环境的不同

往往还需要一些特殊的约束条件

用户定义的完整性就是针对某一具体关系数据库的约束条件

它反映某一具体应用所涉及的数据必须满足的语义要求

例如某个属性必须取唯一值、某个属性的取值范围等

3.4.2 数据库的安全性

数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏 在数据库系统中

大量的数据集中存放

同时又为许多用户直接共享

是宝贵的信息资源

因此系统的安全保护措施就显得更为重要

键全的数据库安全机制可以防止数据库被恶意的破坏和非法的存取

本系统的安全设计包括服务器和数据库两方面设计

当用户使用系统时

系统首先会检查用户是否登录

如果用户还没有登录

系统将会弹出警告窗口提醒用户

并将相应的页面跳转至用户登录

在用户提交登录信息后

系统会对用户的身份进行核对

如果在数据库中查找到了相关记录

打开用户页面

表明用户登录成功

对于数据库的安全

主要是通过对授权用户的身份验证实现的

在的系统管理页面

提示用户使用管理员帐号在此登录

没有管理权限的系统注册用户无法登录到数据库管理的后台

系统确认了管理员身份之后统会打开管理页面

系统管理者可在此对整个系统的数据库进行管理和维护

4 系统设计

对博客系统进行系统分析、数据库设计之后

本章将主要介绍系统各功能模块的设计及其实现

软件所实现的功能强弱是衡量一个软件的最根本的标准

通过对系统的全面分析并结合调研的情况

确定了本系统的功能模块图

本章先从系统总体结构设计介绍

接着分别对公用模块、客户界面、管理对功能模块加以描述

4.1系统总体设计

本系统数据库采用SQL Sever

Web服务器采用IIS

4.2公用模块的编写

4.2.1数据库连接文件

为了操作数据库方便

把连接数据库、查询、更新、插入、关闭连接等数据库操作都写在一个公用文件web.config中

这样其他页面引入这个页面

就可以调用数据库操作方法

操作数据库了

这样便于提高程序的重用性

4.2.2用户登录和注销

把判定用户登录和注销的程序写在首页Default.asp中

当用户在首爷输入用户名和密码请求登录时

先从数据库查询该用户的用户名和密码是否正确

如果正确则把该用户的用户名和密码

写入用户Cookie

这样其他页面如果需要用户登录才能访问

只需要从Cookie取用户的用户名

如果能取得

则说明用户已经登录

否则用户未登录

当然用Cookie记录用户登录是有风险的

最好用Session记录

注销只需要设置记录用户的Cookie过期就可以了

4.3客户界面的设计与实现

界面模块化

可以提高代码的重用性

能为编程提供很大便利

节省开发时间

提高开发效率

4.3.1 界面头设计

(1)设计思想

为了体现简洁明快的风格

界面头不打算用很复杂的动画图片

顶部直接安排一个导航栏

让用户可以在首页、个人资料、博文、评论、博文管理、评论管理等模块之间方便的切换

2)效果预览

按上面的设计思想

经过一番美工的润饰

设计出的界面头的效果如图4-1所示

图4-1 界面头

4.3.2 界面尾设计

界面尾部

一般声明一些版权信息

是否有ISP登记

联系信息等

本博客只需声明一下版权就可以了

图4-2 界面尾

4.3.3首页设计与实现

首页是一个网站的窗口

长久留住一个用户靠网站强大的功能和丰富的内容

要想吸引用户

首页的设计精美和人性化也是重要的因素

首先是给浏览者留下的第一印象

所以设计要精美;首页是网站的导航图

所以设计要人性化

重点层次突出

设计思想

首页直接引入前面设计的公用模块的界面头和尾

首页左边给出浏览者一个清晰的导航

在右边用户能登录/注册、最新更新的博文列表、评论

在左边显示最新更新的博文信息

博客最核心的是文章

所以正文右边给出一块很大空间用以展示最新书写的几篇文章的标题和内容概要 用户单击博文标签能进入查看该文章的详细内容

图4-3为首页效果

图4-3 首页

4.3.4用户注册模块设计

页面Register.aspx主要完成引导用户进行注册

首先会提供注册表让用户输入用户名和密码等

让用户输入注册信息

输入完成后

当用户单击[注册]按钮的时候

要对用户输入的注册信息简单认证

看用户信息是否验证

如果验证进行数据库验证

查看用户之前是否已经注册过

如果没有注册则插入一条新记录到数据库

完成注册

图4-4 用户注册

4.3.5"文章评论"功能模块设计

在展现文章页面的末尾

提供接口供浏览者针对该文章发表评论

技术实现非常简单

就是提供发表评论标题和评论内容的文本框

让读者输入评论标题和内容

当读者单击[提交]按钮的时候

把评论标题和内容保存到数据库

4.4管理界面设计

4.4.1"添加文章"功能模块

通过"添加文章"功能模块用户能设置文章标题

选择文章所属分类

填写文章概要和文章内容

对应的页面是writeblog.aspx图

图4-5发表文章

4.4.2"文章管理"功能模块

"文章管理"功能模块主要显示当前用户所写的所有文章

并能修改或者删除现有文章

对应的处理页面是BlogManager.aspx

图4-6为效果图

图4-6日志管理

4.4.3"评论管理"功能模块

图4-7评论管理

4.4.4"基本设置"功能模块

用户可能需要为自己的博客设置非常有个性的标题、LOGO图标或者发表一个有个性的公告显示在首页等

为此需要为用户提供一个界面方便用户进行这些个性化设置

图4-8 个人资料

5 系统测试

5.1 测试目的

程序测试就是在程序投入运行前

对程序的需求分析、设计规格说明和编码的最终复审 是保证程序质量的关键步骤

如果要给程序测试下定义

可以这样讲

程序测试是为了发现错误而执行程序的过程

测试的目的就是在软件投入生产性运行之前 尽可能多地发现软件中的错误

在开发大型软件系统的过程中

需要面对错综复杂的问题

因此

在软件生存周期的每个阶段都不可避免地会产生错误 编程人员力求在每个阶段结束之前通过严格的技术审查 尽可能早的发现并纠正错误

5.2 测试方法

程序测试的主要方法分为两大类

白盒测试和黑盒测试

白盒测试:也称结构测试

将软件看成一个透明的白盒子

按照程序的内部结构和处理逻辑来选定测试用例 对软件的逻辑路径及过程进行测试

检查它与设计是否相符

黑盒测试:也称功能测试

将软件看作黑盒子

在完全不考虑程序的内部结构和特性的情况下 测试软件的外部特性

根据软件的需求规格说明书设计测试用例

从程序的输入和输出特性上测试是否满足设定的功能

在本次测试工作中使用了两种方法

但主要使用的是黑盒测试方法

5.3测试实例

5.3.1 后台管理权限测试

测试内容:非管理员用户点击管理按钮 系统是否会允许进入后台管理

操作:以浏览者的身份进入博客系统

点击管理按钮

结果:系统自动跳到注册的界面

如图

图5-1 创建新账户

5.3.2 前台文章显示测试

测试内容:打开前台首页后

是否会显示相应的文章列表

操作:打开前台首页查看

结果:文章列表区域正确显示发表的文章

结论:显示的内容与数据库中的内容一致 经调试成功

图5-2 显示博客内容

5.3.3 前台显示文章详细内容测试

测试内容:点击一个文章的标题

是否会显示出文章的全部内容

操作:随意点击一篇文章的标题

结果:在文章细节页面正确的显示出文章的全部内容

结论:测试成功

5.3.4 管理员登陆

测试1:

测试内容:填写用户名及密码

验证能否成功登陆

操作:① 填写正确的用户名及密码

② 填写错误的用户名或密码

结果:① 管理员成功登陆

② 提示用户登录失败

测试2:

测试内容:注册以已经注册的用户

系统是否会提示注册失败

操作:进入首页页面点击注册按钮进行用户名为"test"的注册 完成相关信息的后点完成

提示注册成功

重复以上操作再次注册用户名为"test"的用户

图5-3 注册

5.3.6 文章管理

(1) 发表文章

测试内容:管理员用户发表新文章

操作:以管理员的身份进入博客系统

点击管理按钮

选择添加文章的操作如图6-4所示

填写完文章内容之后单击添加按钮

看系统是否会提示发表成功

图5-4 发表文章

(2) 删除文章

测试内容:用户对自己所发表的文章信息能否成功删除

操作:点击删除系统询问是否删除该文章信息

结果:文章信息被成功删除

结论:测试成功

5.3.7 系统信息管理

(1) 显示原系统信息

测试内容:进入页面后

能否正确的显示原系统信息中的内容

操作:进入系统信息管理页面查看信息情况

结果:页面成功的显示出正确的信息

结论:测试成功

(2) 修改系统信息

测试内容:修改系统内容后

系统配置是否能正确反映

操作:分别修改系统信息中的不同的信息

结果:成功的修改了配置

并成功反应到系统中

结论:测试成功

总 结

经过3个月的努力

在老师的悉心帮助下

我终于完成了该论文

在此

我要深深感谢我的指导老师和所有帮助、支持过我的老师、同学们

通过此个人博客网站系统的开发

做到了理论联系实际

将书本上学到的知识与具体实践充分结合起来

既解决了工作中的一些问题

又进一步明确了开发管理信息系统的方法和思想;既加深了对管理信息系统的认识 又进一步巩固了以前所学的计算机软件开发方面的知识

提高了软件开发的水平

从而为今后在实际工作中更好的应用计算机进行信息管理打下了坚实的基础

本系统的设计开发基本上实现了博客应有的基本功能

用户通过使用系统可以利用Internet建立自己的博客系统

与互联网上的网友进行交流

并可以与网友们共同分享文章资源

由于是基于网络开发的系统

所以本系统具有网络应用系统方便、信息交流及时、系统使用不受地域限制等诸多优点 在世界任何角落

用户都可以通过Internet与其他人联系

本系统具有如下特点:

(1) 界面美观简洁

程序结构清晰

编码规范

软件工程的思想是本论文文档组织上的亮点

(2) 后台数据库采用的SQL Server 2008

它功能比较强大

可以处理包含在各种平台上运行的数据库管理系统内核

但同时也应该看到

由于时间仓促

本系统的功能实现还不是尽善尽美的

还存在需要改进的地方

例如系统的某些设计的可扩展性并不十分理想

在以后的系统维护过程中

使用重构方法对系统进行重构

使系统的设计日益趋于更强的可扩展性

希望在今后可以继续完善本系统设计

致 谢

在秦云涛的精心指导下完成了本次毕业设计

他丰富的专业知识、博爱的胸怀、谦逊的品质和严谨细致、一丝不苟的作风是我工作、学习中的榜样;他循循善诱的教导和不拘一格的思路给予我无尽的启迪

通过这短短几个月的毕业设计环节

我无论在基础理论知识、软件操作技能、还是独立思考问题能力方面都有了长足的进步 从开始的在做网站方面没有一点能力的我

到现在能做出一点一点成绩的我

真的很感谢老师的教导

与此同时

秦老师还经常教育我一些为人处事的道理

使我在增长知识的同时也收获了许多人生哲理

在此谨对秦老师致以衷心的感谢!本论文从选题、编程设计到毕业论文整个过程都倾注了秦老师的心血

再一次向他表示衷心的感谢和诚挚的敬意!同时要感谢我的学校

让我愉快而有意义的度过这五年的大学时光;感谢我的父母

他们给予了我极大的支持和鼓励;另外

还要感谢陪伴我共同走过大学时代并给予我帮助的老师、同学和朋友们

感谢你们

祝福你们在以后的日子里

开心、快乐!

参考文献

1. 张英男 高喆ASP.NET 2.0网络编程 北京电子出版社2008.4

2. 李岩 张瑞雪SQL Server 2005实用教程 清华大学出版社 2010.6

3. Css 实战手册 北京电子出版社 2007.9

4. 郑耀东.ASP.NET2.0从入门到实践北京:人清华大学出版社

2009.9

5. 茅健ASP.NET 2.0+ SQL Server 2005全程指南 北京电子出版社 2008.4

6. Visual studio 2005+ SQL Server 2005数据库应用系统开发 北京电子出版社 2007.8

7. 石志国. ASP.NET程序设计实用教程[M].北京

电子工业出版社

2006.7

8. 张蓓. ASP.NET通用模块及典型系统开发实例导航[M].北京

人民邮电出版社

2006.8

9. 邹建峰

李律松

李晓栓. ASP.NET开发技术详解[M].北京

人民邮电出版社

2005.9

10. 马林艺

张喜英

钱春升.软件工程[M].北京

机械工业出版社

2006.8

11. 吴晨

张亮

张静. ASP.NET + SQL Server数据库开发与实例[M].北京

清华大学出版社

2006.7

12. 孟小峰

王珊.数据库系统导论[M].北京

机械工业出版社

2000.9

13. 肖金秀

何鹏

王当文. ASP.NET 案例教程[M].北京

冶金工业出版社

2005.11

14. 冉晓旻(译). Visual C#.NET技术内幕(修订版)[M].北京

清华大学出版社

2007. 6

附 录

附录一 软件使用说明书

一 系统简介

博客能让个人在互联网上表达自己的心声

这是一个收集和共享任何感兴趣的事物的地方--可以是政治评论、个人日记或是指向您想记住的网站的链接

许多人使用博客只是要组织自己的想法

而有些人则在全球成千上万的浏览者中赢得影响力

职业和业余新闻记者使用博客发布特发新闻

而有写日记习惯的人则会在博客 中宣示自己内心的想法

而摄影和美术发烧者

可以通过博客 系统的管理自己的作品

无论您要发表什么意见

博客都可以帮您表达出来

二 操作说明

硬件环境

(1) 最低配置 PIII以上CPU

128MB以上内存

40GB硬盘

(2) 建议配置 P4 CPU

256MB内存

80GB硬盘以上

软件环境

(1)Windows 7

(2)完整安装Office2010

三 前台操作

首先会提供注册表单让用户输入用户名和密码等

用户输入注册信息

输入完成后

用户单击[注册]按钮

要对用户输入的注册信息简单认证

看用户信息是否验证

如果验证进行数据库验证

查看用户之前是否已经注册过

如果没有注册则插入一条新记录到数据库

完成注册

下面可以访问别人的BLOG

可选的操作有浏览文章

发表留言

文章评论等等

附录二 源代码

详情见毕业设计中

??

??

??

??

苏州市职业大学专科生毕业设计(论文)

1

大连交通大学2007届生毕业设计论文

更多相关推荐:
20xx级本科毕业论文(设计)工作总结

20xx级本科毕业论文(设计)工作总结毕业论文(设计)是实践教学的重要环节,是本科生综合运用所学基础理论、专业知识和基本技能、接受科学研究工作的初步训练,掌握科学研究的基本方法,培养独立工作能力的重要教学环节。…

1。毕业论文设计通知

关于成人高等教育本科毕业设计工作的通知各位同学:毕业设计工作是高等教育的一个重要环节,为了进一步规范我校成人本科教育毕业环节的教学管理工作,稳定教学质量,根据“中国农业大学成人高等教育本科毕业设计工作指导意见”…

20xx届顶岗实习、毕业论文(设计)工作计划

环境艺术工程系20xx届顶岗实习、毕业论文(设计)工作计划根据《河南职业技术学院关于毕业设计(论文)的有关规定》(院教字〔20xx〕10号)的精神及教务处《关于20xx届毕业生毕业设计(论文)工作安排的通知》,…

写毕业论文(设计)的步骤

写毕业论文(设计)的步骤完成一篇毕业论文,一般要经过以下几个步骤:一、二、三、四、五、选题收集、占有资料确立论点,拟定写作提纲撰写初稿修改定稿一、如何选题确立论文题目,就是确定研究的目标,研究的主攻方向。考生在…

博士研究生担任现代远程教育网上毕业论文(设计)助教的工作职责

博士研究生担任现代远程教育网上毕业论文(设计)助教的工作职责远程教育网上毕业论文(设计)助教是实施远程教育的主要学习支持服务措施。其目的是通过助教的网上毕业论文(设计)指导工作,使学生在做毕业论文(设计)的过程…

工民建专业毕业论文(设计)开题报告

xx大学毕业论文(设计)开题报告论文(设计)题目:办公楼姓学名:xxxx号:xxx所在院(系):xxx专指业导班教级:xxx师:xxx20xx年x月x日1选题背景本设计主要任务是设计一栋高层综合办公楼,此办公楼…

关于20xx届本科毕业论文(设计)答辩和总结工作的通知

天津财经大学教务处津财大教字[20xx]20号关于20xx届本科毕业论文(设计)答辩和总结工作的通知各学院、教学系(部):根据教学工作整体安排,20xx届本科毕业论文(设计)工作已进入中后期阶段,现将有关答辩、…

毕业论文设计过程表格

LiaoningNormalUniversity20xx届本科生毕业论文设计过程材料题目农村教师价值观的调查研究以阜新蒙古族自治县为例学院生命科学学院专业生物科学班级序号2班10号学号20xx181101009...

毕业论文(设计)撰写的内容与要求

毕业论文设计撰写的内容与要求一份完整的毕业论文设计应包括以下几方面1封面封面中应注明论文题目指导教师所学专业所在班级作者姓名2标题标题应概括整个论文最主要的内容恰当简明引人注目力求简短一般不宜超过20字如果有些...

毕业设计目录范本(以交通运输专业论文为例)

目录1绪论错误未定义书签11选题背景错误未定义书签12选题的目的与意义错误未定义书签13国内外研究现状错误未定义书签131国内研究现状错误未定义书签132国外研究现状错误未定义书签133小结错误未定义书签14研...

本科毕业论文设计排版范例

本科毕业论文设计排版范例一word文档题目命名每位学生一篇word文档文档题目为论文设计题目专业班级学生姓名指导教师姓名如苹果矮化砧木二倍体和四倍体抗盐性比较园艺0402班曹云指导教师邵建柱二论文开本及版芯设置...

毕业论文规格设计范文

毕业论文参考网站论文题目基于XML的制造企业知识管理系统的研究与实现学生指导教师教学单位管理工程系摘要用4号加粗宋体居中本文从企业知识管理概念出发从企业知识管理系统需求构成逻辑结构系统模型等方面对基于XML的中...

毕业论文设计(111篇)