新闻发布系统 课程设计说明书.docx
《新闻发布系统 课程设计说明书.docx》由会员分享,可在线阅读,更多相关《新闻发布系统 课程设计说明书.docx(34页珍藏版)》请在冰点文库上搜索。
![新闻发布系统 课程设计说明书.docx](https://file1.bingdoc.com/fileroot1/2023-6/9/068e7a9d-d91a-45e6-b641-89058345a081/068e7a9d-d91a-45e6-b641-89058345a0811.gif)
新闻发布系统课程设计说明书
课程设计说明书
课程设计名称:
WEB课程设计
课程设计题目:
新闻发布系统
学院名称:
信息工程
2011年6月26日
摘要
【摘要】我们从建站的实际情况出发,经过对有关网站新闻发布事项的一番考察和分析,确立了新闻发布系统的具体实现功能。
并阐述系统的结构设计和功能设计,实现新闻的分类显示,最近新闻的提示,新闻滚动功能等。
经过授权的用户可以通过Web浏览器,以人机交互式的客户端程序实现对学校新闻的发布、管理、实时的进行行为统计和记录。
该系统是一个基于新闻发布和内容管理的全站管理系统;基于B/S模式WEBMIS系统,本系统可以将杂乱无章的信息(包括文字、图片
和影音)经过组织,合理而且有序地呈现在大家面前。
简单的说,新闻发布系统就是充当一个网络新闻媒介的功能。
主要实现对新闻的分类,审核,发布,模拟了一般新闻媒介的发布的过程
关键词:
新闻发布、B/S模式、管理
【Abstract】weembarkfromthestationconstructionactualsituation,passthroughtoarelatedwebsitenewsissueiteminspectionandtheanalysis,hasestablishedthenewsissuesystemconcreterealizationfunction.Andtheelaborationsystemstructuraldesignandthefunctionaldesign,realizethenewsclassificationtodemonstratethat,therecentnewsprompt,thenewsrollsthefunctionandsoon.AftertheauthorizedusermaythroughtheWebbrowser,bytheman-machineinteractivecustomerendprocedurerealizationtotheschoolnewsissue,themanagement,real-timecarryonthebehaviorstatisticsandtherecord.Thissystemisaschoolwebsitesub-system,hastheverygoodexteriorconnection,cantheverygoodcoordinatestandothersubsystemsservethewebsitenewsissueThissystemisbasedonthenewsissueandthecontentmanagemententirestationmanagementsystemmanagementsystem;BasedonB/SthepatternWEBMISsystem,thissystemmaythechaoticinformation(includingwriting,pictureandvideoandmusic)theprocessorganization,reasonablyhastheforewordtopresentinfrontofeverybody.Simplesaying,thenewsissuedthesystemisactsasaNetNewsmediumthefunction,themainrealizationtothenewsclassification,theverification,theissue,hassimulatedthecommonnewsmediumnewsissueprocess
Keywords:
newsissue、B/Sthepattern、management
1诸论
1.1开发工具的选用及介绍
1.ASP的优势:
ActiveServerPages:
“动态服务器网页”,一般简称为“ASP”,ASP之所以能受到大家的重视与使用的原因,主要在于所产生的执行结果都是标准的HTML格式,而且这些程序是在网络服务端中执行,使用一般的浏览器(如IE或Netscape)都可以正确地获得ASP的“执行”结果,并且将这ASP执行的结果直接在浏览器中“浏览”,不像VBScript或JavaScript是在客户端(Client)的浏览器上执行,若使用VBScript来设计程序,客户端(Client)在IE浏览器中可以显示程序执行的结果,可是,客户端(Client)若使用Netscape浏览器就无法显示VBScript的执行结果。
2.ASP的特点:
任何开发工具皆可发展ASP。
只要使用一般的文书编辑程序,如Windows记事本,就可以编辑。
当然,其他网页发展工具,例如,FrontPageExpress、FrontPage等也都可以;不过还是建议你用记事本来写,既省钱又方便,若是使用那些所见即所得的网页编辑来写ASP,可能会发生一些意想不到的离奇状态。
3.通吃各家浏览由于ASP程序是在网络服务器端中执行,执行结果所产生的HTML文件适用于不同的浏览器。
4.语言相容性高:
ASP与所有的ActiveXScript语言都相容,除了可结合HTML,VBScript、JavaScript、ActiveX服务器组件来设计外,并可经由“plug-In(外挂组件模组)的方式,使用其他厂商(ThirdParty)所提供的语言。
隐密安全性高。
如果我们在浏览器中直接查看网页的原始代码,就只能看到HTML文件,原始的ASP程序代码是看不到的!
这是因杰ASP程序先于网站服务(WebServer)端执行后,将结果转换成标准HTML文件,再传送到客户端(Client)的浏览器上,因此,我们所辛苦撰写的ASP程序并不会轻易地被看见进而被盗用。
5.易于操控数据库:
ASP可以轻易地通过ODBC(OpenDatabaseConnectivity)驱动程序连接各种不同的数据库,例如:
Acess、Foxpro、dBase、Oracle等等,另外,ASP亦可将“文本文件”或是”Excel”文件当成数据库用。
6.面向对象学习容易:
ASP具备有面向对象(Object-Oriented)功能,学习容易,ASP提供了五种方便能力强大的内建对象:
Request、Response、Sever、Application以及Session,同时,若使用ASP内建的“Application”对象或”Session”对象所撰写出来的ASP程序可以在多个网页之间暂时保存必要的信息。
ASP的六大内部对象Request、Response、Server、Session、Application、ObjectContext从客户端取得信息将信息送给客户端提供一些Web服务器工具储存在一个Session内的用户信息,该信息仅可被该用户访问在一个ASP-Application中让不同的客户端共享信息可以用来配合MicrosoftTransaction服务器进行分布式事务处理。
所以我选择了ASP结合Frontpage架构网站。
在此期间本人将使用MacromediaDreamweaverMX2004进行ASP页面的编码,并使用IIS6.0对页面进行调试。
1.2ASP技术访问WEB数据库
一.访问WEB数据库的多种方案
目前在WINDOWS环境下有多种访问WEB数据库的技术,主要有:
(1).公共网关接口CGI(CommonGatewayInterface)
CGI是较早实现的技术。
适用于多种服务器平台,如UNIX、WINDOWS等,但CGI的开发成本高、维护困难、功能有限、不具备事务处理功能、占用服务器资源较多。
(2).INTERNET数据库连接器IDC(InternetDatabaseConnector)。
IDC集成在ISAPI(InternetServerAPI)中,充分利用了DLL技术,易扩充,但编程较CGI更为复杂,只适用于小型数据库系统。
(3).先进数据库连接器ADC(AdvanceDatabaseConnector)
ADC提供了ActiveXControl来访问数据库,它的主要特点是数据查询由用户端浏览器执行,因而需将服务器端数据库中的部分记录下载到用户端,系统开销较大、响应慢,只适用于特别频繁的数据库查询操作。
(4).JAVA/JDBC语言编程
JAVA语言是一种面向对象、易移植、多线程控制的语言,可通过JDBC去连接数据库。
用JAVA/JDBC编写的软件可移植性强,适用于多种操作系统,但其执行效率和执行速度还不理想,目前无法建立高效、高速的应用。
(5).动态服务器页面ASP(ActiveServerPage)
ASP是微软公司最新推出的WEB应用开发技术,着重于处理动态网页和WEB数据库的开发,编程灵活、简洁,具有较高的性能,是目前访问WEB数据库的最佳选择。
二.ASP简介
1.ASP访问数据库的原理
ASP是服务器端的脚本执行环境,可用来产生和执行动态的高性能的WEB服务器程序。
当用户使用浏览器请求ASP主页时,WEB服务器响应,调用ASP引擎来执行ASP文件,并解释其中的脚本语言(JScript或VBScript),通过ODBC连接数据库,由数据库访问组件ADO(ActiveXDataObjects)完成数据库操作,最后ASP生成包含有数据查询结果的HTML主页返回用户端显示。
由于ASP在服务器端运行,运行结果以HTML主页形式返回用户浏览器,因而ASP源程序不会泄密,增加了系统的安全保密性。
此外,ASP是面向对象的脚本环境,用户可自行增加ActiveX组件来扩充其功能,拓展应用范围。
2.ASP页面的结构:
ASP的程序代码简单、通用,文件名由.asp结尾,ASP文件通常由四部分构成:
(1)标准的HTML标记:
所有的HTML标记均可使用。
(2)ASP语法命令:
位于<%%>标签内的ASP代码。
(3)服务器端的include语句:
可用#include语句调入其它ASP代码,增强了编程的灵活性。
(4)脚本语言:
ASP自带JScript和VBScript两种脚本语言,增加了ASP的编程功能,用户也可安装其它脚本语言,如Perl、Rexx等。
3.ASP的运行环境
目前ASP可运行在三种环境下。
(1)WINDOWSNTserver4.0运行IIS3.0(InternetInformationServer)以上。
(2)WINDOWSNTworkstation4.0运行PeerWebServer3.0以上。
(3)WINDOWS95/98运行PWS(PersonalWebServer)。
其中以NTserver上的IIS功能最强,提供了对ASP的全面支持,是创建高速、稳定的ASP主页的最佳选择。
4.ASP的内建对象
ASP提供了六个内建对象,供用户直接调用:
(1)Application对象:
负责管理所有会话信息,可用来在指定的应用程序的所有用户之间共享信息。
(2)Session对象:
存贮特定用户的会话信息,只被该用户访问,当用户在不同WEB页面跳转时,Session中的变量在用户整个会话过程中一直保存。
Session对象需cookie支持。
(3)Request对象:
从用户端取得信息传递给服务器,是ASP读取用户输入的主要方法。
(4)Response对象:
服务器将输出内容发送到用户端。
(5)Server对象:
提供对服务器有关方法和属性的访问。
(6)ObjectContext对象:
IIS4.0新增的对象,用来进行事务处理。
此项功能需得到MTS(MicrosoftTranscationServer)管理的支持。
5.ASP的主要内置组件:
(1)AdRotator组件:
用来按指定计划在同一页上自动轮换显示广告,用于WWW上日益重要的广告服务。
(2)BrowserCapabilities组件:
确定访问WEB站点的用户浏览器的功能数据,包括类型、性能、版本等。
(3)DatabaseAccess组件:
提供ADO(ActiveXDataObjects)来访问支持ODBC的数据库。
(4)FileAccess组件:
提供对服务器端文件的读写功能。
(5)ContentLinking组件:
生成WEB页内容列表,并将各页顺序连接,用于制作导航条。
此外,还可安装Myinfo、Counters、ContentRotator、PageCount等组件,用户也可自行编制Actiive组件,以提高系统的实用性。
6.DatabaseAccess组件ADO
WWW上很重要的应用是访问WEB数据库,用ASP访问WEB数据库时,必须使用ADO组件,ADO是ASP内置的ActiveX服务器组件(ActiveXServerComponent),通过在WEB服务器上设置ODBC和OLEDB可连接多种数据库:
如SYBASE、ORACLE、INFORMIX、SQLSERVER、ACCESS、VFP等,是对目前微软所支持的数据库进行操作的最有效和最简单直接的方法。
ADO组件主要提供了以下七个对象和四个集合来访问数据库。
(1)Connection对象:
建立与后台数据库的连接。
(2)Command对象:
执行SQL指令,访问数据库。
(3)Parameters对象和Parameters集合:
为Command对象提供数据和参数。
(4)RecordSet对象:
存放访问数据库后的数据信息,是最经常使用的对象。
(5)Field对象和Field集合:
提供对RecordSet中当前记录的各个字段进行访问的功能。
(6)Property对象和Properties集合:
提供有关信息,供Connection、Command、RecordSet、Field对象使用。
(7)Error对象和Errors集合:
提供访问数据库时的错误信息。
2系统分析与总体设计
很多网站都提供新闻栏目,例如搜狐、新浪等著名网站的新闻专栏。
许多企业和个人网站也需要定期发布一些关于企业或网站的新闻。
因为网络中新闻发布的频率非常高,如果使用静态网页作为新闻页面,则维护工作将非常繁琐,管理员每天需要制作大量的网页,从而浪费很多时间和精力。
使用新闻发布及管理系统可以使新闻发布和管理变得很轻松,管理员只需设置标题、内容和图片等新闻就可以了,系统将自动生成对应的网页。
本文将对新闻发布及管理系统进行系统分析与总体设计。
2.1系统功能描述
新闻发布及管理系统包括新闻类别管理、新闻发布管理、图片处理、新闻查询和用户管理等模块。
具体描述如下:
1.新闻类别管理:
(1)新闻类别的录入,包括类别编号和类别名称等信息;
(2)新闻类别的修改;
(3)新闻类别的删除;
(4)新闻类别的查询。
2.新闻发布管理:
(1)基本新闻信息的录入,包括新闻标题、新闻内容和所属类别等;
(2)基本新闻信息的修改;
(3)基本新闻信息的删除;
3.新闻查询模块:
(1)按照新闻类别分页显示新闻;-
(2)按照日期分页显示新闻。
4.系统用户管理功能:
(1)系统用户信息的录入,包括用户名和密码等信息;
(2)系统用户信息的修改;
(3)系统用户信息的删除。
2.2系统功能模块划分
从功能描述的内容可以看到,本实例可以实现6个完整的功能。
我们根据这些功能,设计出系统的功能模块,如图2-1所示。
图2-1新闻发布及管理系统功能模块示意图
新闻发布及管理系统的功能模块之间的关系如图2-2所示。
图2-2新闻发布及管理系统的功能模块关系图
在本系统中,用户管理模块的功能比较简单。
在系统初始化时,有一个默认的“系统管理员”用户Admin,由程序设计人员手动地添加到数据库中。
Admin用户可以创建用户、修改和删除用户;普通用户则只能修改自己的用户名和密码。
用户管理功能模块的关系如图2-3所示。
图2-3用户管理功能模块的关系图
2.3系统流程分析
为了使读者进一步了解本实例系统的设计,本小节将对系统进行流程分析。
多用户系统的工作流程都是从用户登录模块开始,对用户的身份进行认证。
身份认证可以分为以下两个过程:
(1)确认用户是否是有效的系统用户。
(2)确定用户的类型。
第1个过程决定用户能否进入系统。
第2个过程根据用户的类型决定用户的操作权限,从而决定用户的工作界面。
本系统分为前台系统和后台系统两个部分。
前台系统不需要进行身份认证,任何人都可以通过浏览器阅读已经发布的新闻、发表网友评论。
后台系统的流程分析如图2-4所示。
Admin用户拥有所有的权限,普通用户只能对自己发布的新闻进行管理,包括修改新闻内容、删除新闻和删除网友评论。
图2-4后台系统的流程分析
3数据库结构设计与实现
这一章将介绍系统的数据库表结构和创建表的脚本。
3.1创建数据库
首先创建一个数据库news,用来保存本系统的所有数据。
创建数据库的脚本代码如下:
CREATEDATABASEnews
GO
可以在SQL查询分析器中执行该语句,创建数据库。
3.2数据库逻辑结构设计
本系统定义的数据库中包含以下3个表:
新闻类别表:
Class-table、新闻基本信息表:
News-data和用户信息表:
WENEWS。
下面分别介绍这些表的结构。
1.新闻类别表Class-table
新闻类别表Class-table用来保存新闻类别数据,结构如表3-1所示。
表3-1 表Class-table的结构
编号
字段名称
数据结构
说明
1
ID
int
新闻类别编号
2
Class
varchar(50)
新闻类别名称
在设计数据库结构时,很多表都需要设计一个整型字段作为标识列,这几乎已经成为惯例,例如表Class-table中的ID字段。
所谓标识列,就是可以惟一标识一行记录的列,在表中不会存在两条标识列相同的记录。
如果其他表需要引用表Class-table中的数据,则在表中添加一个ID字段就可以了。
有的程序设计人员习惯于直接使用名称字段作为标识列,例如表Class-table中的Class字段。
这样,如果修改Class字段的值,就需要同时修改其他所有表的相应字段的值,从而造成不必要的麻烦。
在系统中,ID字段对于用户来说是透明的,用户感觉不到它的存在,也无法对其进行修改。
2.基本新闻表News-data
基本新闻表News-data用来保存网上新闻的基本信息,结构如表3-2所示。
表3-2表News-data的结构
编号
字段名称
数据结构
说明
1
ID
int
新闻编号
2
News-Title
varchar(100)
新闻标题
3
News-Data
text
新闻内容
4
News-Body
datetime
5
News-Click
varchar(50)
6
News-Class
int
新闻类别编号
7
True-Index
bit
8
News-namet
int
3.用户信息表WENEWS
用户信息表WENEWS用来保存用户的基本信息,结构如表3-3所示。
表3-3表WENEWS的结构
编号
字段名称
数据结构
说明
1
ID
int
用户ID号 。
2
Admin-Name
varchar(50)
用户名
3
Admin-Pass
varcahr(50)
密码
4目录结构与通用模块
4.1目录结构
在运行实例时,需要将web目录复制到IIS/PWS的根目录下,例如
目录下包含下面两个子目录:
images用于存储上传的新闻图片;
pic用于存储网页中的图片文件;
其他ASP和HTM文件都保存在web目录下。
4.2通用模块
本实例中包含一些通用模块,这些模块以文件的形式保存,可以在其他文件中使用#include语句包含这些模块,使用其中定义的功能。
1.Conn.asp
Conn.asp的功能是实现到数据库的连接,因为在很多网页中都有连接数据库的操作,所以把它保存在文件Conn.asp中,这样可以避免重复编程。
Conn.asp的代码如下:
<%
setconn=server.createobject("adodb.connection")
conn.open"DBQ="&server.mappath("Data/News_Data.mdb")&";Driver={MicrosoftAccessDriver(*.mdb)};"
%>
在文件中引用此文件作为头文件就可以访问数据库,代码如下:
--#includeFile="Conn.asp"-->
2.admin_index.asp
在添加和修改新闻内容时,需要对字体、字号、颜色和排列位置等属性进行设置。
admin_index.asp可以实现这些功能。
admin_index.asp的设计界面如图4-1所示。
图4-1admin_index.asp的设计界面
在使用admin_index.asp时,设置指定的选项,将会在新闻内容中生成相应的HTML代码。
例如,选中正文abc,然后选择“楷体”、“1号字”,将生成如下代码:
abc
[space]是自定义的符号,因为空格在转换成HTML格式时,将被替换为“ ;”,所以这里使用[space]表示空格。
在显示新闻内容时,程序将会自动将[space]转换为空格。
因为template.asp的代码较多,这里仅以字体控制的代码为例说明。
相关代码如下:
字体 ='')
{selection.createRange().text=''+selection.createRange().text+''}else
{myform.txtcontent.value=''+myform.txtcontent.value+''}"name=fontstyle='FONT-SIZE:
9pt'>
宋