当前位置:文档之家› 校园网站建设—毕业设计

校园网站建设—毕业设计

摘要

在Internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。Internet上发布信息主要是通过网站来实现的,获取信息也是要在Internet“海洋”中按照一定的检索方式将所需要的信息从网站上下载下来。因此网站建设在Internet应用上的地位显而易见,它已成为政府、企事业单位信息化建设中的重要组成部分,从而倍受人们的重视。为了更好的办学,提高学校知名度,特构建湖南理工职业技术学院网站。

关键字网站建设;校园网; CMS管理系统;SQL;https://www.doczj.com/doc/a74971169.html,;Microsoft Visual Studio 2005

目录

第一章概述 (3)

1.1 设计思想 (3)

1.2开发工具的选用及介绍 (3)

1.3 https://www.doczj.com/doc/a74971169.html,访问数据库的原理 (4)

第二章系统分析 (5)

2.1需求分析 (5)

2.2网站及系统目标设计 (6)

2.3网站前台各栏目模块设计 (6)

2.4网站管理系统CSM各功能模块设计 (7)

2.5数据流图 (7)

第三章数据库设计 (10)

3.1数据库需求分析 (10)

3.2数据库结构设计 (10)

3.2数据库关系图 (14)

第四章网站前台的具体实现 (15)

4.1 网站前台开发的基本步骤 (15)

4.2 具体页面的实现 (15)

4.3 结果分析 (18)

第五章网站管理系统CMS的具体实现 (19)

5.1 https://www.doczj.com/doc/a74971169.html,应用程序开发的基本步骤 (19)

5.2 类结构的实现 (19)

5.3 具体页面的实现 (19)

5.4 结果分析 (36)

结束语 (37)

致谢 (38)

参考文献 (39)

成绩评定表 .................................... 错误!未定义书签。

第一章概述

1.1设计思想

通过网站,全面宣传,展示学校风采、优点与特色,发布学校的重大活动安排与招生政策,增强家长与学校之间的联系,在Internet上实现完成部分校务,提高办事效率。

1.2开发工具的选用及介绍

本网站是在visual Studio 2005下采取https://www.doczj.com/doc/a74971169.html,技术开发的。

传统的网站新闻管理方式有两种,一是静态HTML页面,更新信息时需要重新制作页面然后上传页面并修改相应链接,这种方式因为效率太低已不多用。二是基于ASP和脚本语言,将动态网页和数据库结合,通过应用程序来处理新闻,这是目前较为流行的做法。但是由于ASP本身的局限性使得系统有一些不可克服的缺陷,而采取了https://www.doczj.com/doc/a74971169.html,技术的系统性能上有了很大的改善,其主要表现在以下几方面:

1.由于ASP页面每次打开都必须经过先编译后解释的过程,所以页面在反复打开时速度没有任何提升,而https://www.doczj.com/doc/a74971169.html,页面只需要一次编译后不需要重新编译,直到该页面被修改或Web应用程序重新启动。这使得在多次访问时速度有了极大的提升。

2.由于ASP没有提供任何输出数据为内容的元件,所以在使用ASP撰写数据库页面时只能借助ADO的RecordSet对象逐笔读取记录,而https://www.doczj.com/doc/a74971169.html,通过https://www.doczj.com/doc/a74971169.html,提供的DataGrid等数据库元件可以直接和数据库联系。

3.https://www.doczj.com/doc/a74971169.html,支持应用程序的实时更新。管理员不必关掉网络服务器或者甚至不用停止应用程序的运行就可以更新应用文件。应用程序文件永远不会被加锁,因此甚至在程序运行时文件就可以被覆盖。当文件更新后,系统会温和地转换到新的版本。

4.https://www.doczj.com/doc/a74971169.html,采取"code-behind"方式编写代码使得代码更易于编写,结构更清晰,降低了系统的开发与维护的复杂度和费用。

https://www.doczj.com/doc/a74971169.html,访问数据库的原理

与数据库相连,https://www.doczj.com/doc/a74971169.html,提供了如下3种方式:通过ODBC相连;通过OLEDB相连;直接与SQL Server相连。3种方式由于应用层次的差异,使得效率由低到高,独立性由高到低。对于相连数据库的数据处理,也有2种方式,即一种是通过DataSet来隔离异构的数据源,另一种是以流方式从数据源读取(DataReader方式)。

