基于ASP_NET的个人博客网站的毕业设计

更新时间:2024-05-16 01:46:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

基于ASP.NET个人博客网站实现与设计

THE DESIGN

ANDIMPLEMENTATION OF ASP.NET-BASED PERSONAL BLOG

SITE

专 业: 计算机科学与技术 姓 名: 某某某 指导教师姓名: 申请学位级别: 学 士 论文提交日期: 2013年6月10日 学位授予单位: 某某大学

摘要

在互联网技术日益发展的现在,个人博客网站已经越来越让你给人们所熟知,本文介绍了采用ASP.net技术对个人博客网站的开发与实现。Blog的全名应该是Web log,中文意思是“网络日志”,后来缩写为Blog,而博客(Blogger)就是写Blog的人。从理解上讲,博客是“一种表达个人思想、网络链接、内容,按照时间顺序排列,并且不断更新的出版方式”。

本博客网站系统主要模块包括:文章管理模块、留言管理模块、相册管理模块,实现了用户在线文章浏览、文章发表、留言发布与回复、相册发布等功能,用户可以通过Internet发表一些自己撰写的文章以并且可以评论浏览其他网友网站进行交流。为用户提供了友好的个人信息共享和情感交流平台。它改变传统报刊、杂志发表文章的方式,突破了传统出版物的枷锁,实现文章创作的网络化,使传统繁琐的文章发表智能化、信息化、简单化、大众化。

本网站基于B/S模式,在VS2010开发环境下采用ASP.NET技术,后台数据库使用SQL Server2008,并采用三层架构模型,实现Blog网站的动态管理,使得对Blog信息的管理更加及时、高效,提高了工作效率。

关键词:博客网站;ASP.NET ;SQL Server2008;三层架构

ABSTRACT

InInternet

technologynowgrowing,

personal

blogsitehas

become

increasinglyallow you to givewell known,this paperdescribes the useof personalblogsitesASP.nettechnologydevelopmentand implementation. Blog's full name should be theWeb log,Chinesemeans \log\later shortened toBlog,andblog(Blogger)is

to

write

theBlogman.Fromunderstandingspeaking,blogis\expression of personal thoughts, Web links, content, arranged in chronological order, and constantly updatedpublishing methods.\

Thisblogsitesystemmain modulesinclude:articlemanagement module, message management module, photo album management module, the realization of the userbrowsingonline articles, articles published, publishing andreplycomments, album releaseand other functions, users can publishthrough the Internetarticles written bysome of his owntobrowseotheruserscan commentandwebsitesto communicate.Provides users with afriendly andpersonalinformation sharing andemotional communicationplatform. It changesthe traditionalnewspapers and magazinespublished articlesthe way, breaking the shackles oftraditional publications, to achieve the creation ofnetworkedarticle, the traditional tediousarticle was publishedintelligence, information, simplistic, popular. This site isbased onB / S mode, theVS2010developmentenvironment usingASP.NET technology, back-end databaseusingSQL Server 2008,and thethree-tiermodel, workefficiency.

the

realization

Blogsitedynamic

managementmakesBloginformation moretimely and efficientand improve

Keywords:blog site; ASP.NET; SQLServer2008;

某某大学2013届本科生毕业设计

第一章

引言

第一节 研究目的与意义

博客能让个人在互联网上表达自己的心声。这是一个收集和共享任何感兴趣的事物的地方--可以是政治评论、个人日记或是指向您想记住的网站的链接。许多人使用博客只是要组织自己的想法,而有些人则在全球成千上万的浏览者中赢得影响力。职业和业余新闻记者使用博客发布特发新闻,而有写日记习惯的人则会在博客中宣示自己内心的想法。而摄影和美术发烧者,可以通过博客系统的管理自己的作品,无论您要发表什么意见,博客都可以帮您表达出来。

博客作为一种新表达的方式,它的传播不仅情绪,包括大量的智慧、意见和思想。某种意义上说,它也是一种新的文化现象,博客的出现和繁荣,真正凸现网络的知识价值,标志着互联网发展开始步入更高的阶段。

其次博客也有许多用途,如:(1)促进学习。写blog可以促进学习,想写出文章来,自然不能是泛泛的了解就可以的,要理解了才能写得出来的。这就促进了对某些领域的不断学习和思考。(2)记录收获。blog中,常常是记录下来都是瞬间的灵感,对事物的感悟,经过多日思考和实践的结果,对某个问题的解决方案等等,这些都是财富,要记录下来。(3)反映成长。写blog,可以反映出人的思考过程,而不仅仅是思考结果。对一个问题或领域,从不了解到了解,从了解到熟悉,从熟悉到精通。这纪录了一个人思考和解决问题的成长过程。很久之后,看到自己之前的文章,你将会觉得自己进步了(4)结交朋友。写了blog,自然会有许多志趣相同的朋友来阅读,这可以认识许多朋友。大家有共同的兴趣爱好,自然谈得来。(5)共享知识。blog给大家看,大家的blog也给你看。这个问题我解决了,那个问题他解决了。大家互通有无,建立起一个社群。(6)交流看法。回复的人对blog的观点或赞同,或反对,大家一起讨论,听听别人的思想,可以促进双方的共同进步。(7)包装自己。看到一篇篇用心写出的文章,自然是对自己知识技能的最好宣传。

第二节 研究背景

计算机科学不断的发展,给信息共享提供了有利的客观条件。随着数字信息的全球化,对信息共享的需求日益增大。现在,不仅企业、集团、单位需要共享

