已阅读5页,还剩52页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
河北大学2016届本科生毕业论文(设计)新闻发布管理系统摘 要随着互联网的普及和迅速发展,人们对获取外界信息的实时性要求也有所提高。而媒体作为新闻消息的提供者,其报道模式对人类生活质量有着重要影响。针对新闻发布管理这一环节,传统的报纸杂志电视已经不能跟上生活节奏越来越快的步伐,开发高效实用的新闻发布管理系统是有必要的。该毕业设计采用ASP.NET的三层架构模型,基于Browser/Server结构,在Visual Studio开发工具下,把C#作为开发语言,SQL Server作为数据库,按照软件工程的方法开发新闻发布管理系统。系统主要分为前台功能模块和后台管理模块,其中前台功能模块主要包括用户注册模块、用户登录模块、新闻浏览模块、新闻评论模块、个人信息管理模块;后台管理模块包括类别管理模块、新闻管理模块、评论管理模块、用户管理模块。该系统与传统纸质新闻媒体相比,将广大浏览者、新闻消息、新闻记者和新闻发行者紧密联系在一起,有效缩短了新闻的发布时间,大大提高了工作效率。经过系统测试,达到了预期目标。关键字:新闻发布系统;ASP.NET;三层架构;数据库;News Issuing And Management SystemABSTRACTWith the popularity and rapid development of the Internet, people need to obtain the real-time information of the outside world. And the media as a news provider , its report way has a significant impact on the quality of human life. For the aspect of News issuing , the traditional newspapers ,magazines and television has been unable to keep up with the pace of life,it is necessary to develop an efficient and practical management system.This graduation project based on Browser/Server structure adopts 3-Tier Architecture of ASP.NET,uses Visual Studio as the development tools, the development language is made by using C#, the data base is built by SQL Server,and the development of system is completely according to the method of the software engineering.This system is divided into the background management module and front function module.function module of the front desk includes user registration module, the user login module, news browsing module, news commentary module, personal information management module;Background management module includes category management module, news management module, comment management module, user management module.Compared with the traditional paper media,the system binds readers,news, journalists and chief editor together,effectively shortens the release time,greatly improves the work efficiency.After the system test, the anticipated goal is achieved.Key words: News issuing system;ASP.NET;3-Tier architecture;Database目 录 1引言1 1.1课题的背景1 1.2国内外研究现状及发展趋势1 1.2.1国内外研究现状1 1.2.2发展趋势1 1.3系统设计目标2 1.4论文构成及研究内容2 2系统分析3 2.1可行性研究3 2.1.1技术可行性3 2.1.2经济可行性3 2.1.3操作可行性3 2.1.4法律可行性3 2.2需求分析3 2.2.1 系统用户需求4 2.2.2系统业务流程分析4 2.2.3系统功能需求5 2.2.4数据流分析6 3系统总体设计9 3.1总体设计的原理9 3.2系统的功能层次结构图9 3.3数据库设计10 3.3.1实体E-R图10 3.3.2数据库的逻辑结构13 4详细设计14 4.1数据库的实现14 4.1.1数据库的建立14 4.1.2数据库的连接17 4.2系统设计流程18 5开发工具及相关技术介绍22 5.1开发工具介绍22 5.1.1Visual Studio介绍22 5.1.2SQL Server介绍23 5.1.3IIS介绍23 5.2开发模式B/S介绍23 5.3开发技术介绍24 5.3.1ASP.NET介绍24 5.3.2ADO.NET介绍24 6系统实现25 6.1前台功能模块的实现25 6.1.1新闻主页模块25 6.1.2用户注册模块26 6.1.3用户登录模块26 6.1.4个人信息管理模块26 6.1.5新闻搜索模块27 6.1.6新闻阅读模块28 6.1.7分类阅读模块29 6.1.8新闻评论模块30 6.2后台管理模块的实现31 6.2.1后台登录模块31 6.2.2类别管理模块33 6.2.3新闻管理模块34 6.2.4用户管理模块36 6.2.5评论管理模块37 6.3系统出错界面38 7结论39 参考文献40 致谢41 附录411引言1.1课题的背景ENIAC的诞生使得信息不再被单调地记录在纸质传统媒介上;ARPANET的出现让人类看到了计算机间信息共享的希望;而Web技术的发展,让人们可以方便快捷地在桌面上完成信息交互。近年来,计算机参与到了人类衣食住行的各个方面,也改善了人们的生活品质。在获取外界信息方面,传统的报纸杂志等渠道已经远远不够,尤其是生活节奏越来越快、信息量越来越大、新闻内容形形色色,传统的新闻发布和管理工作日趋繁重复杂。因此基于Web技术的新闻发布管理系统应运而生。1.2国内外研究现状及发展趋势1.2.1国内外研究现状 西方发达国家步入互联网时代的时间较早,国外的新媒体已经由功能单一向初具规模发展,其掌握的相关技术也比较成熟。中国在这方面发展较晚,经历了不断的摸索和实践,目前国内的网络硬件设施基本上已经覆盖了大部分地区,国内的发展重点在于学习先进的互联网技术,使新媒体更好地为人们服务。在国外,新媒体技术经历了十几年甚至更多年的发展,他们的核心功能基本上已经能够适应社会的飞速发展和人们更高的要求。另外,他们会把客户的实际需求作为最基本的考虑因素,尽量实现易操作高集成化的系统,从新闻的采集工作开始,新闻的提交,审核,修改,发布等各个环节都实现无缝对接。网络新闻会涉及到多领域的实时动态,也可以完成和用户的交互,还可以将传统媒体的文字转化为声音、图像、视频,使用户一目了然。美国的BuzzFeed通过网络从大量新闻博客中搜集新闻,为用户提供最新热门事件;美国有线电视新闻网Cable News Network全天候无休息直播新闻报道,CNN的用户还可以通过评论或电子邮件进行投稿,经编辑审核通过的稿件可在新闻网呈现;英国最大的新闻广播公司BBC的新闻服务BBC News会在各新闻版块显示出最受欢迎领域的最新消息;澳大利亚ABC新闻网站也会特别注重为公众提供最新的实时新闻资讯。在国内,过去的时候,大部分网站采用静态HTML页面,管理人员必须手动制作新的网页,上传新的网页之后还需要修改链接;对于用户来说,管理人员发布新的网页时,用户无法访问网站。随着中国经济实力和科技实力的增强,新闻发布管理系统的技术也在不断进步,现在的技术已经可以解决静态网页的问题了。中国的新华网、人民网、网易新闻、搜狐新闻、央视网、中国网、中国青年网、北青网、中国日报网、光明网、腾讯新闻、凤凰资讯、新浪新闻等也都是比较成熟的新闻发布管理网站。1.2.2发展趋势网络以势不可挡的姿势成为了一种新型媒介,计算机的使用已经非常普及,过去人们看报纸、听收音机、看电视的时间已经大量转移到了互联网上,网络新闻的实时性、互动性、多元化使得新闻发布管理系统成为人们生活学习中不可缺少的工具。新闻发布管理系统使得新闻工作的各个环节都得到了极大的便利,新闻的采集通过系统上传,使不同地区的记者都得到了极大地便利;主编可以通过新闻发布管理系统进行新闻的审核和发布,大大加快了新闻更新的速度,保证了新闻的时效性;而普通用户更是可以随时随地了解最新资讯。新闻发布管理系统的使用和普及已经成为趋势。1.3系统设计目标新闻发布管理系统的主要目标是管理新闻的投稿、审核、发布。使得在不同地区采集新闻的编辑都可以通过这个系统上传稿件;主编可以审核稿件,审核通过的可以发布到网站前台显示;该系统也要满足普通用户的浏览、搜索、评论等功能。除了这些基本功能外,新闻发布管理系统还应该界面简洁,操作简单。1.4论文构成及研究内容本论文将按照软件工程的方法,首先做需求分析,然后是概要设计,设计出整个系统的功能模块和数据流图,最后是详细的页面设计和编码。详细来说,第一章对新闻发布管理系统进行了简要的介绍;第二章对新闻发布管理系统进行整体分析;第三章对系统做出总体设计;第四章对新闻发布系统做详细设计;第五章是开发工具介绍;第六章是系统实现。2系统分析2.1可行性研究可行性研究是整个项目规划中的第一步,我们需要综合考虑系统实施过程中可能遇到的各种问题,确定系统是否有实施的必要。本系统是在对凤凰网、中国新闻网、网易新闻等较成熟的新闻门户网站进行调研和体验之后进行设计的,因此具有较大的针对性。下面将就系统的技术可行性、经济可行性、操作可能性和法律可行性进行具体分析。2.1.1技术可行性技术可行性是对现有Web技术和硬件条件进行分析,确定在技术层面上能否实现本系统。本系统的硬件条件要求不高,现有计算机的硬件标准基本都能满足系统开发和运行。在软件层面上,本课题拟在Windows 8系统下使用微软公司的Visual Studio 2012开发平台和SQL Server 2012,按照软件工程的方法开发整个系统。Browser/Server结构可以完成用户在浏览器中的阅读;SQL Server的图形化界面和SQL语句的结合使用令数据操作变得更加便利;C#语言可以使程序员快速高效地编写应用程序;ASP.NET技术将脚本语言和高级程序设计语言以及数据库结合,使得新闻可通过Web程序动态管理。因而具有技术可行性。2.1.2经济可行性对系统从开发者的经济状况和用户的使用费用进行分析。本系统使用的Visual Studio、SQL Server都可以从网上免费下载,而计算机是已经具备的装置,开发者不需要在系统开发上花费相关费用。对于使用者来说,本课题在服务器端采用.NET4.0框架平台,在客户端测试IE、Google Chrome、火狐浏览器等页面CSS兼容性,这样使得系统的兼容性和版本更新以及系统维护变得更加简便,为使用者减少了相关费用。从经济角度讲可行性较高。2.1.3操作可行性本新闻发布管理系统采用B/S模式,无需另外安装别的软件,使用者很容易掌握并熟练使用。系统实施成功以后也会大大减少管理新闻的时间,容易得到推广使用,因此具有操作可行性。2.1.4法律可行性本系统作为本科生毕业设计,不用于商业目的,不侵犯专利也不会妨碍他人,所使用的开发软件也都是免费版本的,符合国家法律规定,具有法律可行性。通过以上四方面的可行性分析,我们可以确定新闻发布管理系统是可行的。2.2需求分析接下来将从系统用户需求、系统业务流程分析、系统功能需求和数据流分析几方面进行需求分析。2.2.1 系统用户需求本系统的用户总共有四类,分别是主编、编辑、后台管理员和普通用户,不同用户有不同的权限。主编需要通过登录进入后台管理界面,实现对新闻的管理和发布,未经审核和审核不通过的都不可以显示在前台界面;编辑可以在世界各地采集新闻并通过本系统上传新闻稿件,但是上传的新闻需要通过主编的审核后才能在前台界面显示;后台管理员可以实现类别管理、新闻管理、评论管理和用户管理;普通用户可以在前台界面浏览和评论新闻。对系统用户进行分类之后,就可以分别对各类用户进行需求分析。这样可以保证系统的需求分析更加完善,有利于之后的系统设计。2.2.2系统业务流程分析对系统用户进行分类之后,可通过系统业务流程分析对需求分析进一步细化,将前台功能模块和后台管理模块的工作流程描述出来,从而使用户和开发者之间更好的沟通,而系统业务流程图就是一个很好的交流工具。新闻发布管理系统的总业务流程如图2-1所示:图2-1新闻发布管理系统的总业务流程图普通用户登录成功后的业务流程如图2-2所示:图2-2普通用户业务流程图后台管理界面的业务流程如图2-3所示:图2-3后台用户业务流程图2.2.3系统功能需求新闻发布管理系统分为前台功能模块和后台管理模块,主要实现以下功能:l 前台功能模块(1) 新闻主页:新闻主页提供用户注册和用户登录的入口;提供搜索框来搜索新闻,会显示最新新闻和最热新闻,还会显示新闻类别,各个模块界线划分清楚,清晰易读。(2) 用户注册:系统用户通过填写用户名、密码和电子邮箱等基本信息来实现用户的注册。(3) 用户登录:系统用户有主编、编辑、后台管理员和普通用户。前台和后台用户在不同的界面输入用户名和密码后,后台业务逻辑会判断用户权限,根据不同的权限来初始化登录成功后的界面。(4) 个人信息管理:登录后的用户可以修改个人基本信息和密码。(5) 用户搜索:提供用户通过新闻标题和内容关键字搜索新闻的功能,搜索到的所有新闻会以列表形式展现,用户可以点击查看。(6) 新闻阅读:新闻阅读模块主要负责新闻的格式,包括新闻类别,新闻标题,新闻作者,新闻发布日期,新闻内容,新闻评论等,这些都会按照一定的模板呈现给用户。(7) 新闻分类:用户可以查看自己感兴趣的领域的新闻,例如国际新闻、财经新闻、房产新闻等。各类新闻分页显示,用户可以通过翻页浏览更多新闻。(8) 用户评论:用户可以发表新闻评论,也可以重置评论,用户的评论也可以被其他用户看到。l 后台管理模块(1) 类别管理:管理新闻类别,可以对新闻类别进行添加、修改和删除操作。(2) 新闻管理:对新闻的基本信息进行管理,包括新闻的标题、新闻内容、新闻评论、等信息,可以对新闻进行删除、添加和修改操作。主编要对新闻进行审核,未经审核和审核不通过的新闻不可以显示在前台界面。(3) 用户管理:后台管理员拥有系统的最高权限,可以对系统用户进行管理。(4) 评论管理:管理新闻评论,可以对新闻评论进行删除操作。2.2.4数据流分析根据系统用户需求和功能需求,得知新闻发布管理系统的总体数据流图如下图2-4新闻发布管理系统数据流图用户登录数据流图如下图2-5用户登录数据流图主编登录成功后数据流图如下图2-6主编数据流图编辑登录成功后的数据流图如下图2-7编辑数据流图普通用户登录成功后的数据流图如下图2-8普通用户数据流图后台管理员登录成功后的数据流图如下图2-9后台管理员数据流图3系统总体设计3.1总体设计的原理总体设计原理包括:(1)模块化。模块化就是把整个程序划分为多个模块,每个模块有自己的名字并可以被独立访问。所有模块的功能集合起来就可以满足用户需求。(2)抽象。抽象是暂时忽略软件的细节,集中精力将软件的本质特征提取出来。(3)逐步求精。总体设计需要先解决主要问题,再将问题一步步细化。(4)信息隐藏和局部化。设计和确定模块时,使得一个模块内包含的信息对于不需要这些信息的模块来说,是不能访问的;并且应该在相近的物理地址上放置关系较密切的软件元素。(5)模块独立。模块之间应该遵循高内聚,低耦合的原则。3.2系统的功能层次结构图图3-1新闻发布管理系统的功能结构层次图前台功能模块:可以在前台Web浏览器中查看这些功能。用户注册模块:将用户信息记录到用户表用户登录模块:用来区分三种用户,普通用户、编辑和主编。个人信息管理:用户登录后可以修改用户表中的个人信息新闻主页模块:在类别表和新闻表中读取新闻信息并按照一定模板显示在首页。新闻搜索模块:将新闻表中所有新闻的标题或内容关键字与搜索框中输入的字段进行比对,找到所有包含输入字段的新闻纪录;再根据该新闻记录中的新闻类别ID,在类别表中找到类别名称;从而将新闻的所属类别,新闻标题和发布时间展示给普通用户。新闻阅读模块:系统根据新闻ID从新闻表中取出新闻的主体内容。分类阅读模块:系统根据类别ID在新闻表中取出该类别下的所有新闻。新闻评论模块:将想要评论的新闻的ID号和评论的内容以及评论人的信息和评论时间记录到评论表中。也可以根据想要查看的新闻的ID号,在评论表中调出所有他人评论。后台管理模块:针对编辑、主编和后台管理员添加类别:将类别信息添加到类别表,此类别可被选择。修改类别:根据类别ID,将类别表中相应的类别信息进行更新。删除类别:根据该类别ID找到新闻表中该类别下的所有新闻,并通过新闻ID从评论表中找到所有相关评论,先删除所有评论再删除新闻,最后删除类别本身。添加新闻:将新闻的类别ID和新闻标题以及新闻内容等记录到到新闻表中,经主编审核通过后,此新闻可以被浏览者查看。修改新闻:根据新闻ID,在新闻表中找出相应记录并进行更新。删除新闻:根据该新闻ID从评论表中找到所有相关评论,先删除所有评论再将新闻本身从新闻表中进行删除。审核新闻:将主编ID、新闻ID、审阅时间等记录到审阅表,经主编审核通过后的新闻才可以在前台界面显示。删除评论:将该评论记录从评论表中移除。删除用户:将该用户从用户表中移除。3.3数据库设计 在系统的开发过程中,数据库的设计是非常关键的一步。良好的数据结构设计不仅可以减少数据冗余、提高查询效率,而且还可以降低应用程序的编写难度,提高工作效率。3.3.1实体E-R图 本系统在数据库中存放了七个表,分别是主编表(chiefEditor)、用户表(user)、类别表(category)、新闻表(news)、审阅表(review)、评论表(comment)、权限表(rights)。新闻发布管理系统的主要实体间关系E-R图如图3-2所示:图3-2新闻发布管理系统主要实体间关系E-R图用户实体E-R图如下:图3-3用户实体E-R图类别实体E-R图如下:图3-4类别实体E-R图新闻实体E-R图如下:图3-5新闻实体E-R图审阅的E-R图如下:图3-6审阅E-R图评论实体E-R图如下:图3-7评论实体E-R图权限实体E-R图如下:图3-8权限实体E-R图3.3.2数据库的逻辑结构根据以上E-R图可以得到如下关系模式:l user( id,userName,password,E-mail,rightId)用户表(用户id号,用户名,密码,电子邮箱,所属权限)l category( id,caName)类别表(类别id号,类别名称)l news( id,title,content,createTime,caId,updateTime,author,imagePath)新闻表(新闻id号,新闻标题,新闻内容,发布时间,所属类别,修改时间,新闻作者,图片路径)l review( id,cfeditorId,newsId,reviewTime)审阅表(审阅id号,主编id号,新闻id号,审阅时间)l comment( id,content,createTime,commentator,newsId)评论表(评论id号,评论内容,发表时间,评论人姓名,所属新闻) l rights ( id,rightName)权限表(权限id号,权限名称) 综上,本系统在数据库中存放的表如表3-1所示:表3-1数据库中的表介绍数据库表名说明user存放用户信息category存放新闻类别信息news存放新闻信息review存放新闻审核信息comment存放新闻评论rights存放权限信息4详细设计4.1数据库的实现本节在SQL Server2012中利用SQL语句和图形界面相结合的方法建立各个表并设置其主外键联系,并在项目中对数据库的连接进行详细设计。4.1.1数据库的建立首先,将用户表、类别表、新闻表、审阅表、评论表和权限表的基本元素建立起来,如图4-1、图4-2、图4-3、图4-4、图4-5、图4-6:用户表:图4-1用户表类别表:图4-2类别表新闻表:图4-3新闻表审阅表:图4-4审阅表评论表:图4-5新闻评论表权限表:图4-6权限表接下来,将评论时间、新闻发布时间、新闻修改时间和审核时间的默认值设置为getdate(),如图4-7:图4-7时间的默认值设置图最后,通过数据库关系图来设置用户表、新闻表和评论表的外键,如图4-8、图4-9、图4-10、图4-11、图4-12、图4-13、图4-14:图4-8新闻发布管理系统数据库关系图图4-9用户表外键设置图图4-10新闻表外键设置图图4-11审阅表外键设置图(1)图4-12审阅表外键设置图(2)图4-13评论表外键设置图(1)图4-14评论表外键设置图(2)4.1.2数据库的连接如果将数据库的连接字符串写在cs文件中,当数据库的用户名或密码发生改变时,项目需要重新生成,这样会耗费大量资源。比较好的解决方法是将其写在Web.config中。Web.config中数据库连接字符串如下: 另外需要建立一个数据库助手类来执行基本的数据库增删改查工作,在cs文件建立数据库连接的主要代码是:string connStr = ConfigurationManager.ConnectionStringsconnStr.ConnectionString;SqlConnection conn = new SqlConnection(connStr);每次执行数据库的基本操作时询问数据库的连接状态,若处于关闭状态则连接数据库:conn.Open();执行完数据库的基本增删改查工作后需要断开连接:conn.Close()。4.2系统设计流程以下将分别介绍各个模块的设计流程。(1)用户注册模块图4-15用户注册流程(2)用户登录模块图4-16用户登录流程图(3)新闻主页模块图4-17新闻主页模块流程图(4)新闻搜索模块图4-18新闻搜索流程(5)新闻阅读模块图4-19新闻阅读流程(6)分类阅读模块图4-20分类阅读流程(7)新闻评论模块图4-21新闻评论流程(8)类别管理模块图4-22类别管理流程(9)新闻管理模块图4-23新闻管理流程5开发工具及相关技术介绍5.1开发工具介绍开发工具介绍主要介绍使用到的软件,包括Visual Studio、SQL Server和IIS服务器。5.1.1Visual Studio介绍Visio Studio是一个可视化编译环境,它为开发者提供了很大的便利,从编写源代码到编译链接,从调试到最终发布,可以通过预设的菜单及选项很方便的完成。Visual Studio .NET是为建立.NET Framework应用而设置的集成开发环境(IDE),它在.NET Framework和公共语言规范CLS(Common Language SPecification)基础上可运行VB、C+、C#、Jscript、J#等多种语言。它的体系结构如下:图5-1Visio Studio .NET的结构其中CLR公共语言运行时的结构如下:图5-2CLR的结构5.1.2SQL Server介绍现代计算机中存储的数据呈现暴涨的趋势,这样就需要一款高效的数据库管理工具来定义数据和操纵数据,使得数据在计算机中的存储更加有秩序,降低数据的冗余度,提高数据的独立性,也让数据的操纵更加方便。SQL Server采用图形界面,使用方法一目了然。(1)SQL Server是一款Relational Database Management System(2)SQL Server与Windows系统完美结合(3)SQL Server对计算机的硬件条件要求不高(4)SQL Server具有良好的可伸缩性(5)SQL Server具有良好的灵活性,它可以适应快速变化的环境5.1.3IIS介绍IIS(Internet Information Server)是微软公司推出的Web服务器,具有安全、高效、易于管理的特点,是目前主流的Web服务器之一,可支持HTML、ASP、ASP.NET等。IIS在管理与配置上继承了Windows的特点,全部是图形界面的方式,操作起来十分简单。5.2开发模式B/S介绍B/S模式也就是浏览器/服务器模式,它的界面部分是在浏览器端展示,而主要工作是由服务器端进行实现的,用户的请求由浏览器端提交给服务器端进行处理,而服务器将处理结果反馈给浏览器端,在浏览器端界面描画给用户查看。采用B/S模式不仅可以避免用户必须安装专业软件才能开发系统或者访问系统的局限性,而且更加便利。另外,软件系统的更新换代速度越来越快,采用B/S模式开发的系统的升级工作主要在服务器端进行,这样不管系统的用户群是多么的庞大,都不会影响系统维护工作的工作量,降低了系统的维护成本,这也是B/S模式的一大优点。B/S模式的结构模型如下:图5-3B/S模式及其工作过程5.3开发技术介绍开发技术介绍主要介绍系统中使用到的关键技术,包括ASP.NET和ADO.NET。5.3.1ASP.NET介绍ASP.NET是一种动态网页技术,它开发的是Web应用程序,可以和数据库以及其他程序进行交互,是一种快捷的动态服务器页面开发工具。另外,ASP.NET的代码和页面分离,大大提高了代码的可读性,这样使得功能的扩展更加容易。本课题将采用ASP.NET的三层架构,三层架构模型如下:图5-4三层架构表示层用来和用户交互,接受用户的请求,并且将服务器的处理结果展示给用户。业务逻辑层位于表示层和数据访问层之间,它在两者之间传递数据,按功能需求调用数据访问层中的方法,并向客户展示数据和信息。数据访问层使用了一个强类型的DataSet,通过ADO.NET操纵数据,不涉及具体业务,它为业务逻辑层提供数据服务,如存储数据操作结果、返回数据检索结果等。5.3.2ADO.NET介绍数据库是ASP.NET动态网站的基石,离开了数据库,ASP.NET的魅力将大大减少,所以ASP.NET支持ADO.NET以实现对数据库的访问。通过ADO.NET能够建立起用户与数据库之间的桥梁。用户只需在网页中执行SQL指令,即可对Web服务器上的数据库进行添加、修改和删除操作。ADO.NET的结构模型如图5-5所示:图5-5ADO.NET的结构6系统实现6.1前台功能模块的实现本系统是用作毕业设计,IIS在本机上开启一个服务器,系统实现的功能局限在本机使用。本章将对前台功能模块的实现界面及核心代码进行阐述。6.1.1新闻主页模块在浏览器的地址栏里输入http:/localhost:1675/default.aspx地址,就可以跳转到新闻发布管理系统的首页,这里也是浏览者访问系统的入口,如图6-1所示。图6-1新闻主页模块其中展示最新新闻的主要代码如下:public DataTable SelectNewNews()return sqlhelper.ExecuteQuery(news_selectNewNews, CommandType.StoredProcedure);其中调用的数据库存储过程为:CREATE PROCEDURE dbo.news_selectNewNewsASBEGINselect top 5 n.id,n.title,n.createTime,,c.id as caIdfrom news n inner join category c on n.caId = c.idorder by n.createTime descENDGO6.1.2用户注册模块点击主页上方的注册会弹出如下登录框:图6-2用户注册界面6.1.3用户登录模块点击主页上方的登录会弹出如下登录框:图6-3前台用户登录界面6.1.4个人信息管理模块用户登录成功后,点击右上方的管理个人信息即可进入个人信息管理模块。图6-4前台用户登录成功界面图6-5个人信息管理界面6.1.5新闻搜索模块本系统可以根据新闻标题或者新闻内容来搜索新闻,如图6-6所示: 图6-6搜索新闻界面 根据标题搜索新闻代码:public DataTable SelectByTitle(string title)/title是新闻标题关键字DataTable dt = new DataTable();string cmdText = news_selectByTitle;SqlParameter paras = new SqlParameter new SqlParameter(title, title);dt = sqlhelper.ExecuteQuery(cmdText, paras, CommandType.StoredProcedure);return dt;调用的数据库存储过程为:CREATE PROCEDURE dbo.news_selectByTitletitle varchar(100)ASBEGINselect top 10 n.id,n.title,n.createTime,,n.caId from news n inner join category c on n.caId = c.idwhere n.title like %+title+%order by n.createTime descENDGO6.1.6新闻阅读模块在新闻首页或者分类浏览界面点击新闻标题可以查看新闻详细内容,如图6-7所示:图6-7查看新闻内容界面查看新闻内容的主要代码:public News SelectById(string id)/id是新闻IDNews n = new News();DataTable dt = new DataTable();string cmdText = news_selectById;SqlParameter paras = new SqlParameter new SqlParameter(id, id);dt = sqlhelper.ExecuteQuery(cmdText, paras, CommandType.StoredProcedure);n.Id = id;n.Title = dt.Rows0title.ToString();n.Content = dt.Rows0content.ToString();n.CreateTime = dt.Rows0createTime.ToString();n.CaId = dt.Rows0caId.ToString();return n;6.1.7分类阅读模块浏览者点击左侧导航栏可以分类查看新闻,以浏览财经新闻为例,如图6-8所示:图6-8分类浏览新闻界面分类浏览新闻是根据类别ID取出该类别下的所有新闻,调用的数据库存储过程为:CREATE PROCEDURE dbo.news_selectByCaId caid intASBEGINselect n.id,n.title,n.createTime,,n.caId from news n inner join category c on n.caId = c.id and n.caId=caidorder by n.createTime descENDGO6.1.8新闻评论模块本系统可以对新闻进行评论和查看他人对该条新闻的评论,如图6-9所示:图6-9新闻评论流程添加评论的主要代码: public bool Insert(Comment c)/c是评论实体类bool flag = false;string sql = insert into comment(content,userIp, newsId) values(content,userIp,newsId);SqlParameter paras = new SqlParameter new SqlParameter(content, c.Content), new SqlParameter(userIp, c.UserIp), new SqlParameter(newsId, c.NewsId);int res = sqlhelper.ExecuteNonQuery(sql, paras, CommandType.Text);if (res 0)flag = true; return flag;6.2后台管理模块的实现后台管理模块主要包括类别管理模块、新闻管理模块、用户管理模块、评论管理模块。以下将分别介绍各个模块的实现。6.2.1后台登录模块后台登录界面如下:图6-10后台登录界面输入用户名、密码和验证码之后点击登陆按钮会进行以下判断:判断验证码是否输入正确,验证码不正确会提示重新输入;判断用户名和密码是否正确,只有当用户名和密码都正确时才会登录成功,否则就会提示登录失败。如图6-11、图6-12所示:图6-11登录信息不全界面图6-12登录信息错误界面6.2.2类别管理模块类别管理的界面,如图6-13所示:图6-13类别管理界面增加类别的核心代码:public bool Insert(string caName)/caName是类别名称bool flag = false;private SQLHelper sqlhelper =new SQLHelper();string sql = insert into category(name) values(caName);SqlParameter paras = new SqlParameter new SqlParameter(caName, caName) ; int res = sqlhelper.ExecuteNonQuery(sql, paras, CommandType.Text); if (res 0)flag = true;/插入成功 return flag;删除类别所使用数据库触发器:CREATE TRIGGER dbo.trigCategoryDeleteON dbo.category instead of DELETEAS BEGINdeclare caId intselect caId=id from deleteddelete comment where newsId in (select ID from news where caId=caId)- 删除评论delete news where caId=caId- 删除新闻delete category where id=caId- 删除类别END6.2.3新闻管理模块图6-14新闻管理界面删除新闻调用的数据库中的存储过程为:CREATE PROCEDURE dbo.news_deleteid int ASBEGINdelete comment where newsId=id- 先删除该新闻下的评论delete news where id=id- 再删除新闻本身ENDGO修改新闻的界面,如图6-15所示:图6-15修改新闻界面修改新闻调用的数据库中的存储过程为:CREATE PROCEDURE dbo.news_updateid int,title varchar(100),content text,caid intASBEGINUPDATE newsSET title = title, content = content, caId = caidwhere id=idENDGO添加新闻的界面,如图6-16所示:图6-16添加新闻界面添加新闻的核心代码:public bool Insert(News n) bool flag = false; private SQLHelper sqlhelper =new SQLHelper(); string cmdText = news_insert; SqlParameter paras = new SqlParameter new SqlParameter(title, n.Title),new SqlParameter(content, n.Content),new SqlParameter(caid, n.CaId) ; int res = sqlhelper.ExecuteNonQuery(cmdText, paras,CommandType.StoredProcedure); if (res 0)flag = true; return flag;6.2.4用户管理模块用户管理的界面,如图6-17所示:图6-17用户管理界面6.2.5评论管理模块删除评论的界面,如图6-18所示:图6-18删除评论界面删除评论的主要代码为:public bool Delete(string id)bool flag = false;strin
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 全国青岛版信息技术七年级上册专题二第2课二、《修改路由器登录用户名和密码》说课稿
- 2025年春小学学校工作计划格式怎么写
- 2025年民警个人工作计划民警个人工作计划大全
- Unit3 Learning Lesson5(说课稿)-2024-2025学年北师大版(三起)(2024)英语三年级上册
- 人教版七年级历史与社会上册 第三单元第四课《草原人家》说课稿
- Unit12 Review(说课稿)-2023-2024学年北师大版(一起)英语二年级下册
- Unit 2 Different families Part A Lets talk(说课稿)-2024-2025学年人教PEP版(2024)英语三年级上册
- 2025年幼儿园安全工作计划报告怎么写
- 宠物电商相关项目投资计划书
- 城市园林绿化服务相关行业投资规划报告范本
- 银行资产保全员工年度工作总结
- 钢结构网架验收施工质量自评报告-副本
- 《修心三不 不生气 不计较 不抱怨》读书笔记思维导图
- 妊娠剧吐的护理查房
- GB/T 5023.5-2008额定电压450/750 V及以下聚氯乙烯绝缘电缆第5部分:软电缆(软线)
- GB/T 36127-2018玉雕制品工艺质量评价
- GB/T 23445-2009聚合物水泥防水涂料
- 漆画漆艺 第三章
- (完整版)100道凑十法练习题
- 光伏逆变器一课件
- 2023年上海师范大学辅导员招聘考试笔试题库及答案解析
评论
0/150
提交评论