新闻管理系统数据库课程设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

新闻管理系统数据库课程设计
东北石油大学课程设计
2014年7月11日
东北石油大学课程设计任务书
课程数据库课程设计
题目新闻管理系统
专业计算机科学与技术姓名钱余龙学号100702140721
一、主要内容:
开发一个新闻管理系统。

设计并实现这样的一个系统主要是锻炼学生采用面向对象方法、设计思路等开发软件的能力。

二、基本要求:
系统主要有以下功能:登录、注册、添加新闻、新闻管理、分类管理和会员管理。

登录:包含用户登录信息、用户权限。

注册:包括提交注册信息。

添加新闻、新闻管理、用户管理等属于系统管理员的权限。

添加新闻:包括提交新闻分类、题目、作者、时间等。

新闻管理:包括新闻编辑、删除、评论管理等。

分类管理:包括对新闻类别进行修改等。

会员管理:包括管理会员信息、修改密码等。

除了实现上述功能以外,新闻
管理系统还应该具有友好、简洁的界面,安全性高,稳定性强的特点。

三、主要参考资料:
[1] 明日科技从入门到精通(第
三版)清华大学出版社,2012.
[2] 顾宁燕. 21天学通.(第2版)
电子工业出版社,2011.
[3] 黄明. 2.0+SQL Server中小型
信息系统开发实例精选.机械工业出版
社,2007.
完成期限19-20周
指导教师张漫
专业负责人富宇2014 年 6 月30 日
目录
第1章系统分析 (1)
1.1 开发背景 (1)
1.2 系统需求分析 (1)
1.3 开发环境 (2)
第2章系统设计 (4)
2.1 系统架构 (4)
2.2 系统功能模块 (5)
2.3 系统数据库设计 (6)
第3章系统实现 (11)
3.1 新闻管理系统登录页面 (11)
3.2 用户注册界面 (12)
3.3 新闻管理主界面 (13)
3.4 添加新闻界面 (14)
3.5 分类管理界面 (16)
3.6 会员管理界面 (16)
3.7 会员评论界面 (17)
第4章系统测试 (18)
4.1 软件测试目的 (18)
4.2 系统测试过程及结果 (18)
结束语 ............................................................................................... 错误!未定义书签。

参考文献 (21)
第1章系统分析
1.1 开发背景
21世纪是信息的时代,是网络的时代,进入信息社会高速发展的时代,数字化革命给所有领域带来新的改变。

随着Internet的普及,无论人们相隔多么遥远,都有天涯若比邻的感觉。

足不出户,便可知天下新近之大事,便可与大洋彼岸的朋友畅谈无阻。

网页逐渐融入人们的生活,快速及时地浏览新闻,获取五彩缤纷的网上信息,已成为人们日常生活的一部分,与此同时越来越多的企业建立了自己的Web网站,企业通过网站可以展示产品,发布最新动态,与用户进行交流和沟通,与合作伙伴建立联系,以及开展电子商务等。

互联网的世界里蕴藏着无限生机,这里只有想不到的、没有做不到的。

网络发展前景无限,及早与网络结合,与信息时代同步,与高科技汇合,定会给社会各行各业的发展注入新鲜的活力。

在网络技术的领域里,传统的商务网站的管理方式有两种,一是静态HTML页面,更新信息时需要重新制作页面然后上传页面并修改相应链接,然而随着Internet的进一步发展,这种静态Web站点的开发与维护变得越来越困难,而且不能与浏览者进行有效交互,从而使得这种方法已不多用。

二是基于ASP、PHP[1]或者JSP和脚本语言,将动态网页和数据库结合,通过应用程序来处理信息,这是目前较为流行的做法。

本文论述的就是采用 +Visual Studio 2005 + SqlServer开发环境开发动态的Web网络新闻发布系统。

1.2 系统需求分析
随着信息化产业逐渐进入各行各业,并成为整个国民经济的基础,对实行信息化必须有一个明确的方向,这也是客不容缓的事。

新闻信息作为当前信息化的重要组成部分,而新闻管理作为新闻信息中的一个重要环节,必须同信息化同步,以促使整个国民经济和新闻事业的发展。

本系统功能模块包括:新闻管理,新闻分类管理,会员管理,添加新闻模块。

对数据的操作主要是:数据添加、数据修改、数据查询。

根据对系统功能需求的仔细分析,对本系统提出如下要求:
1. 注册会员,可以查看所有新闻信息,对新闻进行评论,还可以修改用户信息。

2. 未注册用户,可以注册后浏览新闻信息,也可以修改个人信息。