某某大学2013届本科生毕业设计

自身的信息,个人信息共享的需求也是迫不急待。数字化的世界中,人与人的交流方式和传统的交流方式相比有所改变。主题网站是适应这种人际交流方式的改变,迎合个人信息共享的需求,并在此基础上快速发展起来的一种个人思想感情表达方式。主题网站的出现,给Internet世界的个人交流带来了极大的方便。

当今时代是计算机时代,人们的工作大部分都依赖计算机。计算机的功能仍在不断的增强,应用范围在不断扩大。在这种形势下,人与人之间的交流也在慢慢地计算机化。主题是发布个人信息、表达个人思想感情的一种有效方式,即主题网站就个人信息发布的场所,是人与人沟通的一个聚集地。因此,主题网站不仅需提供用户发布个人信息的功能,还需提供用户浏览信息的功能,查看用户所发布的个人信息的功能等。因此,主题网站的建设有其不容忽视的特殊意义。

第三节 系统技术介绍

一、ASP.NET程序设计语言特点介绍

ASP.NET是一种用于创建基于Web的应用程序的编程模型。从本质上来说,运行时和.NET Framework类库集可以用于创建动态Web页。它需要在Web服务器的环境中运行,例如Microsoft Internet Information Server(Microsoft互联网信息服务器,IIS),并且根据服务浏览器请求指示在服务器上执行程序。与直接由Web服务器提供的静态HTML不同的是,ASP.NET页面实际上是在服务器上执行以后再产生结果的。页面的最后生成也许是由许多不同的指令和/或数据源构造的。

ASP.NET页面以.aspx扩展名存储。页面由程序员将文本、标记(例如HTML)以ASP.NET特定服务器标记和脚本组合在一起,然后存储在Web服务器上。可以将存储后的ASP.NET页面看成是一套描述如何创建一个HTML页面的指令。当该页面被请求浏览时,服务器端程序将会用纯标记来创建一个客户端浏览器可以读懂并能呈现(render)的页面。因为呈现后的输出是纯标记,所以任何浏览器都能够读懂;所有的动态过程都发生在Web服务器端。

ASP.NET只是.NET Framework的一部分,所以 ASP.NET页面可以利用这个框架提供的所有服务,包括连网、数据访问、安全以及更多其他服务。ASP.NET的第一个版本(1.0和1.1)在2001年至2003年间迅速风靡了Microsoft的开发阵营。程序人员很快便感觉到他们通过使用强大和灵活的.NET Framework可以大大减少编码时间。

ASP.NET 2.0具有一些程序员可以使用的特定的服务器控件,用于在页面上添加数据交互。这些专门的数据控件分为两组:数据源控件和数据绑定控件。数

某某大学2013届本科生毕业设计

据源控件创建与数据库的链接。数据绑定控件则从数据源控件获取信息,并在页面上创建呈现。这种简单的双控件模式可用于多种情况。对于多种数据库类型,甚至是非关系型数据源,都有相应的数据源控件。同样地,有多种数据绑定控件可用来在页面上生成表格、树型、列表以及其他数据格式。

二、SQLServer数据库及其特点简介

SQL Server是一个关系数据库管理系统,是Microsoft推出新一代数据管理与分析软件。SQL Server是一个全面的、集成的、端到端的数据解决方案,它为企业中的用户提供了一个安全、可靠和高效的平台用于企业数据管理和商业智能应用。

SQL Server是一个全面的、集成的、端到端的数据解决方案,它为企业中的用户提供了一个安全、可靠和高效的平台用于企业数据管理和商业智能应用。SQL Server 2008 为IT专家和信息工作者带来了强大的、熟悉的工具,同时减少了在从移动设备到企业数据系统的多平台上创建、部署、管理及使用企业数据和分析应用程序的复杂度。通过全面的功能集、和现有系统的集成性、以及对日常任务的自动化管理能力,SQL Server 2008 为不同规模的企业提供了一个完整的数据解决方案。

三、VS2010开发工具及其特点介绍

Visual Studio 是一套完整的开发工具集,用于生成 ASP.NET.NET Web应用程序、XML Web Services、桌面应用程序和移动应用程序。Visual Basic、Visual C++、Visual C# 和 Visual J# 全都使用相同的集成开发环境 (IDE),利用此 IDE 可以共享工具且有助于创建混合语言解决方案。另外,这些语言利用了.NET Framework 的功能,通过此框架可使用简化ASP.NET Web 应用程序和XML Web Services开发的关键技术。

Microsoft Visual C# 2008(读作C sharp)是一种编程语言,它是为生成在.NET Framework上运行的多种应用程序而设计的。C#简单、功能强大、类型安全,而且是面向对象的。C# 凭借它的许多创新,在保持C样式语言的表示形式和优美的同时,实现了应用程序的快速开发。

Visual Studio 支持 Visual C#,这是通过功能齐全的代码编辑器、项目模板、设计器、代码向导、功能强大且易于使用的调试器以及其他工具实现的。通过.NET Framework 类库,可以访问多种操作系统服务和其他有用的精心设计的类,这些类可显著加快开发周期。

某某大学2013届本科生毕业设计

第二章

需求分析及概要设计

第一节 系统的功能需求

一、普通用户需求

