基于web的新闻发布管理系统的研究与设计 正文.docx
《基于web的新闻发布管理系统的研究与设计 正文.docx》由会员分享,可在线阅读,更多相关《基于web的新闻发布管理系统的研究与设计 正文.docx(39页珍藏版)》请在冰豆网上搜索。
基于web的新闻发布管理系统的研究与设计正文
基于web的新闻发布管理系统的研究与设计
1前言
互联网技术的高速发展,各种网站层出不穷,而类型众多的网站中新闻类网站是最常见也是最重要的。
广大网民频繁的需要从新闻网站中获取自己需要的信息,而网站必须做到高频率的更新以保证信息的实时性,使得网站管理的工作量巨大。
一个简单易用、功能全面的新闻发布管理系统对于新闻类网站的稳定运行能起到至关重要的作用。
1.1课题研究背景与意义
在互联网流行之前,人们习惯通过收音机、报纸、电视等媒体来获取新闻资讯,这些途径都存在着更新慢、主动性低、信息量受限等弊端。
而如今随着网络技术的发展,人们这些传统习惯开始改变,上网浏览新闻逐渐成为了大家共同的选择。
与传统媒体相比,通过互联网传播新闻具有实时性高、互动性强、信息量大、节约成本等优势,所以越来越多的人会选择上网获取新闻资讯,而这种现象无疑是为网站带来了巨大的工作量。
在过去大部分网站都是采用静态方式管理页面信息,但随着信息需求量的增大,这种方式很不利于网站管理员的工作。
因此为了提高管理工作的效率,我们很迫切的需要开发一个可利用动态技术对网站进行管理的新闻发布管理系统。
传统的静态网页管理方式需要管理人员手动制作并发布网页,不但工作量大,而且每次更新页面信息时必须中断服务,造成用户暂时无法访问网站,这样的方式无论对于网站还是用户都无法获得良好的体验。
然而如果使用网站新闻发布管理系统对于网页进行动态管理,这些问题都将不复存在。
一个功能完整的新闻发布管理系统能够对网页中需要频繁变更的内容进行管理,例如最基本的功能便是对新闻进行发布、更新、删除等操作,都有系统化、标准化的步骤,并且由于对数据库的引用,在操作过程中页面会动态更新,不会存在服务的中断,使得管理员工作效率更高,为用户提供了更优质的平台,从而也能为网站吸引更多长期用户群。
在互联网技术飞速发展的今天,网站管理工作的质量直接影响到网站的用户体验,使用新闻发布管理系统正规化、科学化的管理新闻网站,已经成为信息管理技术与世界接轨的重要条件之一。
1.2国内外研究现状
自从90年代开始,国外的媒体就已经步入网络时代,并逐渐掌握相关技术,设计出了一些新闻发布管理系统。
我国在这方面起步较晚,经过多年的探索与锻炼,大部分媒体网站还是处于电子版或网络版的发展阶段,网上发布的信息主要是传统媒体内容的复制,并非真正意义上的媒体网站。
然而近几年来,网络新闻正以一种独立新闻媒体的形式出现。
即网络新闻也有自己的记者、采访、活动策划、特色栏目和活动直播等,这些新内容既吸收了传统媒体的优势,又充分利用了网络实时、交互、直观以及制作费用低等方面的优势,因此网络媒体将真正成为传统媒体的竞争对手。
例如以新浪、搜狐为代表的门户网站,它们同时关注众多领域的新闻动态,力争做到又快又好,逐渐成为了人们上网浏览新闻时的首选站点。
网络新闻实现了由文字向声音、FLASH、图像、音频、视频等全方位的发展,大大增加了信息量,提高了视听效果。
网络新闻的来源也日趋多样化,不仅有各种合作媒体上发表的文章,还包括网站自己采访的新闻,网站从国外合作媒体处翻译来的新闻,网站合作组织、活动提供的新闻,驻地的华侨和其他人士提供的新闻等。
随着网络新闻的多元化发展,新闻发布管理系统的运用很快成为了趋势。
一个具有完善的新闻发布、管理、浏览、搜索等功能的系统能够为管理员、用户带来很大的便利。
而随着我国经济实力的增强,科技实力的迅速提升,对于此系统的掌握程度也逐渐接近世界科技前进的脚步。
也随着网络新闻的多元化发展,新闻发布管理系统的运用很快成为了趋势。
随着信息科学的飞速发展,网络及依托网络发展起来的各种网络产品,已走进了人们的生活、工作与学习之中。
通过全球成千上万的网站查找某一学科的专项技术,或了解最新的科学发展前沿动向,网络成了一种最方便、快捷的方法。
除了学术上的广泛应用,人们还可通过网络实现与远方朋友的交流,结识其他国度的朋友,这些都从本质上改变着现代人的生活和工作方式,越来越让人们感受到了从工业社会进入信息社会的全新体验。
以人为本、科技为人服务的理念得到最广泛的认同,并真正改变着人们的理念。
随着因特网的普及,大家不仅可以在网上浏览信息,而且可以参与其中,很多人都拥有自己的网页和网站,在因特网上展示和宣传自己。
因此就需要有信息发布系统来发布这些信息,包括大量的新闻了,它是人们以后工作生活中不可缺少的工具。
新闻发布系统(信息发布系统),是将网页上的某些需要经常变动的信息,类似新闻、新产品发布和业界动态等更新信息集中管理,并通过信息的某些共性进行分类,最后系统化、标准化发布到网站上的一种网站应用程序。
网站信息通过一个操作简单的界面加入数据库,然后通过已有的网页模板格式与审核流程发布到网站上。
它是针对企业发布时效性较强的多类型新闻信息而开发,此系统可发布多类新闻信息,如企业新闻、行业新闻等,
且可支持最多达两级分类。
系统还具有发表评论、点击次数统计、相关信息、关键字查询功能。
1.3本文主要内容与结构
本文主要介绍了一个新闻发布管理系统的设计与实现,为管理员发布和管理新闻提供了一个实用、快捷的管理平台,也为用户提供一个快速浏览和搜索新闻的平台。
本论文共分6章,各章节内容安排如下:
第1章:
前言。
介绍了论文的课题研究背景与意义、国内外研究现状以及论文主要内容与结构。
第2章:
需求分析及功能模块分析。
分析了新闻发布管理系统的需求情况,介绍了系统的开发工具及其相关知识、功能模块等信息,并给出系统数据流图。
第3章:
系统概要设计。
本章对系统设计进行了概要性的描述,介绍了系统的主要功能,包括数据库的设计规划等信息。
第4章:
系统详细设计与实现。
详细介绍了系统功能的设计与实现过程,并附上核心代码及主要功能运行结果截图。
第5章:
系统的调试与测试。
介绍系统的测试方案与测试结果,并对结果进行分析。
第6章:
结论。
总结了论文的研究成果以及整个设计与实现的研究心得,探讨未来的发展方向,并包括最后的致谢和参考文献。
2系统总体设计
2.1需求分析
互联网所具有的实时性将传统媒体在地域、时间方面的问题迎刃而解,而网站则需要利用好这一优势为用户提供优质的新闻服务,满足广大群众对资讯的需求,才能为自己创造更大的利益。
本系统是针对新闻网站管理问题所设计的新闻发布管理系统。
对于用户而言,希望能流畅的浏览新闻、按需搜索想要的新闻以及对新闻发表个人见解等;对于管理者而言,希望能方便、快捷的发布与管理新闻、管理用户信息及其评论等。
以上这些都是一个实用的新闻发布管理系统需要实现的功能。
除了具备这些功能外,系统还应尽量做到操作简单、界面友好,这对提高用户体验也起到至关重要的作用。
2.1.1功能需求
由于对新闻的浏览不需要限制权限,所有用户都可以对网站的新闻内容进行浏览,包括最新资讯的浏览以及按新闻类别进行浏览。
而除浏览外的所有功能都需要验证身份后才能操作。
新闻发布管理系统设置的服务对象有两种:
注册用户和管理员。
(1)普通浏览者可通过注册个人信息而成为网站的注册用户,通过登录验证进入登录状态后,用户能够获得对新闻进行评论与搜索的两项功能,也能对个人信息进行修改。
(2)普通浏览者可通过注册时提供正确的管理员授权密码而注册成为管理员,管理员除具有注册用户的操作权限外,可对网站的新闻、新闻类别进行添加、编辑或删除等操作,并可对用户信息、用户评论进行修改、删除等管理。
2.2功能模块简介
本系统是典型的信息管理系统(MIS),通过对用户身份的判断,实现相应的权限控制,其开发过程主要包括后台数据库的建立与前台程序的开发两个方面。
对于数据库的建立需要考虑数据的一致性与完整性,对于程序的设计则需要尽量做到功能完善、操作便捷、具有可扩展性等要求。
在各个模块的设计过程中,应注重各个模块的相对独立性,减少各模块间的耦合,以减轻程序设计的难度。
各个模块的功能关系图见图2.1所示。
图2.1系统功能模块图
根据系统的设计要求,将系统划分为四个不同的功能模块,从而对系统进行模块化的设计。
以下是各模块的详细分析及说明:
(1)登录模块:
此模块包括注册、登录与个人信息管理三个功能,普通浏览者可注册成为注册用户,或通过提供正确的管理员授权密码注册成为管理员。
登录时系统可自动识别用户身份,若为管理员则提供管理功能链接。
用户或管理员可对密码、邮箱等个人信息进行修改。
(2)新闻浏览模块:
此模块中新闻浏览功能向普通浏览者开放,可按新闻类别进行浏览。
注册用户可搜索新闻或对新闻发表评论。
(3)新闻管理模块:
该模块只有管理员能够进入,进行新闻相关的操作。
包括添加或删除新闻类别、发布或删除新闻以及对已发布的新闻进行重新编辑。
(4)用户管理模块:
该模块同样只有管理员可进入,可编辑或删除用户信息,也可管理用户对新闻的评论内容。
2.3系统业务流程图
进入本系统后,可进行基本的新闻浏览操作,也可点击页面用的“登录”链接进行身份验证。
身份验证分为两个过程:
1)根据用户名判断用户身份。
2)验证密码是否匹配。
执行第一个过程时首先要在数据库中搜索是否存在此用户,若存在则鉴别用户的身份,接着执行第二个过程,也就是验证用户输入的密码是否与数据库中的相匹配,若匹配则成功登录。
以普通注册用户身份登录后,可在任意页面的搜索框中输入关键字进行新闻搜索,且支持模糊查询。
点击新闻标题进入详细浏览页面后,可在正文下方的评论框中输入内容发表见解。
以管理员身份登录后,将在页面中显示管理员相关功能操作的链接。
进入新闻管理页面后,可添加、编辑或删除新闻与新闻类别。
进入用户管理页面可进行相关的用户管理操作。
在评论管理页面将列出当前数据库中所有的用户评论内容,管理员可对之进行编辑、删除等操作。
本系统的业务流程图如2.2所示。
图2.2系统业务流程图
2.4数据字典
以上操作系统:
WindowsXP,IIS5.0及以上的版本,IE5.0以上的版本。
软件环境:
MicrosoftVisualStudio2005、MicrosoftS数据字典是由关于数据库中数据描述信息组成的库,数据字典的编制过程贯穿于数据库设计的各个阶段,从收集信息开始即着手编制,随着设计工作的展开,数据字典也逐步形成,管理员可以通过数据字典获得更加全面的数据库信息。
“用户信息表”的字典条目,见表2.1。
表2.1用户信息表数据字典
文件名:
用户信息表
别名:
login
组成:
用户名+用户身份+用户密码+管理员授权密码+邮箱
备注:
“登录用户表”的字典条目,见表2.2。
表2.2登录用户表数据字典
文件名:
登录用户表
别名:
checkout
组成:
用户编号+用户名+用户身份标示
备注:
“新闻类别表”的字典条目,见表2.3。
表2.3新闻类别表数据字典
文件名:
新闻类别表
别名:
catagory
组成:
类别编号+类别名
备注:
“新闻表”的字典条目,见表2.4。
表2.4新闻表数据字典
文件名:
新闻表
别名:
news
组成:
新闻编号+所属类别+标题+内容+作者+发布时间
备注:
“评论表”的字典条目,见表2.5。
表2.5评论表数据字典
文件名:
评论表
别名:
comment
组成:
评论编号+所属标题+评论内容+用户名+评论时间
备注:
2.5系统的开发环境
选择开发平台与工具是系统开发的重要环节,正确的选择能使系统开发过程更加高效,有时甚至会涉及到系统的关键功能能否实现。
为了开发一个安全、稳定和实用的新闻发布管理系统,选择以下开发平台:
MicrosoftVisualStudio是微软公司推出的开发环境,可以用来创建Windows平台下的Windows应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和Office插件。
MicrosoftSQLSever是一个关系数据库管理系统,数据库引擎是SQLServer系统的核心服务,负责完成数据的存储、处理和安全管理。
3数据库的结构设计
数据库的后台支持是一个新闻发布管理系统能够实现动态管理的重要条件,所以其结构设计是系统总体设计阶段十分重要的环节。
一个优秀的数据库是信息完整、结构紧凑的,能够促使数据调用更加便捷,系统的代码编写更加清晰明确。
同时,在系统代码编写过程中若数据库的结构发生变化,极有可能影响到系统功能的实现,所以在设计时必须做好长远、全面的考虑,避免增加重复修改的几率。
3.1数据库概念结构设计
数据库设计是指在已有数据库管理系统的基础上建立数据库的过程。
设计过程从关系的定义开始,通过实体联系图进行关系模式的转换,其中包括的实体的转换和实体间联系的转换。
对转换后的关系模式,进行了规范化处理。
设计所规划出的实体有用户实体、管理员实体、新闻实体、新闻类别实体、评论实体。
用户实体属性图如图3.1所示。
图3.1用户实体图
管理员实体属性图如图3.2所示。
图3.2管理员实体图
新闻实体属性图如图3.3所示。
图3.3新闻实体图
新闻类别实体属性图如图3.4所示。
图3.4新闻类别实体图
评论实体属性图如图3.5所示。
图3.5评论实体图
各实体属性图建立后,需要把它们连接在一起构成综合性的实体属性图,从而得到初步的总体模型。
新闻发布管理系统的E-R图如3.6所示。
图3.6系统总E-R图
3.2数据库表的设计
本系统数据库共包含五个数据表,即用户信息表、登录用户表、新闻类别表、新闻表、评论表。
各表详细信息如下
1.用户信息表
表名为login,此表包含注册用户与管理员的全部信息,注册用户包括用户名、密码、邮箱信息,管理员则额外包括管理员授权密码信息。
用户信息表结构如表3.1所示。
表3.1用户信息表
名称
字段名称
数据类型
长度
主键
用户名
id
nchar
16
是
身份
status
nchar
10
否
密码
pwd
nchar
16
否
管理员授权密码
admpwd
nchar
16
否
邮箱
mail
nchar
30
否
2.登录用户表
表名为checkout,此表能够储存已登录用户的用户名与身份标示,用以判断用户权限。
登录状态表结构如表3.2所示。
表3.2登录用户表
名称
字段名称
数据类型
长度
主键
标号
num
int(自动编号)
10
是
用户名
id
nchar
16
否
身份
ch
int
10
否
3.新闻类别表
表名为category,此表包含新闻类别信息,以便于系统对新闻类别的管理更便捷。
新闻类别表结构如表3.3所示。
表3.3新闻类别表
名称
字段名称
数据类型
长度
主键
编号
id
int(自动编号)
10
是
类别名称
leibie
nchar
10
否
4.新闻表
表名为news,此表包含新闻相关的所有数据信息,包括发布者的用户名与发布时间。
新闻表结构如表3.4所示。
表3.4新闻表
名称
字段名称
数据类型
长度
主键
编号
id
int(自动编号)
10
是
所属类别
leibie
nchar
10
否
标题
biaoti
nvarchar
MAX
否
新闻内容
wenben
nvarchar
MAX
否
作者
zuozhe
nchar
10
否
发布时间
shijian
nvarchar
50
否
5.评论表
表名为comment,此表用于存储用户对新闻的评论内容,每条评论有对应的新闻标题,以便在系统中呈现时作为筛选条件。
评论表结构如表3.5所示。
表3.5评论表
名称
字段名称
数据类型
长度
主键
编号
id
int(自动编号)
10
是
所属标题
biaoti
nvarchar
MAX
否
评论内容
neirong
nvarchar
MAX
否
评论者用户名
yonghuming
nchar
16
否
评论时间
shijian
nvarchar
50
否
3.3数据库的连接设计
本系统采用的是MicrosoftSQLSever2012作为数据库平台,所以主要利用SQL语句作为连接数据库的方法,下面列举几条代码进行简单分析:
SqlConnectioncon=newSqlConnection();
con.ConnectionString="datasource=RUNNINGAPE-PC\\SQLEXPRESS;initialcatalog=NMS;userid=sa;pwd=sa";
con.Open();
stringcmdtext1="select*fromloginwhereid='"+yhm.Text+"'andpwd='"+mm.Text+"'";
SqlCommandcmd1=newSqlCommand(cmdtext1,con);
if(cmd1.ExecuteScalar()!
=null)
{stringcmdtext7="updatecheckoutsetid='"+yhm.Text+"',ch=1wherenum=1";
SqlCommandcmd7=newSqlCommand(cmdtext7,con);
intret=cmd7.ExecuteNonQuery();
Response.Write("alert('登录成功!
');window.location.href='default.aspx';");
con.Close();
}
该段代码包含数据库连接代码与连接后的查询代码。
首先将con定义为连接数据源,连接到名称为NMS的数据库,接着验证用户输入的用户名与密码是否与login表中的信息相符,若相符则更新checkout表中的信息,并弹窗显示“登录成功!
”。
4系统详细设计与实现
系统的详细设计主要基于MicrosoftVisualStudio2010平台,需要完成概要设计中全部功能的实现,是整个设计环节中最为关键的部分。
本章将详细说明各个模块的具体实现过程。
4.1登录模块
4.1.1登录部分
系统登录流程图如图4.1所示。
图4.1系统登录流程图
普通浏览者可在任意页面通过点击“登录”连接进入登录界面,在输入框中输入用户名与密码以验证身份。
登录界面的设计如图4.2所示。
图4.2系统登录界面
4.1.2注册部分
普通浏览者可在任意页面通过点击“注册”连接进入注册界面,按要求输入个人信息后可注册为普通用户,在“注册为管理员”左侧打钩并输入正确的管理员授权密码,则可注册成为管理员。
注册界面的设计如图4.3所示。
图4.3系统注册界面
系统注册流程图如图4.4所示。
Y
图4.4系统注册流程图
4.1.3个人信息管理部分
个人信息管理部分的系统流程与界面设计与注册部分大致相同,只是将添加语句替换为更新语句,因此不再赘述。
4.2新闻浏览模块
4.2.1基本浏览
进入新闻发布管理系统首页即可浏览最新发布的五条要闻,此功能实现的主要方法是将GridView控件的数据源绑定到数据库的news表,并设置为每页显示条数为5且将翻页连接删除。
首页界面如图4.5所示。
图4.5系统首页界面
页面中可以看到5条最新要闻的标题与发布时间,点击标题将进入对应新闻详细浏览页面,页面中可以浏览该条新闻的完整内容,包括作者与发布时间。
该页面的界面设计如图4.6所示。
图4.6新闻详细浏览界面
点击标题进入对应新闻的功能实现方法与按新闻类别浏览功能的实现方法类似,将在下一节做详细介绍。
4.2.2按新闻类别浏览
浏览者在任意页面皆可看到左侧的新闻类别名称,该部分通过使用GridView控件的数据源绑定到数据库的“catagory”表而实现。
在编辑该控件的列属性时添加HyperLinkField列,将其显示文本与类别名称列绑定,并将其设置为点击链接时将数据表中该行对应的编号传输到下一个页面,以便为按新闻类别浏览页面中的GridView控件提供筛选条件。
设置页面如图4.7所示。
图4.7Gridview控件列编辑界面
浏览者通过点击新闻类别名进入相应类别的新闻列表,该列表是通过使用GridView控件绑定到数据库的“news”表而实现。
“news”表中存储的是所有类别的新闻数据,因此要显示特定类别则需在经过条件筛选。
具体实现代码如下:
stringid=Request.QueryString["id"].ToString();//获取点击类别名时传输的类别编号
stringcmdtext1="select*fromcategorywhereid='"+id+"'";
SqlCommandcmd1=newSqlCommand(cmdtext1,con);
SqlDataReaderrd=cmd1.ExecuteReader();
while(rd.Read())
{
stringleibie=rd["leibie"].ToString().Trim();
Label2.Text=rd["leibie"].ToString().Trim();
stringfilter="leibielike'%"+leibie+"%'";//过滤数据源,使之只显示本类别的新闻
ObjectDataSource2.FilterExpression=filter;
GridView2.DataBind();//刷新GridView
}
经过筛选后,按新闻类别浏览页面的GridView控件将只显示该类别的新闻,且设置为每页最多显示10条新闻标题,支持翻页功能,表中将显示新闻标题、作者及发布时间。
该页面的界面设计如图4.6所示。
图4.8按新闻类别浏览界面
4.2.3新闻搜索
登录用户可进行新闻搜索操作,搜索流程图如图4.9所示。
图4.9新闻搜索流程图
在新闻搜索页面中同样是利用GridView控件的数据源绑定到news表实现,通过以下代码实现数据筛选:
stringid=Session["id"].ToString();
stringfilter="biaotilike'%"+id+"%'";
ObjectDataSource2.FilterExpression=filter;
GridView2.DataBind();
通过查看代码可知该搜索功能支持模糊查询。
新闻搜索结果界面如图4.10所示。
图4.10新闻搜索界面
4.2.4新闻评论
登录用户可对新闻进行评论,流程图如图4.11所示。
图4.11