目 录
1.概述(绪论)…………………………………………………………1
1.1本网站系统实现的功能 ………………………………………1
1.2 开发环境简介…………………………………………………1
2.需求分析……………………………………………………………1
2.1 开发背景………………………………………………………1
2.2 开发目的………………………………………………………2
2.3 数据需求………………………………………………………2
2.4 功能需求………………………………………………………3
3.系统设计……………………………………………………………4
总体设计……………………………………………………………4
4.数据库设计……………………………………………………………4
4.1 概念设计(E-R图)……………………………………………4
4.2 逻辑设计………………………………………………………4
5.详细设计……………………………………………………………5
6.系统实现……………………………………………………………5
7.系统总结……………………………………………………………25
7.1在各开发环境下实现的功能………………………………25
7.2 系统不足,系统扩展构想…………………………………27
8.参考文献…………………………………………………………28
9. 附录………………………………………………………………28
1.概述(绪论)
1.1本网站系统实现的功能
利用http://ASP.NET和数据库技术开发的青岛理工大学新闻发布管理系统,实现了网站前台动态显示和后台的新闻动态管理,使得对信息的查看和管理更加及时、高效,大大提高了学生的查看效率和工作效率。创建成了“校内快讯 通知公告 教育管理 学院风采 科学研究 杏坛理工 学生之声 高校之声”等分类。
1.2 开发环境简介
Visual Studio 2005 是一套完整的开发工具,用于生成 http://ASP.NET Web 应用程序、XML Web Services、桌面应用程序和移动应用程序。Visual Basic、Visual C# 和 Visual C++ 都使用相同的集成开发环境 (IDE),这样就能够进行工具共享,并能够轻松地创建混合语言解决方案。另外,这些语言使用 .NET Framework 的功能,它提供了可简化 ASP Web 应用程序和 XML Web Services 开发的关键技术。
万维网最初实现从服务器向客户机的静态数据发送,这个数据用超文本标记语言(HTTP)发送,至今仍然如此。HTML页面从服务器向客个机移动时人改变形式,是响应超文本传输协议(HTTP)请求发送的。而这些开发语言的出现,实现了网站的动态性,更易于网站的交互性。
Visual http://Basic.NET是下一代的Visual Basic。而并不是简单的在Visual Basic 6.0上在添加一些新特性而已,微软重新设计了产品以便使开发者能够更加容易的开发分布式应用,例如基于WEB的程序以及多层系统。从而让我们在WEB开发方面展现出更大的优势。
2.需求分析
2.1 开发背景
随着Internet的普及,越来越多的企业建立了自己的WWW网站,企业通过网站可以展示产品,发布最新动态,与用户进行交流和沟通,与合作伙伴建立联系,以及开展电子商务等。其中新闻管理系统是构成企业网站的一个重要组成部分,它担负着双层作用,一方面可以用来动态发布有关新产品或新开发项目,另一方面又可以及时向顾客公告企业经营业绩、技术与研发进展、特别推荐或优惠的工程项目、产品和服务,从而吸引顾客,扩大顾客群。
作为学校这样的单位,同样具有与企业相当的新闻发布性,当然,学校在网站技术渐渐发展的时候需要建立这样的新闻发布网站!
作为互联网这一新兴的媒体新闻发布形式,其发展在近几年是有目共睹的,企业网站、个人博客、行业网站、门户站等一大批的网站相继建立,大到行业小到个人博客。学校网站则更需要在这发展中突显出其中的优势。
传统的网站新闻管理方式有两种,一是静态HTML页面,更新信息时需要重新制作页面然后上传页面并修改相应链接,这种方式因为效率太低已不多用。二是基于ASP和脚本语言,将动态网页和数据库结合,通过应用程序来处理新闻,这是目前较为流行的做法。但是由于ASP本身的局限性使得系统有一些不可克服的缺陷,而采取了ASP.NET技术的系统性能上有了很大的改善,其主要表现在以下几方面:
1.由于ASP页面每次打开都必须经过先编译后解释的过程,所以页面在反复打开时速度没有任何提升,而http://ASP.NET页面只需要一次编译后不需要重新编译,直到该页面被修改或Web应用程序重新启动。这使得在多次访问时速度有了极大的提升。
2.由于ASP没有提供任何输出数据为内容的元件,所以在使用ASP撰写数据库页面时只能借助ADO的RecordSet对象逐笔读取记录,而ASP.NET通过ADO.NET提供的DataGrid等数据库元件可以直接和数据库联系。
3.http://ASP.NET支持应用程序的实时更新。管理员不必关掉网络服务器或者甚至不用停止应用程序的运行就可以更新应用文件。应用程序文件永远不会被加锁,因此甚至在程序运行时文件就可以被覆盖。当文件更新后,系统会温和地转换到新的版本。
4.http://ASP.NET采取"code-behind"方式编写代码使得代码更易于编写,结构更清晰,降低了系统的开发与维护的复杂度和费用。
2.2 开发目的
用Internet的普及,来改造校园信息发布的时代,让更多的学生可以在信息化的时代更真实地感受到网站给大家生活带来的便利,同时加强校外了解本校动态,进一步提高校园办公的效率。
2.3 数据需求
本网站是校园信息类网站,目的在于及时的让本校学生了解最新的校园及校外资讯,属于中小型新闻类网站,数据处理不是很复杂,主要处理新闻信息,图片显示,以及用户信息,搜索查询等,故采用ACCESS数据库开发。
以下为本站的数据字典:
表:admin(管理组权限设置)
序号 字段名 类型 长度 允许空 主键 说明
1 id 自动编号 50 是 管理组id
2 username 文本 50 否 登录名
3 password 密码 50 否 密码
4 Email 文本 50 否
表:classes(分类)
序号 字段名 类型 长度 小数位数 允许空 主键 说明
1 ClassesID 自动编号 长整型 是 分类自动编号
2 ClassesName 文本 50 否 分类名称
表:news:(新闻)
序号 字段名 类型 长度 小数位数 允许空 主键 说明
1 NewID 自动编号 长整型 是 新闻自动编号
2 ClassesID 数字 数字 否 新闻分类编号
3 Title 文本 50 否 新闻标题
4 Author 文本 50 否 新闻作者
5 Original 文本 50 否 新闻出处
6 UpdateTime 日期/时间 50 否 新闻更新时间
7 Content 备注 50 否 新闻内容
表:ReViewID:(评论)
序号 字段名 类型 长度 小数位数 允许空 主键 说明
1 ReViewID 自动编号 长整型 是 新闻评价编号
2 NewID 自动编号 长整型 否 新闻自动编号
3 ReViewTitle 文本 50 否 评价标题
4 Author 文本 100 否 评价作者
5 Email 文本 100 否 作者邮箱
6 Content 备注 50 否 评价内容
2.4 功能需求
该新闻管理系统可以在Windows 2000 Server操作系统平台上运行,Web服务器为IIS,数据库为ACCESS,开发工具采用的Microsoft Visual Studio .NET和DreamWeaver。其工作流程为:用户登录通过权限判断,普通用户只能浏览、阅读和查询新闻,可以留言,注册用户除了可以完成普通用户的操作外,还可以进入新闻管理模块进行新闻录入、修改和删除的操作。注册用户除系统管理员外只能对自己录入的新闻进行删改操作。
包括常见网站的新闻管理的各个方面:新闻录入、浏览、删除、修改、检索等各个方面,完整地实现了网站对即时新闻的管理要求。
3.系统设计
总体主要分前台和后台两大部分。操作简单、界面友好:完全控件式的页面布局,使得新闻的录入工作更简便;许多选项包括新闻类别、来源等只需要点击鼠标就可以完成;另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况。
4.数据库设计
4.1 概念设计(E-R图)
网站总索引
4.2 逻辑设计
基于http://ASP.NET技术的系统结构模型
http://ASP.NET结构是一个三层系统:UI层、业务逻辑层和数据层,如图1所示。
图1 http://ASP.NET的系统结构模型
UI层负责与用户交互,接收用户的输入并将服务器端传来的数据呈现给客户。
业务逻辑层负责接收浏览器传来的请求并将请求传给数据层,同时将请求处理结果发给浏览器。它由Web表单、XML Web服务和组件服务组成。其中Web表单是http://ASP.NET应用程序的核心所在,它是向客户呈现数据和信息的基础,也是响应和处理客户与显示的Web表单交互生成的信息和数据的基础。
数据层是通过http://ADO.NET操纵数据为事务逻辑层提供数据服务,如存储数据操作结果、返回数据检索结果等。
5.详细设计
系统的主要功能是通过几个功能模块来实现的。具体的设计过程如下:
⑴ 系统登录:该模块负责将用户分为普通用户和注册用户来实现用户权限的管理。
⑵ 新闻浏览:该模块负责分页列出网站所有新闻的信息,包括标题、分类、来源字段及发布日期,每条新闻的标题被做成一个超链接,点击它们就能跳转页面进行新闻阅读。
⑶ 新闻阅读:在其他页面中点击标题链接即进入新闻阅读页面,此时,每条新闻的详细信息将被取出,包括内容、标题、关键字等,并按照相对固定的格式放置在页面的不同区域,所有新闻使用大致相同的页面布局,只是各字段对应的内容不同而已,另外,页面其它位置,可以动态放置其他元件,如网站标志logo、页面广告banner等链接图片,这样可以很容易地实现图文并茂的阅读效果。
⑷ 新闻查询:该模块提供了新闻查询功能,输入待查找的内容及选定分类信息可以快速地找到符合条件的新闻,并输出查询结果。
⑸ 新闻管理:该模块负责分页罗列登录的注册用户曾发布过且未删除的新闻信息,用户可以对该条新闻进行删除、修改。非新闻发布者除系统管理员外不具有对该条新闻的处理权限,所以不同用户进入此页面将显示不同的内容。
⑹ 新闻录入和修改:录入一条新闻所需要的内容,包含标题、关键字、类型、来源部门、发布日期等,同时从登录模块得到用户名,这些信息将被写入数据库中保存。该模块还负责编辑状态下的更新,这时,它将根据取得的Title字段值对页面控件初始化。
6.系统实现
1)ACCESS数据库的结构及内容设计部分(Qtech/luyudata.mdb):
2)网站美化部分,作为网站开发工作的重要一步,为追求美观和谐,需要做大量的事前工作,本站用photo和flash设计制作,制作的前期效果:
3)在http://VB.NET中创建WEB工程,并进行主要程序代码设计:
//css/style.css网站样式表文件
body
{font-family: 宋体,arial;
font-size: 12px;
padding:0;
margin:0 auto;
}
table {font-size: 12px;}
td {font-size: 12px;}
p {color: #000000;
font-size: 12px;
font-weight: normal;
line-height: 12px;}
li {color: #000000;
font-size: 12px;
text-decoration: none;}
br {font-size: 12px;
font-weight: normal;
line-height: 12px;}
b {font-weight: bold}
a {color: #083898;
font-size: 12px;
font-weight: normal;
text-decoration: none;}
a:visited {color: #083898;
text-decoration: none;}
a:active {color: #ff9933
text-decoration: none;}
a:hover {color: #ff9933;
text-decoration: none;}
.lr {color: #083898;
font-size: 12px;
font-weight: normal;
text-decoration: none;}
.nav {color: #083898;
font-size: 12px;
font-weight: normal;
text-decoration: underline;}
.banner {font-size: 12px;
font-weight: normal;
text-decoration: none;}
.sys {color: #666666;
font-size: 12px;
font-weight: normal;
text-decoration: underline;}
.affiche {color: #333333;
font-size: 12px;
font-weight: normal;}
.fonttitle {color: #993333;
font-size: 12px;
font-weight: bold;}
.title {color: #666699;
font-size: 12px;
font-weight: bold;}
//web.config网站配置文件
<?xml version="1.0"?>
<configuration>
<appSettings/>
<connectionStrings/>
<system.web>
<compilation debug="true"/>
<authentication mode="Windows"/>
<customErrorsmode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
</system.web>
</configuration>
//Default.aspx首页文件
<!—头部信息,包含了各模块用的文件-->
<%@ Page Language="VB" Debug="true" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>/数据库连接所用库包
<%@ Register TagPrefix="mynews" TagName="top" src="ascx/top.ascx"%>/网站头部
<%@ Register TagPrefix="mynews" TagName="footer" src="ascx/footer.ascx"%>/网站底部
<%@ Register TagPrefix="mynews" TagName="search" src="ascx/search.ascx"%>/用于显示搜索板块
<%@ Register Src="ascx/newslist.ascx" TagName="newslist" TagPrefix="mynews" %>/用于显示新闻资讯具体内容
<html>
<head>
<title>青岛理工大学新闻发布系统</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="style.css" type="text/css" rel="Stylesheet" />
</head>
<body>
<mynews:top runat="server" ID="top1" />
<table width="778px" border="0" align="center" cellpadding="0" cellspacing="6px">
<tr>
<td width="578px">
<mynews:newslist ID="newslist1" runat="server"/>
</td>
<td width="200px" valign="top">
<mynews:search ID="Search1" runat="server"/>
</td>
</tr>
</table>
<mynews:footer ID="End1" runat="server"/>
</body>
</html>