对于普通用户来说,博客网站需要提供普通用户登录、注册功能,在登陆之后普通用户可以实行自己的权限,如:添加文章,查看留言,查看评论,上传照片完善自己的个人信息等等。 二、管理员需求

对于网站正常的运行,需要人员来管理网站,他的权限是可以对非法用户及不良文章进行管理及审查。 三、硬件需求

个人PC机:

A CPU:奔腾4.0用其以上 B 内存:256M及其以上 四、软件需求

A Windows Server 2003系统 B VS2010开发工具 C SQL 2008 D IIS5.0

第二节 功能模块结构化分

一、模块划分

通过对网站系统需求的调查研究,我们得出结论:博客网站应该对不同的用户提供不同的功能。经过调查分析,确定本网站的用户主要分为两种:后台管理员和普通用户。其中,考虑到网站的维护问题,决定提供一个管理员权限――网站后台管理员。因此,本网站主要分为两大模块:普通用户和管理员。 二、功能模块的初步设计 (一)普通用户模块

普通用户功能包括:登录及注册、发表浏览文章及留言、上传照片、浏览并评论好友文章,回复好友评论及留言等。

某某大学2013届本科生毕业设计

普通用户功能模块结构图:

普通用户查看日志查看留言查看相册查看个人档修改并保存管理博客浏览文章查看评论回复留言文章管理留言管理相册管理评论管理上传照片评论回复评论修改文章删除文章添加文章删除留言添加相册删除相册删除评论添加照片删除照片图 2.1.1普通用户功能模块结构图

1.登录及注册。普通用户可以通过申请注册用户成为该博客网的会员,然后登陆到自己的首页,浏览其他会员的网站,进行交流。

2.发表文章。系统还可以提供发表文章的功能,普通用户可以随时发表文章来交流自己内心情感,使其他会员可以立即了解到你的动态。

3.发布留言。系统可以提供留言功能,当普通用户浏览其他会员网站时,可以点击“给我留言”功能,给他留言,此留言为匿名留言,留言人可以自行输入。

4.上传照片。系统可以提供普通用户上传照片的功能。点击“上传照片”既可以选择该电脑上任意路径的图像上传。

5.浏览并评论好友文章。系统可以提供普通用户浏览其他会员文章功能,点击其他会员昵称即可进入该会员首页并浏览文章也可对自己感兴趣的文章进行评论。

6.回复评论及留言。系统可以提供普通用户回复功能。包括评论回复及留言回复,用户可以看到其他会员对自己文章的态度,也可以通过回复评论和留言进行交流。

7.博客管理。普通用户可以通过该模块对自己的文章进行修改及删除,同时可以对评论、留言、照片做同样操作。 (二)管理员模块

管理员功能模块包括:管理站内的用户及文章。

某某大学2013届本科生毕业设计

管理员功能模块结构图:

管理员文章管理用户管理浏览文章删除文章删除用户 图2.1.2管理员功能模块结构图

1.管理站内用户。系统可以提供管理员管理站内用户功能。管理员可以根据规则,对非法用户进行删除。

2.管理文章作品。系统可以提供管理员管理文章作品的功能。管理员根据规则可以对文章做删除操作。系统提供搜索功能,管理员可通过文章标题、摘要、内容(任意匹配)、类型、作者查询具体文章,然后执行操作。管理操作一旦执行,该文章所对应相关信息就从数据库里删除。管理员对文章的管理,还包括对文章类型的管理,即添加和删除文章类型。

某某大学2013届本科生毕业设计

第三章

数据库设计与分析

第一节 数据库技术概述

数据库(Database),是按照数据结构来组织、存储和管理数据的仓库,是用于查询的大量数据的存储区域。使用数据库可以带来许多好处:如减少了数据的冗余度,从而大大地节省了数据的存储空间,实现数据资源的充分共享等等。近年来推出的计算机关系数据库管理系统,还具有操作直观,使用灵活,编程方便,功能强大,环境适应广泛,数据处理能力极强等诸多优点。

数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。

数据库技术是信息系统的一个核心技术。是一种计算机辅助管理数据的方法,它研究如何组织和存储数据,如何高效地获取和处理数据。是通过研究数据库的结构、存储、设计、管理以及应用的基本理论和实现方法,并利用这些理论来实现对数据库中的数据进行处理、分析和理解的技术。即:数据库技术是研究、管理和应用数据库的一门软件科学。

数据库技术研究和管理的对象是数据,所以数据库技术所涉及的具体内容主要包括:通过对数据的统一组织和管理,按照指定的结构建立相应的数据库和数据仓库;利用数据库管理系统和数据挖掘系统设计出能够实现对数据库中的数据进行添加、修改、删除、处理、分析、理解、报表和打印等多种功能的数据管理和数据挖掘应用系统;并利用应用管理系统最终实现对数据的处理、分析和理解。

总的来说,数据库的设计对系统的经济性、功能性和效率有很大的影响,一个好的数据库,要求在设计时尽量避免数据的多余,另外,还要尽可能提高数据的存取速度。数据库设计时速度与空间在范式上是相互矛盾的。一方面按规范化理论的要求,关系模式应尽量取高级范式,尤其对记录数较多的关系,低级范式将会造成存储的大量重复,是空间遭受严重浪费;另一方面从存取速度上考虑,应该尽量做到一个模式涉及的属性越多越好,相互运算越少越好,这样,又应取低级范式。因此我们在设计数据库时要严格地探讨它的使用环境,充分了解用户的需求,清楚地掌握数据库系统的特点。经过综合的评价和分析后设计出的数据库应满足以下要求:

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