3. 系统管理员,可以进行新闻和系统信息的添加、修改、删除等管理操作,包括会员管理、新闻分类管理、新闻管理、评论管理等。

1.3 开发环境
数据库是数据管理的最新技术,是计算机科学的重要分支。

十年来,数据库管理系统已从专用的应用程序包发展成为通用系统软件。

由于数据库具有数据的结构化、可控冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上的。

由于用到的数据表格多,另外考虑到实际情况,我选用SQL Server作为数据库开发,主要是因为SQL Server是一种常用的关系数据库,能存放和读取大量的数据,管理众多并发的用户。

因此选用SQL Server数据库。

用C#语言进行编码。

C#编程语言是微软在.NET计划中重要的开发语言,它具有语法简单,功能强大,快速应用,语言自由,强大的Web服务器控件,支持跨平台,与XML相融合等。

因此选择C#编程语言。

是Active Server Framework的缩写,意为“基于动态WEB应用程序的技术服务器网页” [2]。

ASP. NET是微软公司开发的代替ASP 的一种应用,它可以与数据库和其它程序进行交互,是一种方便功能强大的编程工具。

ASP. NET的网页文件的格式是.aspx,现在常用于各种动态网站中。

是一服务器端脚本编写环境,可以用来创建和运行动态网页或Web应用程序。

网页可以包含HTML标记、普通文本、脚本命令、.CSS、以及COM组件等。

利用可以向网页中添加交互式内容(如在线表单),也可以创建使用HTML网页作为用户界面的Web应用程序。

与HTML相比,网页具有以下特点:
(1)利用可以实现突破静态网页的一些功能限制,实现动态网页技术;
(2)ASP文件是包含在HTML代码所组成的文件中的,易于修改和测试;
(3)服务器上的解释程序会在服务器端制定ASP程序,并将结果以HTML格式传送到客户端浏览器上,因此使用各种浏览器都可以正常浏览ASP所产生的网页[3];
(4)提供了一些内置对象,使用这些对象可以使服务器端脚本功能更强。

例如可以从Web浏览器中获取用户通过HTML表单提交的信息,并在脚本中对这些信息进行处理,然后向Web浏览器发送信息;
(5)ASP可以使用服务器端ActiveX组建来执行各种各样的任务,例如存取数据库、发现那个Email或访问文件系统等。

第2章系统设计
通过对一些新闻管理网站的调查分析,个人认为,新闻管理系统主要的栏目和功能包括:新闻分类,让人们可以更快的浏览到自己所想要浏览的新闻动态;后台管理:管理员能够及时更新新闻,管理新闻,以及对会员的管理。

2.1 系统架构
整个系统分为两个部分,管理员和主界面。

管理员进入管理系统后,应该能根据自己的需要进行新闻的管理。

本系统是以Windows XP系统为操作平台,在.NET环境下编程实现。

系统E-R图如下图所示:
图2-1 系统E-R图2.2 系统功能模块
新闻管理系统功能模块:
新闻管理系
新新














退


图2-2 系统功能模块图
各模块介绍如下:
管理员模块主要包括新闻管理,新闻分类管理,会员管理,添加新闻模块,修改评论等。

新闻管理:包括发布新闻信息、编辑新闻信息、对新闻信息删除等。

新闻类型管理:包括添加新闻类型、编辑新闻类型以及删除新闻类型。

添加新闻:包括添加最新的新闻的操作。

用户管理:包括更改用户的密码以及删除用户的所有信息。

新闻管理用例图如图2-3所示:
图2-3管理员用例图
2.3 系统数据库设计
网站新闻管理系统离不开数据库系统,不论新闻和评论信息还是会员信息
都需要放在数据库中。

由于本系统适用于网站新闻管理,所以数据库的设计要考虑到各个表之间的外键连接。

包括表有:admin,users,news,review,classes 根据上功能分析,需要建立以下的表:
(1)管理员表admin:用于存储管理员的信息。

包括姓名,密码,邮箱。

表2-1 管理员admin信息表
(2)会员表users:用于存储会员的信息,包括会员编号,会员名称,会员密码,会员邮箱,会员级别。

表2-3 会员users信息表
(3)新闻信息表news:用于存储新闻编号,新闻类别,新闻标题,新闻作者,新闻出处,新闻更新时间,新闻内容。

表2-3 新闻news信息表
(4)新闻类别classes :用于存储类别编号,类别名称信息。

表2-4新闻类别classes 表
(5)新闻评论表
(review):存储访问者的对相关新闻的评论信息。

包括: 新闻编号,评论标题,评论内容,评论会员。

