您好,欢迎来到爱站旅游。
搜索
您的当前位置:首页基于动转静技术的新闻系统的设计与实现

基于动转静技术的新闻系统的设计与实现

来源:爱站旅游
2015年4月 陕西理工学院学报(自然科学版) Journal of Shaanxi University of Technology(Naturla Science Edition) Apr.2015 第31卷第2期 V0】.31 No.2 [文章编号]1673—2944(2015)02—0041—04 基于动转静技术的新闻系统的设计与实现 王莉利 , 高新成 , 王才智 (1.东北石油大学计算机与信息技术学院,黑龙江大庆163318; 2.东北石油大学现代教育技术中心,黑龙江大庆163318; 3.东北石油大学宣传部,黑龙江大庆163318) [摘要] 使用动静态B/S结构开发方法,设计并实现了基于动态生成技术的静态新闻系 统,克服了传统动态网站访问效率低下、安全性差、并发性差等缺点,同时继承了动态网站实时 更新、访问率统计、便于交互等优点。 [关键词] 动静态B/S结构; 动转静技术; 新闻系统; ASP.NET [文献标识码]A [中图分类号]TP393 新闻系统是、企事业单位等发布和传递信息最快捷和最经济的手段,具有实时更新快、并发访 问量大、发布内容的规范性和安全性、新闻发布的流程性等特点。目前,常用的新闻网站开发技术分为 静态网站和动态网站¨ 。静态网站安全性高、不易被攻击、浏览速度快,但静态网站开发繁琐、工作量 大、维护困难;动态网站交互性强、开发方便、通用性强、便于维护,但动态网站易受攻击、安全性低,并发 访问量大时服务器反应速度慢,当并发访问超过服务器的承受能力时,会造成系统崩溃 。本文采用 动态生成静态页的技术来开发静态新闻发布系统,该系统既具有静态网站安全、访问速度快的优点,又 具有动态网站易维护、交互性强的优点。实现了静态新闻网站用户浏览完全静态化,加快了网页浏览速 度,提高了系统安全性,减轻了服务器压力 J。 1动静态B/S结构框架 动静态B/S结构主要由数据处理子系统、页面生成子系统和页面管理子系统3部分构成。动静态 B/S结构框架如图1所示 。 数据处理子系统由数据库、模版管理模块、模版库和数据操纵模块构成,负责页面模版、动态信息数 据和指令规则的管理。页面模板是用来描述页面样式和定义页面结构的文档,通过采用样式分离与页 面内容的方法来降低工作量;动态信息数据由编辑人员进行维护和更新;指令规则标识页面生成中的信 息和规则与模版关系 。 页面生成子系统是从数据处理子系统得到信息数据,根据指令规则内容,生成基于特定模版的静态 HTML页面,它是整个系统的核心部分。 页面管理子系统主要实现静态页面的增删改功能,通过数据库访问,将库内的信息作相应的改动, 然后再经过页面生成子系统生成新的相关静态页面 J。 收稿日期:2015-01.19 基金项目:黑龙江省教育科学青年专项课题(GBD1212033);黑龙江省高等教育科学研究课题(14Q006) 作者简介:王莉利(1979一),女,黑龙江省大庆市人,东北石油大学讲师,博士研究生,主要研究方向为智能优化;高新成 (1979~),男,黑龙江省木兰县人,东北石油大学副教授,博士研究生,主要研究方向为计算机网络、云计算等。 ・41・ 陕西理工学院学报(自然科学版) 第3l卷 图1 动静态B/S结构框架图 2 系统功能设计与主要技术实现 2.1 新闻系统的功能模块设计 该系统是针对企业和事业单位的新闻发布管理,根据新闻业务管理需求,系统功能主要包括管理员 登录模块、新闻管理模块、用户管理模块、个人信息管理等模块。系统功能模块如图2所示。 图2 新闻系统功能模块图 管理员登录模块:负责验证管理员的帐号和密码是否合法,以及所具有的操作权限,并根据不同权 限返回包含不同模块的导航信息。 新闻管理模块:可将系统的新闻分为文字新闻、图片新闻和视频新闻。对新闻模块的操作包括新闻 添加、浏览编辑、新闻审核、新闻发布等功能。对不同类别新闻的不同操作只有具有相应权限的管理员 才能够进行。 用户管理模块:包括用户管理、权限分配、角色组管理、新闻类别管理等功能。用户管理分为一级管 理员、二级管理员和超级管理员3个级别。权限分配操作主要包括角色组权限分配、权限的查询、修改 和删除。角色组管理主要包括角色组信息的查询、编辑、添加、删除等操作。新闻类别管理主要包括新 闻类别添加、修改、删除和查询等功能。 个人信息管理模块:只对管理员类用户开放,用于管理员修改登录密码等基本信息。 2.2动转静技术的实现方法 本系统在实现动转静过程中,主要采用模板技术和.NET内部函数来实现。 第2期 王莉利,高新成,王才智 基于动转静技术的新闻系统的设计与实现 2.2.1模板技术 以数据库中的新闻信息为源,借助技术方法,生成一个客户端能够运行脚本的静态HTML页面。 模板是不含任何实质信息的一种静态网页框架文件,文件中将显示实质信息的地方用特殊标志来标识, 其中要显示信息标题的地方用“{title}”标识代替,要显示正文的区域使用“{content}”标识来替代,如 果在页面中还要显示其它信息,可以再设置相应的标识。可以把模板的源代码存放在后台数据库中,当 要生成静态网页时,把相应模板静态调出经过信息替换生成静态网页。通过模板技术的使用,能保证信 息页面的界面相对统一【9_lo_。 2.2.2.NET内部函数 当ASP.NET中的服务器控件被访问时,都变成了浏览器可以识别的HTML代码。每一个.aspx文 件都继承了System.Web.UI.Page类,这个类中的Render()方法每次都在aspx.es文件执行完毕后,将 用户请求.aspx文件直接转换成可以被浏览器读懂的HTML,然后将转译好的内容展示给用户。可以使 用Page的Server属性,获得HttpServerUtility类的实例,然后调用Execute(Stirng path,TextWriter writer) 在当前请求的上下文中执行指定虚拟路径的处理程序。TextWriter捕获执行的处理程序的输出;path指 要执行的URL路径;writer要捕获输出的TextWriter。将writer中的内容转换成byte[]数组型,并写人到 指定的HTML文件中,即可得到path路径中的动态文件对应的HTML静态页面。 主要实现程序代码: public void transHtml(stirng path,stirng outpath) { System.Web.UI.Page page=new Page();//建立page对象 StifngWriter writer=new StringWriter();//建立StringWriter对象 page.Server.Execute(path, ̄Titer);//翻译代码存于writer中 FileStream fs=File.Create(page.Server.MapPath(””)+”\\..+outpath);// ̄,J建输出流对象 byte[]bt=System.Text.Encoding.Default.GetBytes(writer.ToString());//将内容存人数组 fs.Write(bt,0,bt.Length);//内容输出 fs.Close(); } 2.3 生成静态分页技术的实现过程 对数据库中某一类新闻的所有标题进行分页显示。首先建立一个大小为所分页数值的数组newti— tle,将数据库中第1~N条记录中的新闻标题存人第一个数组元素中,N+1~2N个新闻标题存人第二 个数组元素中,依此类推,将数据库中所有的新闻记录都存人了数组中。调用每一页模式的模板设名称 为templet.html,对数组进行循环,生成静态页的名称为NewList0.html,NewList1.html,……, NewList(n一1).html,将newtitle[0]中的内容替换模板中显示新闻列表的标志输出NewList0.html,依此 类推到n一1。并在每一页新闻中,加入首页、下一页、上一页、尾页超链接的相对路径。 静态分页算法实现过程: public static void ereatstatic_—list(int kind) { int pageNum=15;//设置每页显示条数 int maxnLlm=ds.Tables[0].Rows.Count;//获取总条数 int pages1=0;//设置总页数 int yu=maxnun%pageNum;//计算生成页面数 stirng[]newList=new stirng[pages1];//设置新闻列表内容数组 for(int i=0;i<pages1;i+十) { //给列表数组赋值 or(ifnt O=i术pageNum;O<i水pageNum+pageNum;O++) newList[i]=newList[i]+ds.Tables[0].ROWS[o3[.t newsTitle”].ToString()+ ds.Tables[0].Rows[O][”upDateTime”].ToString(); .43. 陕西理工学院学报(自然科学版) } StreamReader sr=new StreamReader(temp,code); 第31卷 stirng str=sr.ReadToEnd();//读取模板文件 for(int i=0;i<pagesl;i++){ //循环生成静态页面 str=str.Replace(”¥NewList”,newList[i].ToString()); str=str.Replace(”¥pages”,ctr[i].ToString()); StreamWriter.Write(1istStr); } } 3 结论 本系统使用动静态B/S架构,C#作为开发语言,SQL Server 2008作为后台数据库,实现了基于动转 静技术的新闻系统。系统既具有静态网站访问速度快、安全性高的优点,又具有动态网站交互性强、开 发方便、通用性强、便于维护等优点;同时,既克服了静态网站开发繁琐、维护困难的缺点,又克服了动态 网站易受攻击、安全性低、并发访问量大时服务器反应速度慢等缺点。 [ 参考文献 ] [1]刘姗姗.新闻发布系统的设计与实现[J].信息与电脑:理论版,2012(4):81—82. [2]任淑琴,黄小娟.新闻发布系统简介[J].电脑开发与应用,2011(7):71-72. [3] 吴学刚.基于.NET的校园新闻发布系统的设计[J].软件导刊,2011,10(3):136.138. [4]任建华,戴海滨.基于ASP的新闻发布系统的设计与实现[J].内蒙古科技与经济,201l(3):52-53. [5]杨剑,闪四清.ASP.NET环境下基于角色的权限控制的实现[J].计算机技术与发展,2007,17(5):234-237. [6]樊艳英.基于ASP.NET二层架构和SQL Se ̄er数据库的新闻发布系统[J].电脑知识与技术,2011,28(7):6793. 6794. [7] 吴彩霞.新闻发布系统设计与实现[J].安庆师范学院学报:自然科学版,2014,20(4):103—106. [8]金晓倩.基于Web的新闻发布管理系统的研究与实现[J].信息技术,2014(4):303—305. [9] 黎海洋.高校网站新闻发布系统的研究[J].教育教学,2013(2):201.203. [10] 崔翔.基于.NET的校园新闻发布系统的设计与实现[J .计算机光盘软件与应用,2013(23):127-130. 1责任编辑:李莉l Design and implementation of news system based on the technology of dynamic converts into static WANG Li...1i,GAO Xin—cheng ,WANG Cai.zhi (1.School of Computer&Information Technology,Northeast Petroleum University,Daqing 1 633 1 8,China; 2.Modem Education Technique Center,Northeast Petroleum University,Daqing 1 633 1 8,China; 3.Paay Committee Propaganda Department,Northeast Petroleum University,Daqing 1633 1 8,China) Abstract:This paper uses a development method of dynamic and static B/S structure to have designed and implemented static news system based on dynamically generated technology.It overcomes such shorteom— ings as low eficiency,poor securitfy and poor concu ̄ency in traditional dynamic website.At the same time,it also keeps the advantages of dynamic website,such as real-time update,access statistics,facilitate interaction and SO on. Key words:tem; ASP.NET .dynamic and static B/S structure;dynamic converts into static technology; news sys— 44. 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- azee.cn 版权所有 赣ICP备2024042794号-5

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务