某某大学2013届本科生毕业设计

(2) 能够支持用户对数据进行的所有处理。 (3) 能够容易被数据库管理系统运行维护。 (4) 数据一致性、完整性好,无更新异常。

第二节 数据库的选择

常用的数据库一般是分为五种:Access、SqlServer、MySQL、Oracle、DB2,其中:主流的商业数据库有Oracle、微软SQL Server、IBM DB2,而MySQL微开源数据库。

SQL Server的特点是真正的客户/服务器体系结构,并且是图形化的用户界面,使数据库管理方式更加直观和简单。它还提供了丰富的编程接口工具为用户进行程序设计提供了更大的选择余地。

本系统采用了SQL Server 2008数据库:

SQL Server 2008数据库提供了一个新的解决方案,公司可以使用其存储和管理许多数据类型,包括XML、e-mail、时间/日历、文件、文档、地理等等,同时提供一个丰富的服务集合来与数据交互作用:搜索、查询、数据分析、报表、数据整合,和强大的同步功能。用户可以访问从创建到存档于任何设备的信息,从桌面到移动设备的信息。此外,公司可以运行他们最关键任务的应用程序,同时降低了管理数据基础设施和发送观察和信息给所有用户的成本。

这个平台有以下特点:

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

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

3.智能的——提供了一个全面的平台,可以在你的用户需要的时候给他发送观察和信息。

第三节 数据库逻辑结构设计

根据需求分析及模块划分,设计数据库表结构如下:

(一)管理员信息表

管理员信息表对应数据库中表Admins,存储管理员基本信息,如姓名、密码,具体设计如表3.3.1所示。

某某大学2013届本科生毕业设计

表 3.3.1管理员信息表

列名 AdminID AdminName Password (二)日志文章表

数据类型 int Nvarchar(50) Nvarchar(50) 是否为空 Fasle Fasle Fasle 日志文章表对应数据库中表Articles,存储日志的基本信息,如文章标题、内容、发表时间、发表人等,其中ArticleID为主键,具体设计如表3.3.2所示:

表 3.3.2 日志文章表

列名 ArticleID Title A_Content PublishedTime Tag_ID Dec ViewNum UserName

(三)日志评论表

数据类型 Int Nvarchar(50) Nvarchar(MAX) Datetime Int Nvarchar(200) Int Nvarchar(50) 是否为空 Fasle Fasle True Fasle Fasle Fasle Fasle Fasle 日志文章表对应数据库中表Articles,存储日志的基本信息,如评论内容、评论人、评论时间、日志编号、回复内容、回复时间等,其中Cmt_ID为主键,ArticleID为外键,具体设计如表3.3.3所示:

表 3.3.3日志评论表

列名 Cmt_ID Cmt_Content Cmt_UserName Cmt_Time ArticleID reply reply_time

数据类型 int nvarchar(MAX) nvarchar(50) datetime int nvarchar(1000) datetime 是否为空 Fasle True True True Fasle True True 某某大学2013届本科生毕业设计

(四)管理员登录表

管理员登录表对应数据库中表denglu,存储管理员登录的基本信息,如编号、属性等,具体设计如表3.3.4所示:

表 3.3.4 管理员登录表

列名 id shu (五)留言表

数据类型 int int 是否为空 Fasle Fasle 日志文章表对应数据库中表Messages,存储留言的基本信息,如留言题目、留言内容、留言人、留言时间、回复内容、回复时间、被留言人等,其中Msg_ID为主键,具体设计如表3.3.4所示:

表3.3.4留言表

列名 Msg_ID Msg_Title Msg_Content Msg_User AddDate Reply ReplyData Msg_ToUser

(五)照片信息表

数据类型 int nvarchar(150) nvarchar(1000) nvarchar(50) datetime nvarchar(1000) datetime nvarchar(50) 是否为空 True True True True True True True True 照片信息表对应数据库中表Photos,存储照片的基本信息,如照片名称、照片介绍、存储路径、上传时间、相册名称、上传人等,其中Photo_ID为主键,具体设计如表3.3.5所示:

表 3.3.5照片信息表

列名 Photo_ID Photo_Name Photo_Intro 数据类型 int nvarchar(50) nvarchar(200) 是否为空 Fasle True True

某某大学2013届本科生毕业设计

Photo_Url AddDate xclb UserName

(六)相册信息表

nvarchar(150) datetime nvarchar(50) nvarchar(50) True True True True 相册信息表对应数据库中表Xcm,存储相册的基本信息,如相册名称、上传人等,具体设计如表3.3.6所示:

表3.3.6相册信息表

列名 id xclb username

(七)注册用户信息表

数据类型 int nvarchar(50) nvarchar(50) 是否为空 Fasle True True 注册用户信息表对应数据库中表zhuce,存储注册用户的基本信息,如用户名、密码、邮箱、性别、生日、工作、地址、爱好、血型等,具体设计如表3.3.7所示:

表3.3.7注册用户信息表

列名 ID username password e_mail sex birthday jop address hobby bloodtype

数据类型 int varchar(50) varchar(50) varchar(50) varchar(10) varchar(50) varchar(50) varchar(50) varchar(50) varchar(50) 是否为空 Fasle Fasle True Fasle True True True True True True 某某大学2013届本科生毕业设计

第四章

详细设计与实现

第一节管理员模块设计

一、管理员登录模块

