毕业设计(论文)-基于ASP.NET的网络新闻发布系统的设计与实现.doc_第1页
毕业设计(论文)-基于ASP.NET的网络新闻发布系统的设计与实现.doc_第2页
毕业设计(论文)-基于ASP.NET的网络新闻发布系统的设计与实现.doc_第3页
毕业设计(论文)-基于ASP.NET的网络新闻发布系统的设计与实现.doc_第4页
毕业设计(论文)-基于ASP.NET的网络新闻发布系统的设计与实现.doc_第5页
免费预览已结束,剩余32页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

新新 乡乡 学学 院院 毕毕 业业 论论 文文 填表时间:2010 年 3 月 论 文 题目 基于asp.net的网络新闻发布 系统的设计与实现 院(系)名 称 专 业 名称 班 级 学 生 姓名 学 号 指导教师姓名 1 目录目录 摘要3 关键词3 abstract3 keyword.3 前言4 1. 绪论.5 1.1 新闻发布系统概述5 2. 课题分析.7 2.1 需求分析.7 2.2 新闻系统的性能需求.8 2.3 运行环境要求.9 3.系统分析和总体设计.10 3.1 系统功能模块划分10 3.2 系统流程分析11 4.数据库结果设计与实现.13 4.1 创建数据库.13 4.2 数据库逻辑结构设计.13 5.数据访问类的实现、母版及用户控件.16 5.1 数据访问类的实现.16 5.2 母版22 5.3 用户控件22 6.系统主界面与登陆程序设计.23 6.1 设计主界面23 6.2 登陆程序设计.24 7.后台管理主界面.26 8.新闻管理模块设计.28 8.1 管理及添加删除新闻28 2 8.2 审核最新新闻30 8.3 新闻评论管理30 9.用户管理模块.32 9.1 管理系统用户32 10.系统运行33 11.结论34 参考文献.35 致谢.36 3 摘要摘要:在网络发展的新时代,越来越多的信息在网上发布,新闻作为信息的 一个重要的主题也不例外。为使用户轻松获得更新最好的新闻信息,每天的信息发 布、更新都需要投入很大的人力和物力。 本文通过研究 asp 技术+数据库 sql server 2000 变成方法,以 microsoft 公司 internet information server 5.0 作为 web 服务器,实现了一个基于浏览器/服务 器(browser/server)模式的网络新闻发布系统,完成了用户浏览及管理员操作的 各项功能,如:栏目菜单的显示、栏目内新闻的显示、新闻搜索、新闻评价、添加 新闻、新闻的修改和删除、新闻栏目管理、用户管理等。系统设计严格遵循软件工 程思想,完成了系统的可行性分析,需求分析,概要设计和详细设计等工作。 关键关键词词:asp.net;c#;ado.net;sql server;browser/server. abstractabstract:nowadays, along with internet future development, more and more information are released by the internet. the news is of them. for letting the customer to acquire some satisfied news information, everyday, the collection, release and renew of information need a great of energy and the material resources. this text passes a research asp technique and general method of the database sql server 2000 about write procedure, carry out a release system of the news on the network, it takes b/s as work terrace. completed various function of the customer about browse and the managing person in operation, such as: show of the column, the manifestation of the column, the news search, the commentary of the news, increase news, modify news, delete news, manage of the column, manage customer etc. the design of the system follows the thought of the software engineering strictly, complete the analysis of possibility, the analytical about need, the concept design, detailed design etc. keywordkeyword:asp sql brower/server database. 4 前言前言 伴随着网络的出现,网页逐渐融入人们的生活。快速及时的新闻浏览,五彩缤 纷的网上信息,使网络与人们的生活息息相关,于是世界上又出现了第三代媒体 internet。它打破了地域限制,真正使信息得以共享,改变了人们的工作和生活 方式。制作网页是企业和个人的宣传自己的重要手段,同时也是学习者获得学习信 息的重要手段。尤其是在教育领域,在素质教育与终身教育成为必然的今天,人们 对信息的需求有了更新更高的要求,而网络也逐渐成为一种新兴的教育资源。与正 是由于网络实现网站的数据信息能够进行实时交互,保证网站数据的实时性。 asp.net 是微软公司最新推出的一种统一 web 开发平台,与最新的数据访问技 术 ado.net 在一起可构建出强大的安全的和可靠的企业级 web 应用程序。asp.net 的语法在很大程度上与 asp 兼容,同时它还提供一种新的编程模型和结构,用于生 成更安全、可伸缩和稳定的应用程序。其主要特色包括: 语言的独立性; 简单的开发操作,分离程序代码和网页内容; 提高了执行效率; 简化部署与组态的操作; 支持客户端类型; 支持下一代的 web 服务; 增进适用性; 增进延展性; 更多的支持工具; 更佳的安全机制; 会话(session)可以跨进程、跨机器。 由于 asp.net 的众多优点,技术发展和各种客观实际的需要,该系统选用了 asp.net 来开发设计,实现了对网络新闻的动态管理操作,使得对新闻信息的发布 与管理更加及时、高效,提高了工作效率。 5 1.1. 绪论绪论 1.1 新闻发布系统概述新闻发布系统概述 新闻发布系统(news management system)又称为信息发布系统,是一个利用 计算机网络为平台构建的新闻发布系统,它将网站上的新闻发布等主要信息集中管 理,并通过信息的某些性质进行分类,最后系统化,标准化的发布到网站上的一种 网站应用程序,网站信息通过一个简单的界面加入数据,然后通过已有的网页模板 格式与审核流程发布到网站上。它的出现大大减轻了网站更新维护的工作量,通过 网络数据库的引用,将网络的更新工作简化到只需要录入文字和上传图片,从而使 网站的更新的速度大大缩短,从而大大加快了信息的传播速度。 1.2 国内外新闻发布系统研究现状 目前,新闻发布系统的开发技术已经十分成熟,用到的技术有很多,比如 asp 技 术 php 技术 jsp 技术 .net 技术等,成熟的新闻发布系统有很多,如著名的 v7 content management suite(西门子公司采用的技术),interwoven-team site(cisco 采用的系统)以及开源的产品也得到了广泛的应用,如 open cms, zope-content management framework 等。 1.3 开发工具选用介绍 传统的新闻发布系统主要有两种,一种是静态 html 页面,更新细心时需要更新制作 页面后上传,同时还需要修改相应的连接,这种方式因效率太低已经不多用了。第 二种是基于 asp 和脚本语言,将动态网页和数据库结合,通过应用程序来处理新闻, 这是目前交流行的做法,但是遇有 asp 本身的局限性使得系统有一些不可克服的缺 陷,而采用 asp.net 技术,在系统性能上就有了很大的提高,主要体现在一下几个 方面: (1)asp.net 页面不同于 asp 页面,它只需要一次编译不需要重新编译,直 到该页面被重新修改或 web 程序重新启动为止,使得多次访问速度有了 很大的提升。 (2)asp.net 页面支持应用程序的实时更新。管理员不必关掉网络服务器或 6 者甚至不用停止应用程序的运行就可以直接更新应用文件。 (3)asp.net 采用“code-behind“方式编写代码,使得系统更易编写,更清 晰,降低了系统的开发与维护的复杂度和费用。 基于 asp.net 的有点,所以我选择了 visual studio 2008 作为开发工具,并结 合 sql server 2000 作为后台数据库,同时用 macromedia dreamweaver mx 2004 进行页面的设计。 该系统是基于 b/s(browser/server,浏览器/客户端)模式实现,基于.net 平台 架构开发设计,主要实现对校园新闻的发布与管理功能,对新闻内容信息的浏览阅 读等。随着 internet/intranet 技术的兴起,将原本在单机或本地局域网上运行的 数据库系统移植到因特网中,即开发基于 b/s 模式的新一代 mis(management information system,管理信息系统)系统,正成为技术发展的趋势。为了保证系 统性能的高效性、可扩展性,以及达到数据共享和网络化管理的目的,本系统采用 b/s 体系结构进行设计开发。 7 2.2. 课题分析课题分析 2.1 需求分析需求分析 该系统的用户为校园网站,需要经常发布一些新闻,如何能有效地管理和发布 新闻呢?最初用户的需求为:“该新闻系统具有一般新闻系统的功能,同时具有新 闻审核和不同管理员不同管理权限的功能” 。 通过对其它一些新闻系统的调查发现,一般新闻系统功能如下: 前台按分类显示新闻; 搜索新闻; 后台管理: 添加、删除和修改新闻 添加、删除和修改用户 添加、删除和修改新闻分类 添加新闻(添加成功后的新闻根据管理员权限分为可发布新闻和待审核新 闻) 需要新闻审核,说明添加后的新闻分为两种:直接发布新闻和待审核新闻,同 时待审核的新闻通过管理员或审核员经审核后才可以上传到网站,管理员有不同的 权限,需要有个管理权限的功能,在系统中应该有个超级管理员,具有所有权限, 能够对系统进行全面管理,同时管理员可以修改自己的一些信息。 根据校园网站新闻发布管理的实际需求,在首页中能显示最热门新闻、头条新 闻和最近发布的几条新闻等,同时在后台发布新闻时可以添加图片,也可以添加 html 语法,在前台能自动根据所显示的图片和 html 语法来显示新闻。 在后台管理中,因为有权限的管理员才能登录管理后台,所以需要有个登录验 证模块,而且需要根据用户权限的不同显示不同的管理目录,在管理新闻和用户时, 当数据少时管理起来还比较方便,如果一多则想找到某条新闻或某个用户就很难, 所以需要有个查找(新闻标题、用户)模块用于查找新闻或用户。 根据以上需求分析,该系统要实现的主要功能为: 8 前台显示新闻部分 用户登录区 显示最热门的前几条新闻 显示推荐的前几条新闻 显示最新的前几条新闻 搜索新闻功能 显示所有新闻分类(即部门) 按分类/部门显示其下的所有新闻 新闻详细信息浏览阅读 图片新闻(自动生成缩略图)以滚动形式在首页显示且只显示前几条 网站友情链接(可在管理中添加设置) 网站公告可显示发布了新闻但没通过审核的一些相关通知等 后台管理部分 登录验证 根据权限显示相应的管理目录 添加、修改和删除新闻 管理发布新闻 管理审核新闻 分类管理 用户管理 网站风格设置、系统设置等 2.2 新闻系统的性能需求新闻系统的性能需求 该系统在性能功能上应达到如下需求: 操作简单、界面友好: 完全控件式的页面布局,使得新闻的录入工作更简便, 许多选项包括新闻分类、来源部门等只需要点击鼠标就可以完成;另外,跟踪出现 的提示信息也让用户随时清楚自己的操作情况。对常见网站的新闻管理的各个方面: 新闻录入、浏览、删除、修改、搜索等方面都大体实现,实现了网站对即时新闻的 管理要求; 9 即时可见:对新闻的处理(包括录入、修改、删除)将立即在主页的对应栏目显 示出来,达到“即时发布、即时见效”的功能; 系统运行应该快速、稳定、高效和可靠; 在结构上应具有很好的可扩展性,便于将来的功能扩展和维护。 2.3 运行环境运行环境要求要求 设备设备 客户机硬件要求:具有常用型号的 cpu 处理器即可且满足以下要求的计算机: 最低 2g 内存,最小 160gb 硬盘。 服务器硬件要求:具有常用型号的 cpu 处理器即可且满足以下要求的计算机: 最低 4g 内存,最小 320gb 硬盘。 支持程序支持程序 客户端 操作系统:windows xp 或更高版本 浏览器:任何一种 ie 版本以上或 netscape 同等版本以上 服务器 操作系统:windows xp server web 服务器: iis 应用服务器:iis、com+等企业级应用服务器 数据库:sql server 2000 10 3.3.系统分析和总体设计系统分析和总体设计 3.1 系统功能模块划分系统功能模块划分 从功能描述的内容可以看到,本系统可以实现 6 个完整的功能。我们根据这些 功能,设计出系统的功能模块,见图 2: 图 2 新闻发布系统功能模块示意图 新闻发布及管理系统的功能模块之间的关系间图 3 所示: 11 图 3 新闻发布及管理系统的功能模块之间的关系间图 本系统在初始化时,有一个默认的“管理员“用户 tyh,有程序设计人员手动的添加 到数据库中。thy 用户可以创建用户、修改、删除用户信息给用户设置权限;权限 有两种,一种是管理员,另外一种是普通用户,普通用户只能修改自己的用户信息, 发布新闻,且不能登陆后台管理系统。 用户管理功能模块的关系见图 4 所示: 图 4 用户管理功能模块的关系 3.2 系统流程分析系统流程分析 多用户系统的工作流程都是从用户登陆模块开始,对用户的身份进行认证。身 份认证可以分为一下两个过程: (1) 确定用户是否为有效的用户。 (2) 确定用户的类型。 第一个过程决定用户能否进入系统。第二个过程根据用户的类型决定用户的操 作权限,从而决定用户的工作界面。 本系统分为前台系统和后台系统两个部分。前台系统不需要进行身份验证,任 何人都可以通过浏览器阅读已经发布的新闻、发布网友评论。 12 后台管理的流程分析见图 5 所示。tyh 用户拥有所有的权限,普通用户只能发 布自己的新闻,修改自己的信息。 图 5 新闻发布系统的后台管理的流程分析 13 4.4.数据库结果设计与实现数据库结果设计与实现 4.1 创建数据库创建数据库 首先创建一个数据库 news2005,用来保存本系统的所有数据。创建数据库的 脚本码如下: creater database news2005 go 可以在 sql 查询分析器种执行该语句,创建数据库。 4.2 数据库逻辑结构设计数据库逻辑结构设计 本系统定义的数据库种包括一下 4 个表:新闻类别表:bigclass、新闻基本信 息表:news、评论分析表:answer 和用户信息表:admin。下面分别介绍这些表的 结构。 (1)新闻类别表 bigclass 新闻类别表 bigclass 用来保存新闻类别数据,结构间表 1 所示: 表 1 新闻类别表 bigclass 的结构 (2)新闻基本信息表 news 基本新闻表 news 用来保存网上新闻的基本信息,结构见表 2 所示: 14 表 2 新闻基本信息 (3)评论分析表 answer 评论分析表 answer 用来保存网友对新闻的评价信息,结构见表 3 所示: 表 3 评论分析表 (4)用户信息表 admin 用户信息表 admin 用来存放用户的基本信息,结果见表 4 15 表 4 用户信息 16 5.5.数据访问类的实现、母版及用户控件数据访问类的实现、母版及用户控件 5.1 数据访问类的实现数据访问类的实现 asp.net 问访问数据库提供了丰富的类库,如 system.data,这些类库在系统 开发中被频繁的使用。本系统选用的是 sql server 2005 数据库,所有的数据都保 存在数据库表中。对 sql 数据库的访问可以使用一个封装的 sql 数据库访问类,这 样可以提高程序的可读性,提高效率。 下面是定义一个名字空间通用类库 database,在其中封装了对 sql 数据库的 访问方法。 using system; using system.data; using system.data.sqlclient; using system.configuration; using system.web; public class dbbase public dbbase() /todo:在此处添加构造函数逻辑 #region 定义连接字符串 strcon public static string strcon=”data source=(local);database= news2005;integrated security=true;”; /public static string strcon= system.configuration.configurationsetting.appsettings“constr”.tostring (); #endregion #region 17 sqlconnection con=new sqlconnection(strcon); #endregion #region public void cheekconnection() if(this.con.state=connectionstate.closed) this.con.open(); #endregion #region public dataset returndataset(string strsql) checkconnection(); try sqldataadapter sda=new sqldataadapter(strsql,con); dataset ds=new dataset(); sda.fill(ds); return ds; catch(exception ex) throw new exception(ex.message); finally con.close(); 18 #endregion #region public datarow getdatarow(string strsql) checkconnection(); try sqldataadapter sda=new sqldataadapter(strsql,con); dataset ds=new dataset(); sda.fill(ds); return ds.table0.rows0; catch(exception ex) throw new exception(ex.message); finally con.close(); #endregion #region public bool executenonquery(bool ispro,string strsql) checkconnection(); try 19 sqlcommand com=new sqlcommand(strsql,con); if(ispro) com.commandtype.storedprocedure; else com.commandtype=commandtype.text; com.commandtype=strsql; com.execurenonquery(); con.close(); return true; catch return false; #endregion #region public void executenonquery(string strsql) checkconnection(); try sqlcommand com=new sqlcommand(strsql,con); com.executenonquery(); 20 catch(exception ex) throw new exception(ex.message); finally con.close(); #endregion #region publicdatatable returntable(string strsql) checkconnection(); try sqldataadapter sda=new sqldataadapter(strsql,con); dataset ds=new dataset(); sda.fill(ds); reture ds.table0; catch(exception ex) throw new exception(ex.message); finally con.close(); 21 #endregion #region public sqldatareader returndatareader(string strsql) checkconnection(); try sqlcommand con=new sqlcommand(strsql,con); sqldatareader myreader=com.executereader(); return myreader; catch(exception ex) throw new exception(ex.message); finally #endregion #region public int returnrowcount(string strsql) checkconnection(); try sqldataadapter da=new sqldataadapter(strsql,con); 22 dataset ds=new dataset(); da.fill(ds); return ds.tables0.rows.count; catch return 0; #endregion 这里只是一个通用的数据库类的设计实现,对于数据库中其他的操作,由于页 面有限,就不一一说明,要实现其他的数据库的操作,只要也定义相应的类及属性, 再调用通用的数据库中的方法即可实现。 5.2 母版母版 我们在网上浏览网页的时候,一个网站的很多内容往往是不变的,比如导航条 用户注册等,本系统同时也包含一些不变的模块,实现这些模块,我主要是用到了 母版和用户控件。 母版也可以为应用程序中的页创建一致的布局。单个的母版页可以为应用程序 中所有页定义所需的外观和标准行为。然后可以创建包含要显示的内容的各个内容 页。当用户请求内容页时,这些内容页与母版页合并以将母版页的布局与内容页的 内容组合在一起输出。 5.3 用户控件用户控件 用户控件是一种复合控件,工作原理非常类似与 asp.net 网页,可以想用户控 件添加现有的 web 服务器控件和标记,并定义控件的属性和方法。然后可以将控件 嵌入 asp.net 网页中充当一个单元。 23 6.6.系统主界面与登陆程序设计系统主界面与登陆程序设计 6.1 设计主界面设计主界面 主界面为 default.aspx,它套用母版页后,主要功能是显示最新的 8 条新闻 新闻类别及每个类别中的 4 条新闻。 (1)显示新闻类别链接 default.aspx 将新闻按照分类显示,每个新闻类别只显示最新的 4 条新闻。 如果新闻类别较多,则网页会被拉长,贵用户阅读带来不便,为了解决这个 问题,使用标签来定义新闻类别位置,标签格式为这样用户就可以通过单击链接直达新闻类 别了。 (2)新闻管理链接 系统管理员 thy 可以通过“进入管理”链接进入新闻管理页面 admin_login.aspx 相应的代码为进 入管理 (3)显示个新闻类别中的 4 条新闻 default.aspx 的主要内容是显示新闻类别中的 8 条新闻及新闻类别下的 4 条新闻,在这里用到了 repeater 服务器控件,repeater 服务器控件是一个 数据绑定容器控件,用于生成各个项的列表。 录入新闻类别和新闻内容后,default.aspx 的界面见图 6 所示: 24 图 6 新闻主页 default.aspx 的界面 6.2 登陆程序设计登陆程序设计 在对系统进行管理之前,需要通过系统的身份验证。本系统中使用 admin_login.aspx 进行身份验证。对与需要登陆才能查看的网页可以在网页的 cs 代码中加上如下代码: if(session“admin”=null) response.redirect(“admin_login.aspx”); 这样用户没有登陆将看到如下的界面,见图 7 所示: 25 图 7 管理员用户登陆界面 26 7.7.后台管理主界面后台管理主界面 管理界面的功能是对新闻类别和新闻提供管理界面,只是有权限的用户才能进 入管理界面。本节将介绍管理界面 admin_index.aspx 的实现方法。录入新闻类别的 新闻内容后,admin_index.aspx 的界面见图 8 所示: 图 8 后台管理主界面 admin_index.aspx admin_index.aspx 页面运用了 html 语言中的框架,在这个页面中其实包含了 四个页面,分别是 admin_top.aspx、admin_bottom.aspx、admin_bottom.aspx、及 后台管理的初始页面 default.aspx, admin_top.aspx 和 admin_bottom.aspx 主要 实现的是对页面顶端和底部的设置,admin_bottom.aspx 实现的是后台管理系统菜 单。 实现其框架主要的代码为: 27 28 8.8.新闻管理模块设计新闻管理模块设计 新闻类别管理模块可以实现一下功能: (1)管理现有新闻 (2)添加新的新闻内容 (3)审核最新新闻 (4)新闻评论管理 8.1 管理及添加删除新闻管理及添加删除新闻 打开管理现有新闻界面,见图 9 所示: 图 9 管理现有新闻界面 29 主要运用了 gridview 这个服务器控件,gridview 控件可以公开分页事件 和排序事件,以及在创建当前行或将当前行绑定至数据发生时的事件。其相应 的 html 代码为: 修改新闻 点击相应新闻的修改按钮,出现如下的修改界面,见图 10 所示: 图 10 修改新闻界面 删除新闻界面 删除功能很简单,点击删除按钮,直接删除新闻,而且会将新闻从数据库中删 除。 30 添加新闻 添加新闻界与修改新闻界面很相似,不同的是修改新闻时会将已有的新闻的标 题,类别,内容获取到,在此基础上修改,而添加新闻则是全是空白的,需要自己 手动田间。 8.2 审核最新新闻审核最新新闻 新闻添加到数据库以后,并不是立即在前台界面显示,而是要经过具有管理员 权限的用户审核后才能在前台显示。审核界面如图 11 所示: 图 11 审核最新新闻 8.3 新闻评论管理新闻评论管理 评论管理可以进行如下一些操作:按新闻编号查询相应评论、删除选中的评论、 删除单条新闻的全部评论,界面如图 12 所示: 31 图 12 新闻评论管理 32 9.9.用户管理模块用户管理模块 9.1 管理系统用户管理系统用户 用户管理模块只是拥有管理员权限的用户才能进入,进入后可进行如下操作: 修改用户信息、删除用户信息、添加心的用户、用户权限分配。 界面见图 13 所示: 图 13 系统用户管理 33 10.10.系统运

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论