传统的应用程序是通过先建立到数据库的连接,在程序的整个运行过程中维护连接的方式来设计的。https://www.doczj.com/doc/a74971169.html,采取了断开连接方式的数据结构。当浏览器向Web服务器请求网页时,服务器处理这个请求,并将所请求的网页发送给浏览器,然后连接就被断开,直到浏览器发出下一个请求。

https://www.doczj.com/doc/a74971169.html,的另一个创新是引入了数据集(Dataset)。一个数据集是内存中提供数据关系图的高速缓冲区。数据集对数据源一无所知,它们可以由程序或通过从数据仓库中调入数据而被生成、填充。不论数据从何处获取,数据集都是通过使用同样的程序模板而被操作的,并且它使用相同的潜在的数据缓冲区。

第二章系统分析

2.1需求分析

立足于校园实际,着眼于未来发展,建成符合标准化协议、通用性较强、实用的网站系统,以提高网络现代化管理水平,实现信息资源的共享。现在校园网是由静态html、基于asp和脚本语言相结合的网站,对其管理操作繁琐,效率低。通过升级,运用https://www.doczj.com/doc/a74971169.html, 将其整合,使其管理操作方便,效率更高、更容易开发和修改。从而实现:

1、增强性能。https://www.doczj.com/doc/a74971169.html,是在服务器上运行的编译好的公共语言运行库代码。与被解释的前辈不同,https://www.doczj.com/doc/a74971169.html,可利用早期绑定、实时编译、本机优化和核外缓存服务。这相当于在编写代码之前便提高了性能。

2、提高威力和灵活性。由于https://www.doczj.com/doc/a74971169.html,基于公共语言运行库,因此Web应用程序开发人员可以利用整个平台的威力和灵活性。.NET框架类库、数据访问解决方案都可以从Web无缝访问。

3、提高简易性。https://www.doczj.com/doc/a74971169.html,使执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置。

4、提高可管理性。https://www.doczj.com/doc/a74971169.html,采用基于文本的分层配置系统,简化了将设置应用与服务器环境和Web应用程序。由于配置信息以纯文本形式存储的,因此可以在没有本地管理工具帮助的情况下应用新设置。

4、提高可缩放和可用性。https://www.doczj.com/doc/a74971169.html,在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。

5、提高自定义和可扩展性。https://www.doczj.com/doc/a74971169.html,中,可以用自己编写的自定义组件扩展或替换https://www.doczj.com/doc/a74971169.html,运行库的任何子组件。

6、提高安全性。借助内置的Windows身份验证和基于每个应用程序的配置,可以保证应用程序是安全的。

2.2网站及系统目标设计

网站开发的总目标是运用https://www.doczj.com/doc/a74971169.html, 将网站整合,使其管理操作方便,效率更高、更容易开发和修改。

能够在CMS 系统中对用户进行注册登记,分配用户的权限,对用户进行锁定和解锁等管理。

能够添加管理类别,类别支持四级联动。

能够添加管理类别内容,包括标题、图片、内容、发布者、是否审核、添加时间等信息。

能够对文件管理和数据库的备份和还原。

提供方便的查询方法。如:标题、内容等信息进行信息检索。提供较为完善的差错控制与友好的用户界面,尽量避免误操作。

2.3网站前台各栏目模块设计

网站前台包括:首页、学院概况、新闻中心、教育教学、学团风采、系部设置、招生就业、思政党建、科研督导、后勤服务。其栏目模块图,如图2.1所示:

图2.1 网站栏目模块

最新新闻 最新公告

...

首页

湖南理工职业技术学院

借书 还书 借书

信息浏览

学院概况 院报专栏 专题报道

..

. 新闻中心

教务动态 资料下载 ..

教育教学 日常管理 学生活动 ..

. 学

团风采 信息工程系 经贸社科系

..

. 系部设置 部门介绍 党政建设

..

. 思政党建

2.4网站管理系统CMS 各功能模块设计

网站管理系统CMS 包括:网站常规管理、栏目分类管理、栏目内容管理、用户权限管理。其栏目模块图,如图2.2所示:

图2.2 网站后台管理系统栏目模块

2.5数据流图

(1)文件信息编辑及查询, 如图2.3所示:

图2.3 图文件信息编辑及查询