管理员登陆模块通过在登录页面中点击“管理员登录”按钮跳转到管理员的登陆界面(Admin/login.aspx),其中用户名、密码是唯一的admin,在数据库中已经设计完成。管理员输入正确的用户名和密码后,点击“登录”按钮执行SQL查询语句,正确跳转制管理员模块。

图4.1.1管理员登录

管理员管理模块分为文章管理模块与用户管理模块:

图4.1.2 管理员管理页面

某某大学2013届本科生毕业设计

( Cmt_Content,Cmt_UserName,Cmt_Time,ArticleID) values('\ +

TextBox2.Text + \ + TextBox1.Text + \ + DateTime.Now + \ + id + \;

SqlCommand cmd = newSqlCommand(s, myconn); cmd.ExecuteNonQuery(); myconn.Close();

Response.Write(MessageBox.ShowMessage(\评论成功!

\,\)); }

二、查看评论功能模块

在这个模块中,点击“查看评论”按钮跳转至mycomment.aspx页面,该页面采用GridView控件进行数据绑定。用户可以查看当前文章对应的评论信息,显示评论人、评论内容及评论时间,并且用户可以回复当前的评论。如图4.3.3所示:

图 4.3.3 查看评论

用户再回复当前评论时,会跳转至新的页面commentreply.aspx如图4.3.4,在此页面中用户可以填写回复的内容,并将内容更新到数据表Comments中。

图4.3.4 评论回复页面

主要代码如下:

某某大学2013届本科生毕业设计