表2-5 新闻评论review 表
第3章系统实现
根据软件开发的基本流程,在完成系统需求、系统分析、系统设计后,就进入系统实现阶段,以下是整个系统的主要功能实现,包括前台的页面展示和后台的代码剖析。

3.1 新闻管理系统登录页面
进入登录界面时可选择登陆用户的角色,同时也可以点击注册,进入用户注册界面进行用户的注册。

出现如下界面,输入用户名和密码,当与数据库中的内容相匹配时既可登录。

图3-1 登录界面
管理员登录代码如下:
string login_class, name, password;
login_class = DropDownList1.SelectedItem.Text;
name = TextBox1.Text.Trim();
password = TextBox2.Text.Trim();
if (login_class == "管理员"){
string sql = "select * from admin where name='" + name + "'";
string connstr = "Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ID=sa;Initial Catalog=news;Data Source=.";
OleDbConnection conn = new OleDbConnection(connstr);
conn.Open();
OleDbCommand cmd = new OleDbCommand(sql, conn);
OleDbDataReader reader = cmd.ExecuteReader();//执行
if (reader.HasRows)
{
string sql2 = "select * from admin where name='" + name + "' and password='" + password + "'";
string connstr2 =
"Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User
ID=sa;Initial Catalog=news;Data Source=.";
OleDbConnection conn2 = new OleDbConnection(connstr2);
conn2.Open();
OleDbCommand cmd2 = new OleDbCommand(sql2, conn2);
OleDbDataReader reader2 = cmd2.ExecuteReader();//执行
if (reader2.HasRows){
Session["user"] = name;
Response.Redirect("Main.aspx");
}
else
{ //弹出对话框:“密码不正确”;
Response.Write("<script>alert('请输入正确的用户名和密码
')</script>");
}
}
else
{ //弹出对话框:“用户不存在!”
Response.Write("<script>alert('账户不存在!')</script>");
}
3.2 用户注册界面
不存在用户信息时,用户可进行注册,进入该系统,进行新闻浏览,查看评论等操作。

非用户注册页面如图3-2所示。

图3-2 用户注册界面
3.3 新闻管理主界面
管理员登录后可看到如下管理主界面,可以实现浏览新闻、对新闻进行管理、新闻分类管理、会员管理等功能,也可以查看新闻详细信息。

图3-3 管理员登录主界面
主要代码如下:
protected void btnSearch_Click(object sender, EventArgs e)
{
string select = dlstNewsType.SelectedValue.ToString();
string sql = "select *from news where ntype='" + select+"'";
binddata(sql);
}
protected void gvdNews_PageIndexChanging(object sender, GridViewPageEventArgs e)
{ gvdNews.PageIndex = e.NewPageIndex;
binddata("select * from news");
}
3.4 添加新闻界面
单击添加新闻按钮既可进入添加新闻界面,在文本框中输入相应内容,单击添加按钮既可添加一条新闻。

图3-4 添加新闻界面图
主要代码如下:
protected void btnAdd_Click(object sender, EventArgs e)
{ string strType = dlstNewsType.Text.ToString();
string strTitle = txtNewsTitle.Text.ToString();
string strAuthor = txtNewsAuthor.Text.ToString();
string strSource = txtNewsSource.Text.ToString();
string strRenew = DateTime.Now.ToString();;
string strText = txtNewsContent.Text.Trim();
string sqllinsert = "insert into
news(ntype,ntitle,nauthor,nsource,nrenew,ntext) values('" + strType + "','" + strTitle + "','" + strAuthor + "','" + strSource + "','" + strRenew + "','" + strText + "')";
excute(sqllinsert);
Response.Redirect("~/NewsManage.aspx");
}
3.5 分类管理界面
单击分类管理按钮既可进入分类管理界面,在分类添加中输入相应内容,单击添加按钮既可添加一种分类,也可对新闻类别进行添加、更新、修改、删除等操作,退出管理即可回到新闻浏览界面。

图 3-5 分类管理界面图
关于Panel主要代码如下:
protected void Page_Load(object sender, EventArgs e)
{ if (!IsPostBack){
binddata("select * from classes");
}
Panel1.Visible = false;
}
protected void gvdNews_RowEditing(object sender, GridViewEditEventArgs e)
{ gvdNews.EditIndex = e.NewEditIndex;
binddata("select * from classes");
}
protected void Button1_Click(object sender, EventArgs e) { Panel1.Visible = true; }
3.6 会员管理界面
单击会员管理按钮既可进入会员管理界面,在此页面管理员可以对会员的相应信息进行管理。

图 3-6 会员管理界面图
3.7 用户评论界面
用户在浏览详细新闻后,可对新闻进行评论,在下方点击评论按钮后,进入对应新闻的评论界面,评论新闻标题自动获取,用户在此界面可实现对新闻进行评论的操作。

图 3-7 会员评论界面图
第4章系统测试
前面章节中,从需求分析、设计、实现等不同环节对新闻系统进行了详细的描述。

至此,系统的设计已经完毕,进入了系统测试阶段。

软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例,并利用这些测试用例运行程序,以及发现错误的过程,即执行测试步骤。

4.1 软件测试目的
软件测试的目的是寻找、纠正软件可能发生的各种错误(包括逻辑错误、编码错误、组装运行错误等) 以及检查软件的功能和性能是否达到要求。

设计测试方案时,不仅要包括确定的输入数据,而且应包括从系统功能出发预期的测试结果。

测试用例不仅要包括合理有效的输入数据,还要包括无效的或不合理的输入数据。

不仅要检验程序是否做了该做的事,还要检查程序是否同时做了不该做的事[5]。

4.2 系统测试过程及结果
系统采用黑盒测试技术进行测试。

所谓黑盒测试,就是在已知产品所具有的功能的前提下,通过预测试来检测每个功能是否都能正确实现[6]。

本系统采用人工测试方法进行测试。

1. 测试用户模块。

运行新闻管理系统,进入系统首页,点击注册,页面跳转至用户注册页面,填写相关注册信息,完成必填项的填写,才能点击提交,出现消息提示框显示注册成功。

然后登录,登录后,可以浏览新闻。

点击“详细”链接,出现新闻详情。

点击评论按钮,页面跳转至会员登录界面。

登录后,可以对新闻进行评论。

点击修改个人资料,修改注册信息,包括修改密码。

点击退出,回到登录首页。

2. 测试管理员模块。

在网站首页,点击后台管理,出现后台管理登录页面,输入正确用户名和密码,进入后台管理页面。

若用户名和密码不正确,或出现消息提示框,提示用户名或密码不正确,无法登录。

后台管理包括新闻的添加和管理、新闻类别的添加和管理、用户管理、评论管理。

管理新闻功能包括对任一条新闻内容可作相应修改,也可删除任何一条不再需要保留的新闻。

管理
新闻分类包括对新闻分类名称作修改,也可将任一分类名删除,删除后其分类下的所有新闻也将被删除。

添加用户时,可为管理员,管理用户包括修改用户名、密码和用户等级,也可将任一用户删除。

点击退出,页面跳转回网站首页。

整个系统的基本功能如上所述,经测试,全部可以正确运行。

实现后的系统,在人机界面、逻辑功能、组织结构等方面,都基本达到了预期的要求,系统测试成功。

东北石油大学本科生课程设计
结束语
本文详细描述了通过和SQL Server2000实现新闻管理系统的设计与开发,具有一定的实际意义。

针对系统开发过程,从系统的需求分析、系统设计、系统实现到系统测试进行了逐一分析。

该系统主要实现了用户网上浏览新闻和网站后台管理的两大功能。

1、用户成功登录后,可以浏览新闻内容,以及在线对新闻进行评论,还可以查看评论、按分类选择浏览新闻,实现新闻浏览及评论。

2、管理员登录后台管理后,可以实现对该系统的所有系统用户的添加和管理、新闻类别的添加和管理、新闻的添加和管理、评论管理和会员管理管理等操作,完成对所有这些信息的查找、添加、删除、修改等具体操作。

虽然该系统已经实现了用户模块和后台管理模块的所有基本功能,但系统中仍然存在着一些有待进一步研究和改善的地方,主要有以下两点:
1、网站页面的外观需要进一步美化,各个功能模块的作用范围需要更精确的设置。

2、提供更完善的服务,可以再增加一个实时在线咨询的服务功能,为用户提供及时的帮助,使用户在浏览新闻时可以更清楚地了解相关信息及动态。

东北石油大学本科生课程设计
参考文献
[1] 明日科技从入门到精通(第三版).清华大学出版社,2012.
[2] 顾宁燕. 21天学通.(第二版).电子工业出版社,2011.
[3] 黄明. 2.0+SQL Server中小型信息系统开发实例精选.机械工业出
版社,2007
[4] 苏震巍. 3.5+SQL Server网站模块化开发全程实录.北京:清华大
学出版社.2009
[5] 费贤举. 基于模块化的软件工程课程体系的构建与实现 [J]. 常州:工学
院学报. 2006,04(2):1-10
[6] 裴献.网页设计实训教程[M].北京:科学出版社.2010.8
东北石油大学本科生课程设计
东北石油大学课程设计成绩评价表
指导教师:年月日。

相关文档
最新文档