文件添加 文件查看

文件管理

文件编辑 登录管理系统CMS

添加分类 管理分类 分类类型 栏目分类管理 学院概况 新闻中心

..

. 栏目内容管理 添加用户 管理用户

修改密码

用户权限管理

网站常规管理 文件管理 备份还原 前台首页 系统面板 退出管理

说明:此项只有超级管理员才可以操作。可以浏览整个网站的文件及结构,添加和编辑文件。

(2)数据备份还原, 如图2.3所示:

图2.3 图数据备份还原

说明:输入备份数据库名单击开始备份即可进行备份,不要轻易进行还原操作。 (3)栏目分类添加及编辑,如图2.4所示:

图2.4 栏目分类添加及编辑

说明:管理员根据自己的权限对相应的类进行管理,分类目前只支持四级。 (4)栏目内容添加及编辑, 如图2.5所示:

图2.5 栏目内容的添加及编辑

备份还原管理 数据备份

数据还原 列表操作

添加分类

查询

栏目分类管

管理分类

分类类型 添加内容

回收站

栏目内容管

管理内容

(5)用户权限的添加及编辑, 如图2.6所示:

图2.6用户权限的添加及编辑

说明:管理员可以修改自己的密码,超级管理员可以添加管理员和管理成员并对管理员进行权限分配。

添加内容

回收站

栏目内容管

管理内容

第三章数据库设计

3.1数据库需求分析

经需求和分析,针对本网站的需求和对CMS系统图的分析,设计如下的数据项和数据结构

分类信息:包括编号,编码,父编码,类型,名称,显示名称,前台链接,后天链接,是否回收。

新闻信息:包括编号,标题,图片,类别名称,类别编码,内容,发布者,发布日期,点击率,是否审核,是否回收,标识。

评论信息:包括编号,标题,新闻编号,新闻标题,评论内容,评论者,评论日期。

概况信息:包括编号,标题,图片,类别名称,类别编码,内容,发布者,发布日期,是否审核,是否回收,标识。

部门信息:包括编号,标题,图片,链接,内容,发布者,发布日期,是否审核,是否回收。

友情链接信息:包括编号,标题,图片,链接,内容,发布者,发布日期,是否审核,是否回收。

用户信息:包括编号,用户名,密码,是否锁定,注册日期,最后登录日期,登录次数,标识。

用户权限信息:包括编号,用户编号,类型,类别编码,权限说明,标识。

备份还原信息:包括编号,备份名称,备份路径,备份日期,还原日期。

3.2数据库结构设计

数据库设计有几个范式,一般我们要做到的是第三范式,即数据表中没有冗余字段以及同一个表中的字段没有函数依赖关系,,函数依赖性就是一个表中的字段间不应该有计算关系,如一个表中有单价字段、数量字段,就不应该有一个总金额字段。如果程序运行过程中需要总金额,可以实时计算。不过在一些较常用的表中,我们可以适当地保留冗余字段,这样,在程序运行过程中可以减少由于表间互相关联而使用速度降低等问题。这就是所谓的第四范式。数据表设计时,最好不要使用用户输入的信息作为主键,每一个数据表自己定义一个主键,添加信息是由程序自动添加,这样就可以减少数据更新时产生的错误。表与表相关联的外键最好是由程序自动生成的主键,这样数据库就比较规范了。数据库初期设计时一定要谨慎,把所有可能的情况都考虑进去,即使当时没有用到,也要将它留在数据库中作为备用字段以便将来扩充。

程序一旦开始编码,就应该尽量避免再修改数据库。因为如果数据库结构一旦改变,所有与修改的数据表相关的业务都有可能受到影响,而某些影响还很难看到,这样就容易形成一个恶性循环。错误越改越多,越改越乱,最终导致程序的失败。

图书管理系统数据库中各个表的设计结果如下面几个表格所示。

1.分类信息表,如表3.1

说明:编号设为主键.

表3.1 分类信息表

字段类型字段大小允许空字符串

编号int 4 自动生成

编码varchar 50 否

父编码varchar 50 否

类型varchar 20 是

名称varchar 50 是

显示名称varchar 50 是

前台链接varchar 100 是

后天链接varchar 100 是

是否回收nvarchar 2 是

2.新闻信息表,如表

3.2

说明:编号设为主键,类别编码设为外键。