protectedvoid Button1_Click(object sender, EventArgs e) {

int id = Convert.ToInt32(Request.QueryString[\].ToString()); DBaccess dba = newDBaccess (); int aa;

aa = dba.updatecmtreply(tbx_reply.Text, DateTime.Now, id); if (aa == 1) {

Response.Write(\回复成功!

');window.location.href='myarticle.aspx'\);

} else

Response.Write(\回复失败!')\); }

其中,数据库的操作调用DBaccess类中的updatecmtreply()方法,代码如下: publicint updatecmtreply(string Reply, DateTime replytime, int Cmtid) {

string str = \ + Reply + \ + replytime +

\ + Cmtid;

DBHelp db = newDBHelp(); int aa = db.UpdataAccess(str); return aa;

}

第四节相册功能模块设计

在相册模块主要提供用户浏览相册及相应照片的功能,当用户点击“相册“按钮时,跳转至lblist.aspx相册列表页面如图4.3.5,展示出自己的相册,点击对应的相册跳转至photolist.aspx照片列表页面如图4.3.6,最后点击相应照片既可以查看浏览照片如图4.3.7。

图4.3.5 相册列表

其中,实现此功能用DataList控件绑定数据源,并通过查询语句显示列表,主要的代码为: void Bind_Data()

某某大学2013届本科生毕业设计

{

string username = Request.Cookies[\].Value.ToString(); string settings =

Convert.ToString(ConfigurationManager.ConnectionStrings[\]); SqlConnection myconn = newSqlConnection(settings); myconn.Open();

string strsql = \ + username + \; SqlCommand mycmd = newSqlCommand(strsql, myconn); SqlDataReader result =

mycmd.ExecuteReader(CommandBehavior.CloseConnection); dl_tags.DataSource = result;//绑定数据源 dl_tags.DataBind(); }

图 4.3.6 照片列表

其中,应用GridView控件来来实现此功能,主要代码如下: void Bind_Data() {

string xclb = Request.QueryString[\].ToString(); string settings =

Convert.ToString(ConfigurationManager.ConnectionStrings[\]); SqlConnection myconn = newSqlConnection(settings); myconn.Open();

string strsql = \+xclb+\; SqlCommand mycmd = newSqlCommand(strsql, myconn); SqlDataReader result =

mycmd.ExecuteReader(CommandBehavior.CloseConnection);

gv_photo.DataSource = result; //绑定数据

gv_photo.DataBind(); }

某某大学2013届本科生毕业设计

图 4.3.7 显示照片

其中,此功能使用Image控件来显示相片的。

第四节 留言功能模块设计

在留言模块中,用户可以查看自己的留言,也可以添加新的留言,同时可以回复好友的留言,其中显示界面如图4.4.1所示:

图 4.4.1 我的留言

在显示留言时,使用GridView控件进行数据绑定,其中的“留言标题”列为可连接字段,当点击时链接到新的页面liuyan.aspx。当点击“添加新留言”按钮时,执行函数btn_add_Click(),跳转至新的页面message.aspx,向数据表Messages插入一条新的是数据,主要代码如下: protectedvoid btn_add_Click(object sender, EventArgs e) {

string title = tbx_title.Text;

string content = tbx_content.Text; string user = tbx_user.Text;

string username = Request.Cookies[\].Value.ToString(); //读取数据库连接字符串

某某大学2013届本科生毕业设计

string settings =

Convert.ToString(ConfigurationManager.ConnectionStrings[\]); SqlConnection myconn = newSqlConnection(settings); myconn.Open();

int id = Convert.ToInt32(Request.QueryString[\]); string strsql = \

(Msg_Title,Msg_Content,Msg_User,AddDate,Msg_ToUser)\; strsql = strsql + \ + \ + title + \;

strsql = strsql + \ + content + \ + \ + user + \ + DateTime.Now + \+username +\;

SqlCommand mycmd = newSqlCommand(strsql, myconn); mycmd.ExecuteNonQuery();

Response.Write(\留言成功!

');window.location.href='Default4.aspx'\);

}

在回复留言时,点击“回复”按钮跳转至messagereply.aspx页面,如图4.4.2所示:

图4.4.2 留言回复

点击确定按钮后,更新数据表Messages,代码如下:

protectedvoid btnreply_Click(object sender, EventArgs e) {

int id = Convert.ToInt32(Request.QueryString[\].ToString()); DBaccess dba = newDBaccess (); int b;

b = dba.updatemsgreply(tbx_content.Text, DateTime.Now ,id ); if (b == 1) {

某某大学2013届本科生毕业设计

int id = int.Parse(gv_comment.DataKeys[e.RowIndex].Values[0].ToString()); string strsql = \ + id; SqlCommand mycmd = newSqlCommand(strsql, myconn); mycmd.ExecuteNonQuery(); myconn.Close(); Bind_Data(); }

三、相册管理模块

相册管理主要有添加相册、删除相册及编辑相册功能,如图4.6.5所示;

图 4.6.5 相册管理

其中,删除相册与管理评论模块的删除功能相似,在编辑相册时,就是对该相册的修改操作,可以输入新的名称后点击“更新”按钮,会执行gv_photo_RowUpdating()方法,更新相册表Xcm,主要代码:

protectedvoid gv_photo_RowUpdating(object sender, GridViewUpdateEventArgs e) {

string settings =

Convert.ToString(ConfigurationManager.ConnectionStrings[\]); SqlConnection myconn = newSqlConnection(settings); myconn.Open();

int id = int.Parse(gv_photo.DataKeys[e.RowIndex].Values[0].ToString());

string lxmc = ((TextBox)(gv_photo.Rows[e.RowIndex].Cells[0].Controls[0])).Text; string strsql = \+ lxmc + \+ id +\; SqlCommand mycmd = newSqlCommand(strsql, myconn); mycmd.ExecuteNonQuery(); myconn.Close();

gv_photo.EditIndex = -1; Bind_Data();

}

当用户点击“添加相册”按钮时,会向数据表Xcm插入一条新的数据,代码

某某大学2013届本科生毕业设计

如下:

protectedvoid btn_add_Click(object sender, EventArgs e) {

string name = tbx_name.Text;

string username = Request.Cookies[\].Value.ToString(); string settings =

Convert.ToString(ConfigurationManager.ConnectionStrings[\]); SqlConnection myconn = newSqlConnection(settings); myconn.Open();

string strsql = \;

strsql = strsql + \ + name + \+username +\; SqlCommand mycmd = newSqlCommand(strsql, myconn); mycmd.ExecuteNonQuery();

}

四、上传照片模块

再上传照片模块通过PhotoManage.aspx页面显示,首先提供删除照片功能,此功能同上面删除评论操作相似,首先通过GridView控件进行数据绑定来显示数据,用户可以查看照片名称和所属相册,之后根据自己的兴趣将不喜欢的删除,调用gv_photo_RowDeleting()方法,执行SQL的删除语句将数据表Photos中的相应数据删除。如图4.6.6所示:

图 4.6.6 照片管理

当用户点击“添加照片”按钮时,用户可以上传自己的照片到对应的相册中,用户还可以根据照片来填写照片名称以及对照片进行描述,如图4.6.7。

某某大学2013届本科生毕业设计

图 4.6.7 添加照片

其中,所属相册是使用DropDownList控件实现,上传功能使用FileUpload控件来浏览照片,当点击“添加”按钮时,执行btn_add_Click()方法,将所选择的照片添加到Photos表中,代码如下:

protectedvoid btn_add_Click(object sender, EventArgs e) {

if (Page.IsValid) {

Boolean fileOK = false;

String path = Server.MapPath(\); if (FileUpload1.HasFile) {

String fileExtension =

System.IO.Path.GetExtension(FileUpload1.FileName).ToLower(); String[] allowedExtensions =

{ \, \, \, \ }; for (int i = 0; i < allowedExtensions.Length; i++) {

if (fileExtension == allowedExtensions[i]) {

fileOK = true; } } } if (fileOK)

{ try

{

FileUpload1.PostedFile.SaveAs(path

+ FileUpload1.FileName);

string picpath = \ + FileUpload1.FileName;

某某大学2013届本科生毕业设计

string name = tbx_name.Text; string dec = tbx_dec.Text;

DateTime date = DateTime.Now;

string username = Request.Cookies[\].Value.ToString();string settings =

Convert.ToString(ConfigurationManager.ConnectionStrings[\]);

SqlConnection myconn = newSqlConnection(settings); myconn.Open();

string xcm = DropDownList1.Text; string strsql = \

photos(Photo_Name,Adddate,Photo_Intro,Photo_Url,xclb,UserName)\; strsql = strsql + \ + name + \; strsql = strsql + date + \ + dec + \; strsql = strsql + picpath + \+ xcm +\; strsql = strsql + username + \; SqlCommand mycmd = newSqlCommand(strsql, myconn); mycmd.ExecuteNonQuery();

Response.Redirect(\);

} catch (Exception ex) {

lbl_msg.Text = \上传出?现问题\; } } else

{

lbl_msg.Text = \上传文件类型错误!\; } }

五、留言管理模块

留言管理功能主要是用户对留言做删除操作的模块,如图4.6.8所示。首先通过GridView控件数据绑定来显示内容,当用户点击“删除”按钮时,会执行gv_message_RowDeleting()方法,删除数据表Messages中的相应数据。

某某大学2013届本科生毕业设计

图 4.6.8 留言管理

第五章

系统测试

第一节测试方法及目的

一、测试方法 (一)黑盒测试。

如果已经知道了系统应该具有的功能,通过测试来检验是否每个功能都正常使用,这种方法称为黑盒测试。黑盒测试就是把程序看作一个黑盒子,完全不考

某某大学2013届本科生毕业设计

虑程序的内部结构和处理过程。也就是说,黑盒测试是在程序接口进行的测试,它只检验程序功能是否能按照规定正常使用,程序是否能适当地接受输入数据并产生正确输出信息,程序运行过程中能否保持外部信息(如数据库或文件)的完整性。因此,黑盒测试又称为功能测试。 (二)白盒测试。

如果知道系统内部工作过程,可以通过检测代码来检验系统内部动作是否按照规定正常进行,这种方法称为白盒测试。与黑盒测试相反,白盒测试的前提是把程序看成在一个透明的白盒子里,测试者完全知道程序的结构和处理算法。这种方法按照程序内部的逻辑测试程序,检验程序中的主要执行通路是否都能按预定要求正常工作。因此,白盒测试又称为结构测试。 二、测试目的

软件的测试在软件生命周期中占据重要的地位,在传统的瀑布模型中,软件测试学仅处于运行维护阶段之前,是软件产品交付用户使用之前保证软件质量的重要手段。近来,软件工程界趋向于一种新的观点,即认为软件生命周期每一阶段中都应包含测试,从而检验本阶段的成果是否接近预期的目标,尽可能早的发现错误并加以修正,如果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难。

事实上,对于软件来讲,不论采用什么技术和什么方法,软件中仍然会有错。采用新的语言、先进的开发方式、完善的开发过程,可以减少错误的引入,但是不可能完全杜绝软件中的错误,这些引入的错误需要测试来找出,软件中的错误密度也需要测试来进行估计。测试是所有工程学科的基本组成单元,是软件开发的重要部分。自有程序设计的那天起测试就一直伴随着。统计表明,在典型的软件开发项目中,软件测试工作量往往占软件开发总工作量的40%以上。而在软件开发的总成本中,用在测试上的开销要占30%到50%。如果把维护阶段也考虑在内,讨论整个软件生存期时,测试的成本比例也许会有所降低,但实际上维护工作相当于二次开发,乃至多次开发,其中必定还包含有许多测试工作。

如果测试的目的是为了尽可能多地找出错误,那么测试就应该直接针对软件比较复杂的部分或是以前出错比较多的位置。

1. 软件测试是为了发现错误而执行程序的过程; 2. 测试是为了证明程序有错,而不是证明程序无错误; 3. 一个好的测试用例是在于它能发现至今未发现的错误; 4. 一个成功的测试是发现了至今未发现的错误的测试。

某某大学2013届本科生毕业设计

这种观点可以提醒人们测试要以查找错误为中心,而不是为了演示软件的正确功能。但是仅凭字面意思理解这一观点可能会产生误导,认为发现错误是软件测试的唯一目,查找不出错误的测试就是没有价值的,事实并非如此。

首先,测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误的分布特征,可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。同时,这种分析也能帮助我们设计出有针对性地检测方法,改善测试的有效性。其次,没有发现错误的测试也是有价值的,完整的测试是评定测试质量的一种方法。

第二节系统测试

系统测试是软件开发中不可缺少的一个环节,它是衡量我们开发系统的一个标尺。它的目标是发现软件中的错误,然后通过调试对其进行改正,从而开发出高质量的完全符合用户需要的软件。

对本系统的测试主要包括以下几个方面: 1.连接测试

一个好的系统应该不包含中断链接,花费时间检查链接可以避免错误信息的发生率。链接测试可以分为三个方面:首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证Web应用系统尚没有孤立的页面(没有链接指向该页面)。

经过系统连接测试,已经把系统中存在的所有错误链接都修改正确了。用户可以放心使用。

2.功能测试

一个网站中肯定有前台普通用户的基本操作,如:添加文章、浏览文章、留言、评论、回复等功能;同时还会有后台管理员登录系统,对注册用户及文章进行审核的功能。需要测试所有功能全部符合逻辑,并且可以正常执行操作。

通过对系统的功能测试,已经可以保证系统整体功能正常运行,相信能够为用户提供合格的博客网站。

3.安全性测试

该网站存在登录功能,因此,会涉及到安全性问题,用户名、密码是否与注册信息一致,管理员登陆存在访问权限。测试要求用户只能操作其该有的权限的使用功能。

通过对系统的安全性测试,核实只有具备相应访问权限的人才能访问该网站。可以给用户提供一个安全的网站环境。

某某大学2013届本科生毕业设计

总结

经过3个多月的努力,在导师的悉心帮助下,我终于完成了此次的毕业设计。通过此博客网站系统的开发,做到了理论联系实际,将书本上学到的知识与具体

某某大学2013届本科生毕业设计

实践充分结合起来,我相信,这会既解决我今后工作中的一些问题,又进一步明确了网站的方法和思想;既加深了对网站开发的认识,又进一步巩固了以前所学的计算机软件开发方面的知识,提高了软件开发的水平,从而为今后在实际工作中更好的应用计算机进行信息管理打下了坚实的基础。

在系统的设计过程中,学习到了软件工程的整个流程,在程序设计过程中应该注意的事项在数据库表结构的设计,必须充分理解需求,准确设计表字段和表关系,否则进入具体编码后再对表结构结构进行更改会非常麻烦。程序的编码中要养成良好习惯,对应代码做好注释,以便代码过多时能清楚了解各段代码的作用。特别是对变量取名,一定要取意义相近和容易记忆的名称,否则当系统很庞大时,容易混淆变量的含义,这对系统编码、测试和维护均很不利。

本系统的设计开发基本上实现了博客应有的基本功能,用户通过使用系统可以利用Internet建立自己的博客系统,与其他注册网友进行交流,并可以与好友们共同浏览文章资源、留言互动。由于是基于网络开发的系统,所以本系统具有网络应用系统方便、信息交流及时、系统使用不受地域限制等诸多优点。

本系统具有如下特点:

(1) 界面美观简洁,程序结构清晰,编码规范。软件工程的思想是本论文文档组织上的亮点

(2) 后台数据库采用的SQL Server 2008,它功能比较强大,可以处理包含在各种平台上运行的数据库管理系统内核。

但同时也应该看到,由于时间仓促,本系统的功能实现还不是尽善尽美的,还存在需要改进的地方,在以后的系统维护过程中,使用重构方法对系统进行重构,使系统的设计日益趋于更强的可扩展性。希望在今后可以继续完善本系统设计。

参考文献

[1] (德)扎比尔(Zabir,O.A.)著;罗江华译..ASP.NET3.5构建Web2.0门户站点[M].北京:机械工业出版社,2008.

某某大学2013届本科生毕业设计

[2] (美)贝尔利纳索 著,杨剑 译..ASP.NET 2.0网站开发全程解析(第2版)[M].北京:清华大学出版社,2008.

[3] 龙马工作室编著.新编 ASP.NET 2.0 网站开发从入门到精通[M].人民邮电出版社,2008. [4] 奚江华.圣殿祭司的ASP.NET[M].李敏波,译.北京:电子工业出版社,2008 [5] 张跃进.ASP.NET 2.0网络编程自学手册[M].北京:人民邮电出版社,2008.2 [6] 李明俊.精通SQL——结构化查询语言详解(第2版) [M].北京:人民邮电出版社,2008 [7] 梁冰,陈丹丹,苏宇.SQL语言参考大全[M].北京:人民邮电出版社,2008 [8] 刘冰,罗来俊,刘秋平,刘邦桂.SQL Server数据库安全策略研究[J].考试周刊,2010,(34)

[9] 莫裕清.对于实现SQL SERVER数据库系统安全性探析[J].价值工程,2010,(54) [10] 秦钢..NET近距离接触(一)[J].微电脑世界,2001,(23)

[11]郝春强.C#基础与实例教程[M].中国电力出版社,2005.8

[12] 罗福强.Visual C#.NET程序设计教程[M].人民邮电出版社,2009.3

[13]罗福强,白忠建,杨剑. Visual C#.NET程序设计教程[J].人民邮电出版社, 2009:45-53 [14]孙践知等.网络程序设计案例教程——ASP.NET+SQL Server(C#实现)[M].清华大学出版社,2008.6

[15] W. Buxton, A. Sellen, M. Sheasby. Interfaces for Multiparty Videoconferences. Video-Mediated Communication (edited by K. Finn, A. Sellen, and S. Wilbur)[J], Lawrence Erlbaum Associates, pages 385-400, 1997.

[16] M. Cline. The Perception of Where a Person is Looking[J]. American Journal of Psychology, pages 41-50, 1967.

[17] J. Gibbons, W. Kincheloe, and K. Down. Tutored Videotape Instruction: a New Use of Electronics Media in Education[J]. Science, pages 1139-l 146, 1977.

[18] E. Isaacs and J. Tang. Studying Video-Based Collaboration in Context: from Small Workgroups to Large Organizations[J]. Video-Mediated Communication, Lawrence Erlbaum Associates, pages 173-197, 1997.

[19] A. Noll. Anatomy of a Failure: PicturePhone Revisited[J]. Telecommunications Policy, pages 307-3 16, 2002.

致谢

某某大学2013届本科生毕业设计

在经过了前期选题准备、系统设计、具体编程实现和撰写论文等一系列的工作后,我终于完成了毕业设计所要求完成各项任务。

本次毕业设计能够顺利完成,我首先要感谢我的导师,他从开始选题到最后的论文撰写都给了我很大的帮助,对每一项安排都提出来至关重要的建议,使我少走了许多弯路,同时节省了大量的时间,并且能不厌其烦地指导我技术上的问题,使我的系统更加完善,可以说,我的毕业设计的顺利完成凝聚着导师的大量心血。

然后是我身边的同学,她们在我做此次毕业设计的过程中也给了我很大的帮助,从开始我的程序有很多问题她们就帮我调整改正,到后来功能的完善也给我提出很多建议并且帮助我一起改正思考不会的问题。如果没有导师和同学我的毕业设计也不会这么顺利地完成。

最后我要感谢我的母校某某大学,是她给了我四年的学习机会,让我学到了很多知识,生活的丰富多彩,也使明白了做人的道理。在这四年的时间里,我们学院的老师始终细心地教导我们,我真的很感谢他们。

谨向本文中被作者引用过资料的专家学者深表谢意!

本文来源:https://www.bwwdw.com/article/6ek7.html

Top