博客系统毕业设计.docx
《博客系统毕业设计.docx》由会员分享,可在线阅读,更多相关《博客系统毕业设计.docx(24页珍藏版)》请在冰豆网上搜索。
博客系统毕业设计
摘要
随着计算机及网络技术的飞速发展,internet应用在全球围日益普及,在众多的网络服务中,web给人耳目一新的感觉,而在这其中,已经日益普及,而且发展到今天,已经成为任何人在网络所提供的平台上进行个性展示的新型方式。
在众多网络开发技术中,html是一种重要的基本开发技术,而asp技术是当前相当热门,它可以进行复杂的数据库、很强的交互性以及方便用户控制管理。
个人正式当今技术发展的产物,它是一套用html,asp开发的能在网上进行的访问的页面,此论文主要阐述的就是使用html,asp技术的开始。
该包括后台管理系统,文章管理系统,它们是该的重要组成部分,的维护是是一项琐碎、复杂而又十分细致的工作。
通过后台管理系统可以方便的对的各个模块进行维护工作,实现管理维护的系统化、规化和自动化。
即使是没有接触过网络维护的人也可以一看就会,一看就懂。
本系统采用的是先进的.NET开发平台,运用全新的面向对象语言C#,以ASP.NET为工具,利用SQLServer2005做后台,构建了3层B/S模式架构。
关键词:
个人三层结构ASP.NET
Abstract
Alongwiththecomputerandtherapiddevelopmentofnetworktechnology,Internetapplicationandpopularizationintheglobalscope,inalargenumberofnetworkservices,webgivespersonfindeverythingfreshandnewfeeling,butinthisone,websiteshavebecomemoreandmorepopular,butalsotothedevelopmentoftoday,hasbecomeanyoneinthenetworkprovidesaplatformforpersonalizeddisplaynew.Inmanyofthedevelopmentofnetworktechnology,htmlisoneoftheimportantbasictechnology,andASPtechnologyiscurrentlyquitepopular,itcanbeacomplexdatabase,stronginteractiveanduser-friendlycontrolmanagement.Personalwebsiteofficiallyintoday'stechnologicaldevelopmentproduct,itisasetofHTML,ASPdevelopmentcanbecarriedontheInternettoaccessthepage,thispaperisusingtheHTML,ASPtechnologystart.Thesiteincludesthebackstagemanagementsystemmanagementsystem,thearticlemanagementsystem,whichisthesiteofimportantconstituent,thewebsitemaintenanceisatrivial,complexandverymeticulouswork.Throughthebackstagemanagementsystemmanagementsystemcanbeconvenientforthesiteofthemodulesformaintenancework,realizesthewebsitemanagementmaintenancesystematization,standardizationandautomation.Evenifthereisnocontactnetworkmaintenancepersoncanatwill,onecanunderstandit.
ThesystemadoptsadvancedNETdevelopmentplatform,theuseofnewobject-orientedlanguageC#,usingSQLServer2005asbackground,building3layerB/Smodel
Keywords:
personalwebsiteinthreelayersofstructureASP.NET
第1章系统分析-1-
1.1博客的背景-1-
1.2系统开发工具-1-
本系统采用ASP.NET开发技术进行开发。
ASP.NET不仅仅是ASP的一个新版本,更是Web应用程序编程方面的一个全新的概念和方法。
ASP.NET中的新功能并不是对ASP的改进,设计它的初衷是为用户入境提供最佳的应用程序架构。
它相比于ASP有着以下几个方面的优点:
-1-
(1)多语言-1-
ASP曾在脚本引擎方面受到了限制,特别是VBScript和Jscript。
而ASP.NET则支持多种语言,默认情况下为VisualBasic.NET、C#和Jscript.NET,另外还支持一些第三方语言。
-1-
(2)服务器处理-1-
ASP在服务器处理上不管页面的容是纯HTML还是ASP生成的HTML,它都是按照实现,形成所谓3-tier页面顺序显示的。
因此逻辑代码依赖于它在页面中的位置,并且无法将HTML控件作为目标,除非将它们作为流的一部分进行显示。
而ASP.NET就解决了这个问题,方法是为控件引入一个声明的基于服务器的模型,因为控件在服务器上有,可以在服务器上编程,也可以是客户端驱动的事件。
-1-
(3)WebForm控件-1-
将现有的HTML控件转换为服务器端的控件是比较容易的,但是也存在一些不方便,例如比较难于区分HTML控件和服务器端的控件。
于是Microsoft公司就创建了一组专门的服务器控件,它们都用asp:
前缀标识。
-2-
(4)代码与容分离-2-
一个的设计与开发往往由不同的人来实现的,而ASP中就是存在着这样一个问题,代码(ASP脚本)和容(HTML)混合在一起。
这样就使得同时进行设计和开发变得很困难。
而ASP.NET则采用了代码联和后台编码两种方法实现了代码与容的分离。
-2-
1.3NET开发平台的简介-2-
1.3.2集成开发工具VisualStudio.Net-2-
第2章系统的总体规划和概要设计-4-
2.1系统总体目标-4-
2.2系统工作流程-4-
2.3个人系统功能模块-5-
2.3.1前台功能模块-5-
2.3.2后台管理功能模块-6-
第3章数据层的设计与实现-7-
3.1数据库逻辑结构设计-7-
第4章系统设计与实现-10-
4.1服务器端用户控件设计-10-
4.2首页设计-10-
4.3日志页面设计-12-
4.4留言板页面设计-16-
4.5后台登陆页面设计-17-
第5章总结-19-
总结-19-
感受-19-
辞-20-
参考文献-21-
第1章系统分析
1.1博客的背景
随着计算机技术的发展和普及,blog得到了极大的发展。
Blog,是Weblog的简称。
blog是一种新的生活方式、新的工作方式、新的学习方式和交流方式。
它是继E-mail、BBS、ICQ、之后出现的第4种网络交流方式。
Blog主要应用于3个方面:
一是新的人际交流方式;二是以个人为中心的信息摘选和知识管理;三是以个人为中心的传播出版。
blog作为个人的一种学习工具,简单易用,吸引人的兴趣。
Blog在教育方面得到了很大的发展,它将互联网从过去的通讯功能,资料功能、交流功能等进一步强化,使其更加个性化、开放化、实时化、全球化,把信息共享发展到资源共享、思想共享、生命历程共享。
Blog已经成为一种继课件、积件、资源库、教育主题等信息化教学模式之后,新的网络应用模式。
它是应时代的需求而兴起的,也是应时代需求不断进步的。
1.2系统开发工具
本系统采用ASP.NET开发技术进行开发。
ASP.NET不仅仅是ASP的一个新版本,更是Web应用程序编程方面的一个全新的概念和方法。
ASP.NET中的新功能并不是对ASP的改进,设计它的初衷是为用户入境提供最佳的应用程序架构。
它相比于ASP有着以下几个方面的优点:
(1)多语言
ASP曾在脚本引擎方面受到了限制,特别是VBScript和Jscript。
而ASP.NET则支持多种语言,默认情况下为VisualBasic.NET、C#和Jscript.NET,另外还支持一些第三方语言。
(2)服务器处理
ASP在服务器处理上不管页面的容是纯HTML还是ASP生成的HTML,它都是按照实现,形成所谓3-tier页面顺序显示的。
因此逻辑代码依赖于它在页面中的位置,并且无法将HTML控件作为目标,除非将它们作为流的一部分进行显示。
而ASP.NET就解决了这个问题,方法是为控件引入一个声明的基于服务器的模型,因为控件在服务器上有,可以在服务器上编程,也可以是客户端驱动的事件。
(3)WebForm控件
将现有的HTML控件转换为服务器端的控件是比较容易的,但是也存在一些不方便,例如比较难于区分HTML控件和服务器端的控件。
于是Microsoft公司就创建了一组专门的服务器控件,它们都用asp:
前缀标识。
(4)代码与容分离
一个的设计与开发往往由不同的人来实现的,而ASP中就是存在着这样一个问题,代码(ASP脚本)和容(HTML)混合在一起。
这样就使得同时进行设计和开发变得很困难。
而ASP.NET则采用了代码联和后台编码两种方法实现了代码与容的分离。
1.3NET开发平台的简介
根据微软的定义:
.NETisa“revolutionarynewplatform,builtonopenInternetprotocolsandstandards,withtoolsandservicesthatmeldcomputingandcommunicationsinnewways”,即:
.NET=新平台+标准协议+统一开发工具。
.NET代表一个集合,一个环境,一个可以作为平台支持下一代Internet的可编程结构。
最终目的是让用户在任何地方、任何时间,以及利用任何设备都能访问所需的信息、文件和程序。
.NET平台主要包括四个部分的容:
低层操作系统、.Net企业服务器、.Net框架和集成开发工具VisualStudio.Net。
1.3.1数据库简介
SQLServer2000:
SQLServer提供完善数据处理功能。
包含数据挖掘,XML的直接Internet支持。
目前在WindowsCE中推出了SQLServer2000WindowsCEEdition。
CommerceServer2000用于快速创建在线电子商务。
MobileInformationServer为移动信息解服务器提供可靠而且具有伸缩性的平台。
1.3.2集成开发工具VisualStudio.Net
微软将她的全部开发工具都集成在VisualStudio.Net中,在VisualStudio.Net中可以用C#语言、C++语言、Basc语言、J#语言开发。
可以开发桌面应用程序、Web应用程序、智能设备应用程序等。
NET能做什么?
为Internet网络和分布式应用程序的开发提供一个新的开发平台。
简化应用程序的开发和部署,为构建WebService提供一个标准平台,改善系统和应用程序之间的交互性和集成性。
使应用程序对任何设备都能够进行访问。
C#在微软.Net平台上,C#语言是开发的主要语言。
C#是由Microsoft开发的一种新型编程语言,它是从C和C++中派生出来的,因此具有C++的功能。
由于是Microsoft公司的产品,它又同VB一样简单。
对于web开发而言,C#类似Java开发语言,同时又具有Delphi的一些优点。
所以Microsoft宣称:
C#是开发.NET框架应用程序的最好语言。
.NET平台将C#作为其固有语言,重温了许多Java的技术规则。
C#中也有一个虚拟机,叫做公用语言运行环境(CLR),它的对象也具有同样的层次。
但是C#的设计意图是要使用全部的Win32API甚至更多。
由于C#与Windows的体系结构相似,因此C#很容易被开发人员所熟悉。
第2章系统的总体规划和概要设计
2.1系统总体目标
本系统的开发主要目标为:
用户信息管理模块的实现:
即基本信息、个人日志的游览、FLASH、个人相册、留言板。
系统管理模块:
管理员的登录、个人信、FLASH、相册的增加、修改、和删除。
2.2系统工作流程
系统分为前台普通用户界面和后台管理界面。
在前台子系统用户可以查看个人信息、相册、FLASH、日志、留言板。
后台子系统供部管理人员使用,可以进行个人信息、相册、FLASH、日志、留言板的增删改查操作。
系统工作流程可以用图2-1形象描述如下:
图2-1系统工作流程图
个人档:
版主的个人信息简介编辑与浏览。
留言板:
游客为版主留言。
日志:
版主的心情寄语的查看与编辑。
Flash:
版主的个人视频。
相册:
版主上传的相册。
后台:
提供博客模块的添加、维护、修改。
2.3个人系统功能模块
下图2-3对部分模块进行解释
图2-2功能模块图
前台模块:
为游客为本博客提供浏览、评论的平台。
后台模块:
为版主对博客进行增加、修改、与维护的
2.3.1前台功能模块
当登录了染指流年博客,在前台主页你可以浏览和查看自己发表的信息,同时也可以看到最新日志和最新留言、FLASH、个人资料。
你也可以通过评论或浏览中的评论对他人发表的信息进行点评和发表自己的不同观点,同时你可以通过编辑功能对自己或他人的信息进行信息管理,比如删除某条信息或发表新的信息等。
当然如果你看到自己喜欢的文章或信息,你也可以通过收藏的功能把它放在自己收藏夹里。
2.3.2后台管理功能模块
添加博客功能模块
用户可以通过这项功能发表新的信息,你可以对信息的容进行编辑,如字体大小、样式等,还可以为自己发表的信息进行归类,为信息选择符合自己的标题名称。
你也可以通过置顶功能设置是否把信息放到所有信息的最前端,也可以设置是否在主页显示自己发表的容。
维护分类功能模块
在这项功能里,你可以添加或删除信息的标题,对标题进行更新和分类。
修改我的信息功能模块
这项功能主要是针对用户个人信息设置而设的,用户可以通过这项功能对自己的头像、用户、年龄、性别进行修改并更新,同时还可以对自己的个人说明进行更新。
博客维护功能模块
在这个功能里用户可以对自己博客的博客名、博客标题、博客网址、博客信息、博客备案信息进行修改和更新。
第3章数据层的设计与实现
3.1数据库逻辑结构设计
图3-1为留言表(liuyan)
表3-1留言表
留言表(liuyan):
用来存储留言信息,主键为产品序号tid,还有昵称,QQ,电子,主题,容,时间,其中主键字段默认值都为1。
图3-2为个人信息表(userinfo)
表3-2个人信息表
myself(个人信息表):
用来存储用户的详细信息,主键为用户序号userid,另外还有用户名,口令,E-mail,用户,性别,,家庭地址等字段。
图3-3为flash(动画表)
表3-3flash表
Flash(动画表):
用来盛放动画,主键为id,另外还有所属类的编号,主题,日期浏览人数。
图3-4为学校信息表(school).
表3-4学校信息表
school(学校信息表):
用来存放学校信息,主键为id,另外还有成立时间,学校名称等。
第4章系统设计与实现
4.1服务器端用户控件设计
(1)用户控件:
用户控件是能够在其中放置标记和Web服务器控件的容器。
然后,可以将用户控件作为一个单元对待,为其定义属性和方法。
(2)自己设计的用户控件。
本的页面主要是通过模板设定的,大部分网页都是添加的统一模板,在创建母版页时,需要将页面公共部分存储于母版页中,例如,页面公用的页头、页尾等,而页面非公共部分则使用ContentPlaceHolder控件实现占位。
然后网页中需添加的容再根据不同的用途在ContentPlaceHolder控件中设定,如进行数据绑定、表格建立等。
4.2首页设计
下面所示为我的主页面的截图:
图5-1首页
我的首页设计以及代码简介:
1.色彩的选择,因为我的网页主要采用深蓝色和灰色,模仿空间的版式。
2.布局设计,我的布局整体模式是右边:
导航。
中间:
信息容显示区,右边:
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!
IsPostBack)
{
stringsql="selecttop11substring(title,1,15)astitle,id,reads,typefromlogsorderbyiddesc";
DataList1.DataSource=SQLcs.GetDataSet(sql).Tables[0].DefaultView;
DataList1.DataKeyField="id";
DataList1.DataBind();
sql="selecttop5substring(title,1,24)astitlefromliuyanorderbyiddesc";
dlliuyan.DataSource=SQLcs.GetDataSet(sql).Tables[0].DefaultView;
dlliuyan.DataBind();
sql="selecttop2id,title,urlfromphotoorderbyiddesc";
sql="selecttop8id,substring(title,1,24)astitlefromflashorderbyiddesc";
dlflash.DataSource=SQLcs.GetDataSet(sql).Tables[0].DefaultView;
dlflash.DataKeyField="id";
dlflash.DataBind();
mail=SQLcs.Getfield("selectmailfrommyself","mail");
qq=SQLcs.Getfield("selectqqfrommyself","qq");
msn=SQLcs.Getfield("selectmsnfrommyself","msn");
}
4.3日志页面设计
下面是日志页面的设计界面截图:
图5-2日志页面
我的日志页面设计及功能实现:
1.色彩的选择,主要采用深蓝色和灰色。
2.布局设计方面和主页小异,但主要是文字的展示。
protectedvoidPage_Load(objectsender,EventArgse)
{
try
{
type=Request["type"];
}
catch
{
throw;
}
if(!
IsPostBack)
{
stringsql="selecta.type,count(b.type)astotalfromtypesa,logsbwherea.type=b.typegroupbyalla.typeorderby2desc";
dltype.DataSource=SQLcs.GetDataSet(sql).Tables[0].DefaultView;
dltype.DataKeyField="type";
dltype.DataBind();
}
if(type==null||type=="")
{
sqltype="select*fromlogsorderbyiddesc";
Bind(sqltype);
}
else
{
sqltype="select*fromlogswheretype='"+type+"'orderbyiddesc";
Bind(sqltype);
}
sqltype1="select*fromlogswhereidin(selectlidfromreview)";
Bind1(sqltype1);
}
///
///分页数据源绑定
///
///SQL语句
protectedvoidBind(stringsql)
{
intcurpage=Convert.ToInt32(ltcurpage.Text);
PagedDataSourceps=newPagedDataSource();
ps.DataSource=SQLcs.GetDataSet(sql).Tables[0].DefaultView;
ps.AllowPaging=true;
lttotal.Text=ps.DataSourceCount.ToString();
ps.PageSize=15;
ps.CurrentPageIndex=curpage-1;
lttotalpage.Text=ps.PageCount.ToString();
lbfirst.Enabled=true;
lbup.Enabled=true;
lbdown.Enabled=true;
lblast.Enabled=true;
if(curpage==1)
{
lbfirst.Enabled=false;
lbup.Enabled=false;
}
if(curpage==ps.PageCount)
{
lblast.Enabled=false;
lbdown.Enabled=false;
}
dllogsed.DataSource=ps;
dllogsed.DataKeyField="id";
dllogsed.DataBind();
}
protectedvoidlbfirst_Cl