表3.2 新闻信息表

字段类型字段大小允许空字符串

编号Int 4 自动生成

标题varchar 200 否

图片varchar 50 是

类别编码varchar 50 否

内容ntext 16 是

发布者varchar 50 是

发布日期datetime 8 是

点击率Int 4 否,默认为1

是否审核nvarchar 1 否,默认为1

是否回收nvarchar 1 否,默认为1

3.评论信息表,如表3.3

说明:标号设为主键,新闻编号设为外键。

表3.3 评论信息表

字段类型字段大小允许空字符串

编号int 4 自动生成

标题varchar 200 否

新闻编号int 4 否

新闻标题varchar 200 是

评论内容ntext 16 是

评论者varchar 20 是

E-mail varchar 100 是

评论日期datetime 8 是

4.概况信息表,如表3.4

说明:编号设为主键,类别编码设为外键。

表3.4 概况信息表

字段类型字段大小允许空字符串

编号int 4 自动生成

标题varchar 200 否

图片varchar 50 否

类别名称Varchar 50 是

类别编码Varchar 100 是

内容ntext 16 是

发布者varchar 50 是

发布日期datetime 8 是

是否审核varchar 1 否,默认为1

是否回收varchar 1 否,默认为1

5.部门信息表,如表3.5

表3.5 部门信息表

字段类型字段大小允许空字符串

编号int 4 自动生成

标题varchar 100 否

图片varchar 200 是

链接varchar 200 否

内容ntext 16 是

发布者varchar 50 是

发布日期datetime 8 是

是否审核varchar 1 否,默认为1

是否回收varchar 8 否,默认为1

6.友情链接信息表,如表3.5

说明:编号设为主键。

表3.5 友情链接信息表

字段类型字段大小允许空字符串

编号int 4 自动生成

标题varchar 100 否

图片varchar 200 是

链接varchar 200 否

内容ntext 16 是

发布者varchar 50 是

发布日期datetime 8 是

是否审核varchar 1 否,默认为1

是否回收varchar 8 否,默认为1

7.用户信息表,如表3.6

说明:用户名为主键

表3.6 用户信息表

字段类型字段大小允许空字符串

编号int 4 自动生成

用户名varchar 50 否

密码varchar 50 否

是否锁定varchar 18 否

注册日期datetime 8 是

最后登录日期datetime 8 是

登录次数int 4 是

标识int 4 是,默认为1

8.用户权限表,如表3.7

说明:编号为主键

表3.7 用户权限表

字段类型字段大小允许空字符串

编号int 4 自动生成

用户编号int 4 否

类型nvarchar 20 是

类别编码nvarchar 50 否

权限说明nvarchar 200 是

标识int 2 是

3.2数据库关系图

第四章网站前台的具体实现

4.1 网站前台开发的基本步骤

创建页面和使用https://www.doczj.com/doc/a74971169.html,应用程序大致可分为四个步骤:

(1)建立网站页面。

(2)设置属性。

(3)编写代码。

(4)保存和运行程序。

4.2 具体页面的实现

(1)首页 (index.aspx)

本网站采用div+css布局,布局新颖,打破了以往的方正结构,如国字型。首页简介大方,以绿色为主色调,象征着青春活力,充满着勃勃生机。

首页名为:index , 首页界面如图4.1所示:

图4.1 首页界面

主要代码如下:

//绑定校园新闻

string sql = "select top 8 * from tb_news where news_class_code

in('L0202','L0203','L0204','L0205') and news_check='1' and news_recyle='1'"; this.GridView1.DataSource = access.GreatDs(sql);

this.GridView1.DataBind();

//绑定最新公告

newsmanage.News_Class_Code = "L0206";

DataSet newsds = newsmanage.FindNewsByClass(newsmanage ,"tb_news");

this.GridView2.DataSource = newsds;

this.GridView2.DataBind();

(2)二级页面(Default.aspx)

二级页面有学院概况,新闻中心等页面,页面default依据类别编码显示对应的内容。

二级页面名为:Default,二级页面界面如图4.2所示:

图4.2 二级页面界面

主要代码如下:

#region 按类别显示新闻

PagedDataSource ps = new PagedDataSource();

newsmanage.News_Class_Code = Request["right_code"].ToString();

string sql1 = "select * from sys_right where right_code= '" +

Request["right_code"].ToString() + "'";

