资源描述
. .
编号:03023175
**大学2007届本科毕业论文
个人博客的设计与开发
Design and Development of Personal Blog Website
论文作者XX:***
作者学号:_
所在学院:计算机与信息工程学院
所学专业:计算机科学与技术
导师XX职称:*******(副教授)
论文完成时间:年5月20日
年5月20日
. .word..
. .
**大学2***届毕业论文〔设计、创作〕开题报告
〔由学生本人认真填写〕
课题题目
个人博客的设计与开发
课题来源
■导师指定 □自定□其他来源
课题的目的、意义以及和本课题有关的国内外现状分析:
1、目的:为用户提供一个学习和交流的平台。
2、意义:借助博客自主性、互动性、共享性的特点,用户可以尽情表达自己的思想,促进人们的深度交流和沟通。
3、现状:近两年来,博客及博客文化正成为互联网的热点,并被视为继E-mail、BBS和ICQ之后出现的第四种网络交流方式。博客的开展对应了全球X围内知识社会降临的背景,它的快速开展以及广泛应用,有助于推动中国向学习型社会演进。
研究目标、研究内容和准备解决的问题:
1、目标:设计一个既可以让用户拥有自己的自由空间,又可以与其他用户互动的个人博客。
2、内容:设计的博客能够集博客、相册、于一身。注册用户可以发布网上日志,通过文字、图片和,将个人工作、学习、生活等内容全方位的展示给公众,同时对自己的博客空间进展管理。访客可以浏览文章、发表评论、留言,与注册用户产生互动,到达交流和共享的目的
3、准备解决的问题:设计友好的界面,方便用户的使用;设计平安的数据库,保存注册用户信息以及注册用户的博客信息。
拟采取的方法、技术或设计〔开发〕工具:
拟采用Miscrosoft Visual Studio2005作为开发工具, 运用C#作为开发语言,采用MS SQL Server2005作为后台数据库。
预期成果:
1、毕业设计成果
软件〔源程序〕,相关开发文档
2、毕业论文
进度方案:
2006.12.1 - 2007.3.20:查找资料、搜集相关素材
2007.3.21- 2007.4.3:完成界面局部的设计
2007.4.4- 2007.4.15:完成数据库局部的设计
2007.4.16- 2007.4.30:完成功能实现局部的设计
2007.5.1 - 2007.5.20:整理资料、撰写毕业论文
2007.5.21-2007.5.25:根据导师要求,完善毕业设计和论文
指导教师对选题报告的意见:
同意开题。
指导教师签名: 2006 年 12 月 1 日
. .word..
. .
**大学2***届毕业论文〔设计、创作〕任务书
〔由学生本人认真填写〕
论文提要:
1. 开发背景、意义,使用的开发工具
2. 系统功能需求及流程分析
3. 系统构造及数据库设计
4. 系统主要功能模块实现
课题任务要求:
运用C#作为开发工具,采用MS SQL Server作为后台数据库,完成博客系统中系统的架构设计,数据库设计,以及以下功能的设计与实现:
1. 用户根本资料维护;2. 后台管理; 3. 用户博客管理,包括:
1〕用户信息发布与管理2〕 留言管理 3〕 个人资料管理
4〕评论管理等。
要求:1. 界面美观;2. 使用方便。
主要参考文献:
[1] 陈志泊、李冬梅、王春玲,数据库原理及应用教程,第1版,人民邮电,2002年3月
[2] X瑞新、马俊、何欣,C#网络编程及应用,第1版,机械工业,2004年6月
[3] Tom Archer, INSIDE C#, MICROSOFT PRESS, 2001.7
[4] 齐治昌、谭庆平、宁洪,软件工程,第2版,高等教育,2004年4月
[5] 邓良松、X海岩、陆丽娜,软件工程,XX电子科技大学,2001年
. .word..
. .
**大学2***届毕业设计〔论文、创作〕中期检查表
学院名称:计算机与信息工程学院
一、毕业设计进展情况
根据所查考的资料以及博客的特点,该系统所涉及的大局部界面已经设计好,数据库的设计正在进展中,局部表已经建立。下一步将根据系统的需要,完成数据库的设计。
二、存在问题
虽然大局部的界面已经设计好,但界面还不够美观,不够规X。对界面的设计得不够到位,需要进一步的修整。
三、下一阶段的研究方法或设计思路
对界面作进一步的调整,同时根据数据库的设计思想和方法,关系数据库的规X化的原那么,以及该系统的实际情况来具体设计数据库中的各个表。
四、指导教师对学生设计〔论文、创作〕进展等方面的评语
该生能够按照进度方案完成前一阶段的工作,设计内容合理,进度适当,希望在下一阶段解决存在的问题。
指导教师签字:
2007年 4月10 日
此表除第四项外由学生填写指导教师签名
. .word..
. .
XX大学2007届毕业论文〔设计、创作〕综合成绩表〔一〕
学院名称:计算机与信息工程学院
学 号
03023175
X艳丽
专业
计算机科学与技术
指导教师
郭拯危〔副教授〕
综合得分
80
论文题目
个人博客的设计与开发
指导教师评语及得分
指导教师评语
该生能够按照教师的要求完成毕业设计和论文,毕业设计界面友好,完成了指定功能;毕业论文书写认真、规X,内容充实。
评分工程分值
指导教师对毕业论文〔设计、创作〕评分
撰写开题报告、文献综述15
调查研究查阅整理资料10
学习态度与规X要求10
数据处理、文字表达10
论文〔设计、创作〕质量和创新意识
55
合计
100
得分
12
8
8
7
45
80
指导教师签名
2007年 5 月 20 日
评阅教师评语及评分
评阅教师评语
该生毕业设计具有一定的实用性,功能较齐全,毕业论文书写规X,语句通顺,到达了本科毕业论文的要求。
评分工程分值
评阅毕业论文〔设计、创作〕评分
撰写开题报告、文献综述
15
调查研究查阅整理资料
10
学习态度与规X要求
10
数据处理、文字表达
10
论文〔设计、创作〕质量和创新意识
55
合计
100
得分
12
7
8
8
45
80
评阅教师签名
2007年 5 月 22日
此表由教师填写
. .word..
. .
XX大学2007届毕业论文〔设计、创作〕综合成绩表〔二〕
学号
03023175
X艳丽
所在学院
计算机与信息工程学院
辩论委员会评语及评分
辩论委员会评语
该生思路较为清晰,语言流畅,答复以下问题正确。毕业论文书写规X,符合本科毕业论文的要求。
辩论委员签字:
2007年 5 月 26 日
评分 工程 分值
论文辩论小组评分
辩论情况
论文质量
合计
〔100〕
内容表
达情况
〔15〕
辩论问题
情况
〔25〕
规X要求与
文字表达
〔20〕
论文〔设计、创作〕质量和创新意识〔40〕
得分
12
20
16
32
80
辩论委员会主任签字: 2007年 5 月 26 日
毕业论文〔设计、创作〕成绩综合评定: 80分
综合评定等级:良
备注:
一、论文的质量评定,应包括对论文的语言表达、构造层次、逻辑性理论分析、设计计算、分析和概括能力及在论文中是否有新的见解或创新性成果等做出评价。从论文来看学生掌握本专业根底理论和根本技能的程度。
二、成绩评定采用构造评分法,即由指导教师、评阅教师和辩论委员会分别给分〔以百分计〕,评阅教师得分乘以20%加上指导教师得分乘以20%加上辩论委员会得分乘以60%即综合成绩。评估等级按优、良、中、差划分,优90-100分;良76-89分;中60-75分;差60分以下。
三、评分由专业教研室或院组织专门评分小组〔不少于5人〕,根据指导教师和辩论委员会意见决定每个学生的分数,在有争议时,应由辩论委员会进展表决。
四、毕业论文辩论工作完毕后,各院应于6月20日前向教务处推荐优秀论文以汇编成册,推荐的篇数为按当年学院毕业生人数的1.5%篇。
五、各院亦可根据本专业的不同情况,制定相应的具有自己特色的内容。须报教务处备案。
六、书写格式要求:
1、 目录;
2、 内容提要须书写200左右汉字,开题报告〔文科除外〕的内容要根据不同专业的课题任务要求,阐述查阅文献、文案论证、解题思路、工作步骤等;
3、 正文〔含引言、结论等〕;
4、 参考文献〔或资料〕
. .word..
. .
XX大学本科生毕业论文〔设计、创作〕承诺书
论文题目
个人博客的设计与开发
XX
X艳丽
所学专业
计算机科学与技术
学号
03023175
完成时间
2007年5 月20日
指导教师XX职称
郭拯危〔副教授〕
承诺内容:
1、本毕业论文〔设计、创作〕是学生 X艳丽 在导师 郭拯危 的指导下独立完成的,没有抄袭、剽窃他人成果,没有请人代做,假设在毕业论文〔设计、创作〕的各种检查、评比中被发现有以上行为,愿按学校有关规定承受处理,并承当相应的法律责任。
2、学校有权保存并向上级有关部门送交本毕业论文〔设计、创作〕的复印件和磁盘。
备注:
学生签名: 指导教师签名:
2007年 5 月 20 日 2007年 5 月 20 日
说明:学生毕业论文〔设计、创作〕如有XX等要求,请在备注中明确,承诺内容第2条即以备注为准。
. .word..
. .
目 录
摘要I
ABSTRACT II
第1章绪论1
1.1 开发背景及意义1
1.2 系统开发软件简介2
1.2.1 .Net框架2
1.2.2 C#语言2
1.2.3 SQL Server 2005 3
第2章系统分析4
2.1 系统功能需求4
2.1.1 访客4
2.1.2 注册用户4
2.1.3 管理员5
2.2 系统流程6
第3章系统设计7
3.1 系统B/S构造7
3.2 数据库设计7
3.2.1 数据库概念构造设计8
3.2.2 数据库逻辑构造设计8
3.3 存储过程9
第4章系统实现10
4.1 系统主界面10
4.2 注册模块10
4.3 发表评论模块12
4.4 日志管理模块13
结论16
参考文献17
. .word..
. .
摘 要
随着互联网技术的高速开展,生活节奏的加快,博客被越来越多的人选择作为学习和交流的工具。博客的内容丰富多彩,有对其他的超和评论,有个人构思,还有新闻日志、照片、诗歌和散文等。博客具有自主性、开放性、互动性和共享性的特点,是一个很好的交流的渠道,思想展现的舞台和学术探讨的园地。
本系统是一个实用的个人博客,集博客、相册、留言板、于一身。未注册用户(访客)可以浏览文章,发表评论及留言。也可以通过注册成为该系统的注册用户,注册用户可以管理自己的博客、相册、留言板、友情等,同时还可以发表新日志,上传图片等。
关键词博客,日志,评论,留言
ABSTRACT
With the rapid development of Internettechnology and high speed of life rhythm,Blog has beingchosen by more and more people as the tool of study and munication.The content of Blog is very rich and colourful: some has hyperlinkand ment of other website,some about personal thinking,news, music, article and so on.Because of the character of independence,open,interaction and share of Blog,it is regarded as an outlet of good exchange channel,the stage of personal thought displaying, and the garden area of knowledge studying.
This system is a practical Blog websitewhich has Blog,photo album,message board and link. Visitor can browse articles, post mentsand leave messages.The visitor can register in the Blog website, after that they can manage the Blog, photo album,message board, link of friendship etc.At the same time, they can also post new log, pictureetc.
Keywords Blog,log,ment,message
. .word..
. .
第1章 绪论
互联网技术的开展使得博客及博客文化成为热点。博客以其自主性、开放性、共享性的特点,满足了人们展示个性、尽情交流的要求。本章主要介绍该系统的开发背景及意义、系统的开发软件。
1.1 开发背景及意义
近两年来,博客及博客文化正成为互联网的热点,并被视为继E-mail、BBS和ICQ之后出现的第四种网络交流方式。
博客正在改变组织沟通和社会交流方式。目前,全球参与博客的人数已经到达1000万之众,而且每5.8秒钟,都有一名新的博客用户加盟进来。很多记者、律师、教授、学者、专家,甚至法官和议员都有了自己的博客,形成了独特的博客文化。美国总统候选人乐于开设博客站点,作为竞选的重要手段。企业界也正在把博客方式引入企业内部网和公司,用于非正式的知识管理和网络营销等。政府部门和教育领域都在尝试利用博客构建内部知识管理和沟通交流的新体系,可以让职员发表评论,积累知识,有意思的网络资源,促进彼此的交流沟通。
显然,博客的开展对应了全球X围内知识社会降临的背景。对于中国这样一个组织机构信息化仍处于初级阶段的国家,博客这种充分发挥个人主导性和积极性的非正式知识管理工具和其深度沟通交流的功能,对于我们国家的知识传播、知识扩散和有效提升组织的学习和创新能力,具有更特殊的意义。博客用户的快速增长以及组织机构对它的广泛应用,有助于推动中国向学习型社会演进。
本系统根据现实的情况以及博客互动性的特点进展设计开发,旨在为用户提供一个交流的平台,促进用户间的深度沟通;并根据博客共享性的特点,促进用户之间的知识交流,使其成为一个学习的园地。
1.2 系统开发软件简介
系统的开发采用Microsoft Visual Studio.Net 2005 集成开发环境和SQL Server 2005等工具,使用C#编程语言。在设计上采用Visio图表的形式描述系统模型和系统架构,利用Asp.Net、ADO.Net、存储过程等技术,大大提高了开发效率和系统的可维护与可扩展性。在内容表现上努力做到数据的表现和构造相别离,采用XHTMLl1.0+CSS.0标准编码,并且支持几乎所有的浏览器。
1.2.1 .Net框架
Visual Studio.NET是一套完整的开发工具,用于生成 Asp Web 应用程序、Xml Web services、桌面应用程序和移动应用程序。Visual Basic.Net、Visual C++.Net、Visual C#.Net 和 Visual J#.Net全都使用一样的集成开发环境(IDE),该环境允许它们共享工具并有助于创立混合语言解决方案。另外,这些语言利用了.Net Framework 的功能,此框架提供对简化Asp Web应用程序和 Xml Web services 开发的关键技术的访问。
.Net Framework是一种新的计算平台,它简化了在高度分布式Internet环境中的应用程序开发。.Net Framework 具有两个主要组件:公共语言运行库和.Net Framework类库。
Asp.Net又叫Asp+,是Microsoft推出的新一代Active Server Pages脚本语言。Asp.Net是建立在公共语言运行库上的编程框架,可用于在效劳器上生成功能强大的Web应用程序。与以前的Web开发模型相比,Asp.Net提供了数个重要的优点:增强的性能、世界级的工具支持、威力和灵活性、简易性。
1.2.2C#语言
C#语言是在C和C++语言根底上开发的在.Net平台上运行的为适应Internet、Intranet和各类网络应用而设计的编程语言,该语言综合了C、C++和Java以及其他高级语言的特点,是一种语法优雅,类型平安,完全面向对象的编程语言,也是.NET的首选语言。
早期的网络编程难度大、效率低,而C#语言和.Net平台大大简化了这些技术,使得过去困难的网络应用编程变得轻松。任何人只要熟悉 C 和类似的语言,在应用 C# 时就几乎不会有什么问题。C# 在不牺牲 C 和 C++ 的功能和控制特色的前提下提高了 C++ 编程人员的开发速度。基于C#的这些特点,本系统选择C# 作为开发语言。
1.2.3 SQL Server2005
本系统的数据库采用SQL server 2005。SQL Server 2005是一个全面的数据库平台,使用集成的商业智能(BI)工具提供了企业级的数据管理。SQL Server 2005数据库引擎为关系型数据和构造化数据提供了更平安可靠的存储功能,使用户可以构建和管理用于业务的高可用和高性能的数据应用程序。
SQL Server 2005在SQL Server 2000的强大功能根底上,提供了一个完整的数据管理和分析解决方案,它将会给不同规模的组织带来帮助:使应用程序更加平安、伸缩性更强和更可靠;降低开发和支持数据库应用程序的复杂性;能够在多个平台、应用程序和设备之间共享数据;更易于连接内部和外部系统;在不牺牲性能、可用性、可伸缩性或平安性的前提下有效控制本钱。
第2章 系统分析
本章将详细介绍该系统的分析过程,包括系统的各类用户的功能需求以及系统流程。
2.1 系统功能需求
系统涉及到的用户角色分三种:访客、注册用户和管理员。下面分别介绍各类用户角色的主要功能。
2.1.1 访客
访客无须注册,即可浏览注册用户发表的日志、上传的图片,并且还可对自己感兴趣的日志发表评论,给注册用户留言。其功能构造如图2-1所示:
图2-1 访客功能图
2.1.2 注册用户
注册用户可以通过登录,对自己的博客空间进展管理。主要包括以下几个模块:
日志管理模块:包括日志分类管理〔添加新分类、删除分类〕,个人日志管理〔个人日志的添加、删除、编辑〕,日志评论管理〔查看评论、删除评论〕。
留言板管理模块:包括查看所有留言,删除留言。
相册管理模块:此模块包括上传新照片,删除照片。
友情管理模块:包括添加新的友情,编辑友情,删除友情。
功能构造如图2-2所示:
图2-2 注册用户功能图
2.1.3 管理员
管理员要对系统的注册用户的根本资料进展维护,并管理注册用户的日志以及留言。另外,管理员还可以修改该系统的常规设置,如:修改系统公告,修改用户注册条款等。功能构造如图2-3所示:
图2-3 管理员功能图
2.2 系统流程
根据以上的需求分析,以及各类用户的功能要求,得到系统的流程如图2-4所示:
图2-4 系统流程图
第3章 系统设计
本章主要介绍该系统采用的构造以及数据库的详细设计过程。
3.1 系统B/S构造
B/S构造为三层构造,建立在广域网的根底之上,客户端只需要安装浏览器,通过 协议向Web Server提出请求,Web Server站点收到请求后,通过CGI(ISAPI)得到相关数据,然后以HTML文档的形式返回给浏览器。构造如图3-1所示:
图3-1 B/S构造原理
B/S建立在广域网之上,不必是专门的网络硬件环境,有比C/S更强的适应X围,一般只要有操作系统和浏览器即可。在B/S构造的系统中,用户可以通过浏览器向分布在网络上的许多效劳器发出请求。B/S构造极大地简化了客户机的工作,客户机上只需安装、配置少量的客户端软件即可,效劳器将担负更多的工作,对数据库的访问和应用程序的执行将在效劳器上完成。B/S体系的优点是:系统安装维护简便、数据集中管理;便于分散用户使用,适应互联网时代软件的开展趋势。根据B/S构造的特点和本系统的性能特点,采用B/S构造进展开发更适宜。
3.2 数据库设计
本系统采用微软公司的大型数据库MS SQL Server 2005,数据库构造设计如下:
3.2.1 数据库概念构造设计
概念构造设计就是将需求分析得到的用户需求抽象为信息构造,即概念模型。在这里采用E-R模型。概念构造的E-R模型设计如图3-2所示:
图3-2 E-R模型
3.2.2 数据库逻辑构造设计
概念构造设计阶段得到的E-R模型是用户的模型,它独立于任何一种数据模型,独立于任何一种具体的DBMS。为了建立用户所需求的数据库,需要把上述概念模型转换为某个具体的DBMS所支持的数据模型。数据库逻辑构造设计的任务就是将概念构造转换为特定DBMS的所支持的数据模型的过程。该系统数据库的逻辑构造设计如图3-3所示:
图3-3 数据库逻辑关系图
3.3 存储过程
简单的说,存储过程是由一些SQL语句和控制语句组成的被封装起来的过程,它驻留在数据库中,可以被客户应用程序调用,也可以从另一个过程或触发器调用。它的参数可以被传递和返回。与应用程序中的函数过程类似,存储过程可以通过名字来调用,而且它们同样有输入参数和输出参数。
根据返回值类型的不同,我们可以将存储过程分为三类:返回记录集的存储过程, 返回数值的存储过程〔也可以称为标量存储过程〕,以及行为存储过程。相对于直接使用SQL语句,在应用程序中直接调用存储过程有以下好处:(1)减少网络通信量 (2)执行速度更快 (3)更强的适应性。
(4)可用于增强平安性。
由于存储过程具有以上的优点,该系统也屡次使用。例如:在发表日志时,存储过程InsertLog用于保存新发表的日志的信息。在日志管理时,存储过程updateLog用于及时更新日志信息。在用户注册时,存储过程checkUser用于验证数据库中是否已经存在该用户名,以保证用户名不能重复。
第4章 系统实现
本章主要介绍该系统主要局部的具体实现。
4.1 系统主界面
该界面为该系统的首页,显示出最新日志,最热日志等。访客只要一进入该,就可以看到该页面。并通过该页面进入留言板、日志、发表评论等其他感兴趣的页面。系统主界面如图4-1所示:
图4-1 系统主界面
4.2注册模块
访客可以通过该界面注册成为该系统的注册用户,拥有自己的博客空间。界面如图4-2所示:
图4-2 用户注册界面
protected void Button1_Click(object sender, EventArgs e)
{
//连接数据库,使用存储过程CheckUser,查看该用户名是否已经存在
Sqlmand mand = new Sqlmand("CheckUser", conn);
SqlDataReader dr=mand.ExecuteReader();
if (CheckBox1.Checked) //如果同意注册条款,那么可以进展注册
{
if (dr.Read()) //如果用户名已经存在,那么注册失败
Response.Write("<script>window.alert('注册失败:已有该用户名!');</script>");
else //如果用户名不存在,那么在数据库中保存新注册用户的信息
{
mand = new Sqlmand("InsertUser", conn);
SqlParameter RegisterName = mand.Parameters.Add("name", SqlDbType.NVarChar, 30); //传递各个参数的值
RegisterName.Value = TextBoxName.Text;
Session["username"] = TextBoxName.Text.Trim();
}
else //如果不同意注册条款,那么不能进展注册
Response.Write("<script>window.alert('不同意注册协议不能注册! ');</script>");
4.3发表评论模块
在该模块中主要使用了存储过程。SQL存储过程执行起来比SQL命令快得多,当一个SQL语句包含在存储过程中时,效劳器不必每次都要分析和编译它。而且存储过程使程序易于维护。如果程序需要做某些修改,只要改动存储过程即可。数据库建立表之后,根据系统的功能,也屡次用到存储过程。创立存储过程如下:
Creat Procedure Insertment
(log_ID int, //日志编号
m_subject varchar(30), //评论主题
m_content ntext, //评论内容
m_author varchar(30), //评论作者
post_time datetime //评论时间
)
AS
Insert into blog_ment
(log_ID,m._subject,m._content,m._author,post_time)
Values(log_ID,m_subject,m_content,m_author,post_time)
RETURN
发表评论的界面如图4-3所示:
图4-3 发表评论界面
以下为点击提交按钮时触发的事件:
protected void ButtonOk_Click(object sender, EventArgs e)
{
if (TextBox1.Text=="")
author = "匿名"; //如果作者没填,那么默认为匿名
else
author = TextBox1.Text; //获取评论的作者
Sqlmand mand = new Sqlmand("insertment", conn);
//添加参数
SqlParameter log_ID = mand.Parameters.Add("log_ID",SqlDbType.Int);
//传递参数的值
log_ID.Value =Session["log_ID"];
SqlParameter m_subject = mand.Parameters.Add("m_subject", SqlDbType.VarChar, 30);
m_subject.Value=this.labSubject.Text;
SqlParameter m_content = mand.Parameters.Add("m_content", SqlDbType.NText);
m_content.Value =TextBox2.Text;
SqlParameter m_author = mand.Parameters.Add("m_author", SqlDbType.VarChar,30);
m_author.Value = author;
int number = mand.ExecuteNonQuery();
if (number < 1)
Response.Write("<script>window.alert('发表评论失败!');</script>");
else
Response.Write("<script>window.alert('发表评论成功!');</script>");
}
4.4日志管理模块
该模块用到的控件是DataList以及用户自定义控件。DataList控件是一种以自定义格式显示绑定数据源信息的控件,使数据的显示外观更加多样化,操作更加简单。
(1) DataList任务菜单中选择[编辑模板]命令,DataList控件进入模板编辑状态,在下拉列表框中选择〞ItemTemplate〞,布局如图4-4所示:
图4-4 项模板
(2) 编辑模板的设计,布局如图
展开阅读全文