DataTable dt = new DataTable();dt = access.GreatDs(sql1).Tables[0];

if (dt.Rows.Count > 0) { https://www.doczj.com/doc/a74971169.html,bel1.Text = Label2.Text =

dt.Rows[0]["right_text"].ToString();}

string sql = "select * from tb_news where news_class_code='" +

Request["right_code"].ToString() + "' and news_check='1' and news_recyle='1'"; SqlDataAdapter adp = new SqlDataAdapter(sql, con);

DataSet ds = new DataSet();

adp.Fill(ds, AspNetPager1.PageSize * (AspNetPager1.CurrentPageIndex - 1), AspNetPager1.PageSize, "tb_news");

ps.DataSource = ds.Tables["tb_news"].DefaultView; ps.AllowPaging = true; ps.PageSize = 10; this.rpt_news.DataSource = ds.Tables["tb_news"];

this.rpt_news.DataBind();

#endregion

(3)三级页面(onews.aspx)

三级页面依据二级页面的传值显示详细内容,新闻页面可以对新闻发表评论。

三级页面名为:onews , 三级页面界面如图4.3所示:

图4.3 图书入库窗体界面

主要代码如下:

#region 显示新闻内容

newsmanage.News_Id = Convert.ToInt32(Request["news_id"].ToString()); DataTable dt = new DataTable();

dt = newsmanage.FindNewsByID(newsmanage, "tb_news").Tables[0];

sPagesTitle = this.lblTile.Text = dt.Rows[0]["news_title"].ToString(); this.lblAuthor.Text = dt.Rows[0]["news_author"].ToString();

this.lblTime.Text =dt.Rows[0]["news_time"].ToString().Substring(0, 9); this.lblHit.Text = dt.Rows[0]["news_hit"].ToString();

this.lblConent.Text = dt.Rows[0]["news_content"].ToString();

#endregion

4.3 结果分析

以上是“网站前台”开发的主要过程,前台总共只有4个页面,但4个页面的集成度很高,一个页面具有多种功能。后台每添加一个类或内容都会绑定当前台相应的页面上。二级页面里的类别是于数据库动态绑定的,包括显示内容和链接地址等都可以在后台动态添加和修改。校园风光一栏采用JS+CSS+DIV实现了图片展示的动感效果。当然还存在许多的不足:不够美观,实用性、灵活性还不是很好等。

第五章网站管理系统CMS的具体实现

5.1 https://www.doczj.com/doc/a74971169.html,应用程序开发的基本步骤

创建和使用https://www.doczj.com/doc/a74971169.html,应用程序大致可分为四个步骤:

(1)建立应用程序页面。

(2)设置属性。

(3)编写代码。

(4)保存和运行程序。

5.2 类结构的实现

图5.1 类结构图

5.3 具体页面的实现

(1)登录页面 (Login)

.net程序由一个应用程序开始,即每个.net程序在开始运行时,先执行应用程序对象的Load事件。通过调用database类连接数据库。本窗口主要是检查操作员输入的用户名、密码及验证码是否正确,如果正确,允许登录进入到主菜单页面。如果错误,显示出错误提示。填写“用户名”、“密码”与选择“验证码”后,点击“登录”按钮进

行验证,点击“取消登录”退出。

登录页面名为:Login , 登录页面界面如图5.2所示:

图5.2 登录页面界面

主要代码如下:

if (txtAdmin.Text == string.Empty)

{Response.Write("");

return; }

else

{DataSet adminds = null;

https://www.doczj.com/doc/a74971169.html, = this.txtAdmin.Text;

adminmanage.Pwd = this.txtPwd.Text;

adminds = adminmanage.Login(adminmanage);

if (adminds.Tables[0].Rows.Count > 0 && this.txtCode.Text.Trim()

==Convert.ToString( Request.Cookies["CheckCode"].Value))

{if (adminds.Tables[0].Rows[0]["user_islock"].ToString() == "unlock") {Session["Name"] = txtAdmin.Text;

Session["id"] = adminds.Tables[0].Rows[0]["user_id"].ToString(); Response.Redirect("index.html");}

else

{Response.Write("");}}

else if (this.txtCode.Text.Trim() !=

Convert.ToString(Request.Cookies["CheckCode"].Value))

相关主题
文本预览
相关文档 最新文档