大学毕业论文-新闻管理系统_第1页
大学毕业论文-新闻管理系统_第2页
大学毕业论文-新闻管理系统_第3页
大学毕业论文-新闻管理系统_第4页
大学毕业论文-新闻管理系统_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

PAGEIIPAGEI新闻管理系统毕业论文目录摘要 1第一章绪论 21.1开发背景 21.2开发工具的选用及介绍 21.2.1Hibernate 21.2.2Dreamweaver简介 31.2.3MicrosoftSQLServer2000简介 31.2.4Struts标签库 4第二章系统分析 52.1系统目标 52.2功能需求 52.2.1功能划分 52.2.2系统功能结构图 62.3性能需求 72.3.1数据精确度 72.3.2时间特性 72.3.3适应性 72.4软件属性需求 72.4.1正确性 72.4.2可靠性 72.4.3效率 72.4.5完整性 72.4.6易使用性 72.4.7可维护性 82.4.8可测试性 82.4.9复用性 82.4.10安全保密性 82.5外部接口需求 82.5.1用户界面 82.5.2硬件接口 92.5.3软件接口 92.5.4通信接口 92.5.5故障处理 9第三章系统设计 103.1前台系统架构 103.2数据库表设计 103.3公共模块设计 113.3.1编写获取系统时间操作类 113.3.2编写字符串自动处理类 123.3.3编写文件删除类 123.3.4编写Hibernate数据库配置文件 133.3.5编写数据持久化类 143.4新闻查询功能模块 153.4.1新闻查询功能模块总体架构 153.4.2新闻功能模块的ActionForm类与配置文件 153.4.3首页面新闻查询实现过程 183.4.4新闻关键字查询实现过程 183.4.5新闻详细查询实现过程 193.5后台系统架构 193.5.1后台首页面架构 193.6管理员模块管理 203.6.1管理员模块总体架构 203.6.2管理员登录的实现过程 213.7新闻管理模块 223.7.1新闻管理模块总体架构 223.7.2新闻类别的实现类 223.7.3新闻类别查询的实现过程 233.7.4新闻类别添加的实现过程 243.7.5新闻查询的实现过程 263.7.6新闻添加的实现过程 27第四章总结 29致谢 29参考文献 29新闻管理系统毕业论文第2页新闻管理系统毕业论文第1页摘要随着Internet技术的发展,人们的日常生活已经离不开网络。未来社会人们的生活和工作将越来越依赖于数字技术的发展,越来越数字化、网络化、电子化、互联网在中国逐步普及,人们对网络的需求也日益增长,利用计算机实现信息的操作势在必行。当前系统从初步调查开始,详细介绍了需求分析、流程和数据分析,并进行了系统总体结构设计和数据库设计.系统采用MyEclipse进行项目开发,SQLSERVER2000建立数据库,Dreamweaver编写ajax和javascript脚本程序及css样式,从界面简洁实用的角度出发,完成对新闻信息及用户信息的增、删、改、查等功能,尽量使之成为一个实用性强的新闻管理系统。关键字:Dreamweaver,SQLServer2000,新闻管理,网络化第一章绪论当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,计算机被广泛应用于B/S系统环境。计算机的好处在于它能够进行信息管理。使用计算机进行信息控制,提高了工作效率.对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机与信息管理系统的开发密切相关,系统的开发是系统管理的前提。当前系统就是为了管理好新闻信息而设计的。1.1开发背景Internet的蓬勃发展,使新闻的传播方式发生了巨大的变化,传统的信息传播媒体电视、广播、报纸已经不再是人们茶余饭后的主要精神甜点,人们更多的开始关注网络新闻。由于互联网所容纳的信息量大、内容丰富、信息及时、准确,更有相关信息的全面的介绍与比较,大大地方便了人们的阅读,因此在短短几年的时间里,互联网便济身于众多媒体之间,并具有相当一部分媒体人群。借此东风,新闻管理系统也迅速发展起来,它内容丰富,涉及到商业、工业、农业、银行、财政、教育、娱乐、信息等各个产业,信息量大,不仅有实事新闻,还有相关的行业信息,同时新闻管理系统具有互联网所具备的一切特性。在全球网络化、信息化的今天,新闻管理系统迅速发展,大大地丰富了人们的生活,不知不觉中,它已经成为人们生活中不可或缺的重要组成部分。基于此,建立一个完备的新闻管理系统,使人们对新闻信息的分类管理、查阅变得更加方便快捷势在必行。1.2开发工具的选用及介绍1.2.1HibernateHibernate框架是操作数据库的持久化框架,它的值对象本质上是持久化对象的前身,也就是说,在Hibernate框架中,值对象就能够表示一条数据表中的记录。Hibernate之所以是优秀的框架,就是在于它所用持久化类的对象其本身是一个简单Java类的值对象。这样的有点是在纯粹Java类的情况下,持久化累的对象直接就可以在业务逻辑层和服务器端表示层被使用,不涉及高耦合的问题,因此在业务逻辑层中只要对值对象进行操作,然后返回这个对象即可。1.2.2Dreamweaver简介Dreamweaver是Macromedia公司最新推出的主页编辑工具。这是一个所见即所得主页编辑器,并带有站点管理功能,让你方便地设计和管理多个站点。而它最棒的地方就是支持最新的DHTML和CSS标准,你可以用它设计出生动的DHTML动画、多层次的页面(layer)以及CSS样式表。1.2.3MicrosoftSQLServer2000简介SQL是英文(Structured

QueryLanguage)的缩写,意思为结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。目前,绝大多数流行的关系型数据库管理系统,如Oracle,Sybase,MicrosoftSQLServer,Access等都采用了SQL语言标准。SQL语言有以下几个优点:1.非过程化语言

SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集,所有SQL语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。SQL不要求用户指定对数据的存放方法,这种特性使用户更易集中精力于要得到的结果;所有SQL语句使用查询优化器,它是RDBMS的一部分,由它决定对指定数据存取的最快速度的手段,查询优化器知道存在什么索引,在哪儿使用索引合适,而用户则从不需要知道表是否有索引、有什么类型的索引。2.统一的语言SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、应用程序员、决策支持系统人员及许多其它类型的终端用户。基本的SQL命令只需很少时间就能学会,最高级的命令在几天内便可掌握。3.所有关系数据库的公共语言由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS(关系数据库管理系统)转到另一个,所有用SQL编写的程序都是可以移植的。1.2.4Struts标签库Struts框架提供了相当强大的标签库,根据这些标签库的内容,程序员在编写网页中的代码时,可以大大的减少代码的编写量,从而使网页中的代码更加简洁。Struts提供了5种标签库文件,它们分别为HTML标签、Bean标签、Logic标签、Nested标签和Title标签。第二章系统分析2.1系统目标新闻发布系统网站实现的功能目标为:1.展示各类别信息;2.提供信息搜索功能;3.设置信息公告查询;4.设置焦点导读查询;5.为后台管理提供管理入口;6.通过网站的后台,可以对新闻的各个类别实现不同的操作。 必要性分析:新闻发布系统后台能够对网站的新闻作详细的分类,前台以分类形式显示新闻的详细信息,满足了用户浏览新闻时分类查看新闻信息的需求,同时提供新闻信息查询功能,方便用户快速查找相关的新闻信息,系统后台通过“管理员设置”和“管理员添加”等模块对网站管理员进行管理,保证的网站的安全性。2.2功能需求2.2.1功能划分1.前台功能模块前台功能模块主要包括新闻分类、新闻详细信息、新闻信息查询、新闻搜索、信息公告查询、信息导读查询及后台登入口。2.后台模块管理后台管理主要包括后台总管理员设置及密码修改、添加管理员、管理员信息设置、新闻类型管理、信息公告管理、焦点导读管理及后台退出等。2.2.2系统功能结构图新闻管理系统前台按大类别查看新闻焦点导读今日新闻查看新闻搜索按小类别或今日新闻查看搜索新闻查询焦点导读全部查看新闻管理系统前台按大类别查看新闻焦点导读今日新闻查看新闻搜索按小类别或今日新闻查看搜索新闻查询焦点导读全部查看站内公告新闻详细查看焦点导读详细查看新闻管理系统后台新闻管理新闻小类别管理站内公告管理焦点导读管理新闻添加新闻修改新闻管理系统后台新闻管理新闻小类别管理站内公告管理焦点导读管理新闻添加新闻修改新闻删除新闻查看新闻详细查看新闻小类别添加新闻小类别删除新闻小类别查看站内公告查看站内公告添加站内公告修改焦点导读查看焦点导读详细查看焦点导读添加焦点导读删除2.3性能需求2.3.1数据精确度查询时应保证查全率,所有相应域包含查询关键字的记录都应能查到。查询时应保证查准率,查到的记录应与给定的单项或组合查询条件完全匹配。2.3.2时间特性一般操作的响应时间应在1~2秒内,对软磁盘和打印机的操作。2.3.3适应性满足所有用户使用的需求。对前面提到的运行环境要求不应存在困难。2.4软件属性需求2.4.1正确性要求发布的软件达到用户的预期目标,运行时基本无错误。2.4.2可靠性在一般条件下,应不出故障。2.4.3效率对于查询、增加、删除、更新和密码设置等一般操作,要求及时响应,在1~2秒内。2.4.5完整性要求能在发生意外的情况下,保证不丢失数据。2.4.6易使用性要求尽量为用户的使用提供方便,软件的界面符合目前流行的界面规范。2.4.7可维护性要求本软件在运行中发现错误时,能快速、准确对其进行定位,诊断和修改。2.4.8可测试性设计时尽可能减少测试本软件的各项功能所需的工作量。2.4.9复用性设计时应采取模块化方法进行设计,对系统内各模块接口尽可能达到高内聚、低耦合的程度,以提高各模块的复用性。2.4.10安全保密性要求提供身份验证的用户使用本软件。2.5外部接口需求2.5.1用户界面采用Windows的通用图形界面,对用户友好,且必须对鼠标和键盘提供支持,界面的设计应遵循如下规则:a.界面友好美观,可以通过手机下载所需要的服务;b.具备错误处理页面,出错时不会使用户手足无措;c.设计良好的联机帮助;d.提供可逆反馈,用多种信息提示用户当前软件运行状态、软件界面元件的功能;e.显示启动画面,画面简洁明快,富有现代气息。截图如下:图2-3新闻首页2.5.2硬件接口支持一般的PentiumⅡ或更高档微机、笔记本电脑。2.5.3软件接口运行于Windows98/200/NT/XP、且具有WIN32、API的操作系统之上。2.5.4通信接口本软件应提供对电子邮件、Web浏览器、电话拨号等的支持。2.5.5故障处理正常使用不应出错,若运行时遇到不可恢复的系统错误,也必须保证数据库完好无损第三章系统设计3.1前台系统架构在新闻系统的前台首页中,用户可以按类别、按今日新闻和按关键字查询新闻。除了对新闻的查看外,还可以对站内公告和焦点导读进行查看。主要界面的各个说明以列表的形式给出。区域名称说明对应文件1网站导航主要新闻类别查询新闻内容f_top.jsp2网站左侧功能主要具有站内搜索新闻、站内公告和焦点导读查看功能f_left.jsp3网站右侧功能按类别显示新闻的内容,如果存在当天发布新闻,则在新闻标题后面出现“new”的字样index.jsp4版权信息显示系统的的版权信息,各种新闻类别的个数以及进入后台的入口f_button.jsp表3-1新闻前台首页说明3.2数据库表设计字段名称数据类型字段大小是否为主键说明idint4否自动编号contenttext16否公告内容createTimevarchar50否公告创建时间表3-2公告表字段名称数据类型字段大小是否为主键说明idint4否自动编号titlevarchar50否导读题目contenttext16否导读内容createTimevarchar50否创建时间表3-3焦点导读表字段名称数据类型字段大小是否为主键说明idint4否自动编号accountvarchar50主键后台管理员登录帐号passwordvarchar16否后台管理员登录密码namevarchar50否后台管理员姓名numberint4否登录后台次数managerbit1否是否为超级管理员表3-4后台管理员表字段名称数据类型字段大小是否为主键说明idint4否自动编号sortIdint4否tb_sort表的外键bigSortvarchar50否新闻大类别名称titlevarchar50否新闻题目contenttext16否新闻内容createTimevarchar50否新闻发布时间表3-5新闻表字段名称数据类型字段大小是否为主键说明idint4主键自动编号bigSortvarchar50否新闻大类别名称smallSortvarchar50否新闻详细类别名称createTimevarchar20否新闻内容表3-6新闻详细类别表3.3公共模块设计3.3.1编写获取系统时间操作类当前系统对系统时间操作类的名称为:TimeShow。该类的主要作用是在后台管理维护新闻信息时,获取系统时间来记录系统数据的时间,并且利用系统时间判断维护的信息是否是最新的数据。除了获取系统时间外,TimeShow类还将系统的时间转换成格林威治标准时,作为维护数据的静态页面的名称保存在服务器相对应的文件夹中,在新闻前台页面中直接调用该文件夹中的静态页面就可以对新闻的详细内容进行查询,TimeShow类文件的关键代码如下:packagecom.tools;importjava.text.DateFormat;importjava.util.Date;publicclassTimeShow{publicstaticStringcuttentMonthDate(){ Datedate=newDate(); DateFormatdateFormat=DateFormat.getDateInstance(DateFormat.LONG); returndateFormat.format(date);}publicstaticStringautoNumber(){ Datedate=newDate(); Stringautonumber=String.valueOf(date.getTime()); returnautonumber+".html";}}3.3.2编写字符串自动处理类当前系统使用的字符串自动处理类的名称为SelfRequestProcessor,该类继承了Struts框架中的RequestProcessor类,实现RequestProcessor类中的RequestProcessor()方法,该方法作用是将从form表单中获取的字符串编码格式转换成gb2312。代码如下:packagecom.tools;importjava.io.UnsupportedEncodingException;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importorg.apache.struts.action.RequestProcessor;publicclassSelfRequestProcessorextendsRequestProcessor{ publicSelfRequestProcessor(){ } protectedbooleanprocessPreprocess(HttpServletRequestrequest, HttpServletResponseresponse){ cessPreprocess(request,response); try{ request.setCharacterEncoding("gb2312"); }catch(UnsupportedEncodingExceptionex){ ex.printStackTrace(); } returntrue; }}3.3.3编写文件删除类当前系统使用的文件删除类的名称为FileOperation,在该类中的deleteFile()方法中,实例化File类的对象file,并将filename对象作为该实例化对象的参数,通过file调用exists()方法,判断filename对象内容是否存在,如果存在将调用delete()方法执行删除文件的方法。代码:packagecom.tools;importjava.io.File;publicclassFileOperation{publicstaticvoiddeleteFile(Stringfilename){ java.io.Filefile=newFile(filename); if(file.exists())}}}3.3.4编写Hibernate数据库配置文件Hibernate配置文件主要用于配置数据库连接和Hibernate运行时所需的各种属性。它同时支持XML格式的配置文件和传统的properties文件配置方式,当前系统采用的是XML型配置文件。XML配置文件提供了更容易的结构和更强的配置能力,可以直接对映射文件加以配置并由Hibernate自动加载。而在properties文件中则无法做到这点,必须在程序中通过编码进行映射文件的加载。代码如下:<?xmlversion='1.0'encoding='UTF-8'?><!DOCTYPEhibernate-configurationpublic"-//Hibernate/HibernateConfigurationDTD//EN""/hibernate-configuration-3.0.dtd"><hibernate-configuration><session-factory><propertyname="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property><propertyname="connection.driver_class">com.microsoft.jdbc.sqlserver.SQLServerDriver</property><propertyname="connection.url">jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_wyNews</property><propertyname="connection.username">sa</property><propertyname="connection.password"></property><propertyname="show_sql">false</property><mappingresource="com/actionForm/SortForm.hbm.xml"/><mappingresource="com/actionForm/NewsForm.hbm.xml"/><mappingresource="com/actionForm/AfficheForm.hbm.xml"/><mappingresource="com/actionForm/ForceForm.hbm.xml"/><mappingresource="com/actionForm/ManagerForm.hbm.xml"/></session-factory></hibernate-configuration>3.3.5编写数据持久化类当前系统是一个数据库持久化类的名称为ObjectDao。开发当前系统使用了Hibernate框架和Struts框架整合技术,在编写书库持久化类的代码中,分别定义了SessionFactory类、Session类和Transaction类的属性,之后通过静态方法取得对数据库的链接操作,最后根据链接对象分别实现对数据表的添加、修改、删除、和查询操作。具体代码如下:

publicclassObjectDao<T>{ privatestaticSessionFactorysessionFactory; privatestaticSessionsession=null; Transactiontx=null; static{ try{ Configurationconfig=newConfiguration().configure(); sessionFactory=config.buildSessionFactory(); }catch(Exceptione){ //System.out.println("ffffffffffff"); System.out.println(e.getMessage()); }}3.4新闻查询功能模块3.4.1新闻查询功能模块总体架构◆网站首页中的新闻查询:用于在网站的首页中,查询部分新闻标题的功能。◆按大类别查询新闻和今日新闻查看:用于按大类别查询新闻和今日新闻查询的功能。◆按关键字查询新闻:用于按关键字查询新闻。◆新闻的详细查询:用于对新闻内容的详细查询。3.4.2新闻功能模块的ActionForm类与配置文件新闻查询模块中主要涉及到两个方面的ActionForm类:一个是新闻小类别的ActionForm与相应的配置文件;另一个是新闻的ActionForm类相应的配置文件。在新闻小类别功能模块中,涉及的数据表是新闻小类别信息表(tb_sort)。在新闻小类别信息表中保存着小类别的名称和创建时间等内容,根据这些信息创建小类别信息的ActionForm名称为“SortForm.java”关键代码如下:packagecom.actionForm;importorg.apache.struts.action.*;publicclassSortFormextendsActionForm{privateStringbigSort="";//大类别名称privateintid=-1;//自动编号privateStringsmallSort="";//小类别名称privateStringcreateTime="";//创建时间publicSortForm(){}publicStringgetBigSort(){returnbigSort;}publicvoidsetBigSort(StringbigSort){this.bigSort=bigSort;publicvoidsetSmallSort(StringsmallSort){this.smallSort=smallSort;}publicvoidsetId(intid){this.id=id;}publicvoidsetCreateTime(StringcreateTime){this.createTime=createTime;}publicintgetId(){returnid;新闻功能模块的ActionForm类与配置文件在新闻查询功能模块中,涉及的数据表是新闻信息表(tb_news)。在新闻信息表中保存着新闻题目、新闻主要内容及新闻发布时间等内容,根据这些信息创建新闻信息的ActionForm名称为“NewsForm.java”,关键代码如下:packagecom.actionForm;importjavax.servlet.http.*;importorg.apache.struts.action.*;publicclassNewsFormextendsActionForm{privateintid=-1;privateintsortId=-1;privateStringcontent="";privateStringcreateTime="";privateStringbigSort="";privateStringtitle="";privateStringshowNews="";publicStringgetContent(){returncontent;}publicStringgetShowNews(){ returnshowNews;}publicvoidsetShowNews(StringshowNews){ this.showNews=showNews;}publicvoidsetContent(Stringcontent){this.content=content;}publicvoidsetTitle(Stringtitle){this.title=title;}publicvoidsetCreateTime(StringcreateTime){this.createTime=createTime;}publicvoidsetId(intid){this.id=id;}publicvoidsetSortId(intsortId){this.sortId=sortId;}publicvoidsetBigSort(StringbigSort){this.bigSort=bigSort;}publicStringgetCreateTime(){returncreateTime;}publicStringgetTitle(){returntitle;}publicintgetId(){returnid;}publicintgetSortId(){returnsortId;}publicStringgetBigSort(){returnbigSort;}}3.4.3首页面新闻查询实现过程在网站首页中的右侧页面中主要是按不同的新闻大类别显示新闻的标题,这里主要存在的类别主要包括:科学教育、法制教育、时政要闻、经济动向、社会现象以及娱乐天地6组大类别内容。按各种新闻的类别显示新闻标题主要是通过在首页中定义数据持久化类的实例化对象实现,由于数据库持久化类对数据表的操作是过Hibernate中的hql语句进行操作的,因此,在首页面中对每个类别定义如下的hql语句:typeNews="科学教育";hql="fromNewsFormwherebigSort='"+typeNews+"'orderbyiddesc";typeNews="法制教育";hql="fromNewsFormwherebigSort='"+typeNews+"'orderbyiddesc";typeNews="时政要闻”;hql="fromNewsFormwherebigSort='"+typeNews+"'orderbyiddesc"typeNews="经济动向";hql="fromNewsFormwherebigSort='"+typeNews+"'orderbyiddesc";typeNews="娱乐天地”;hql="fromNewsFormwherebigSort='"+typeNews+"'orderbyiddesc";typeNews="社会现象”;hql="fromNewsFormwherebigSort='"+typeNews+"'orderbyiddesc";3.4.4新闻关键字查询实现过程在当前系统的前台左侧页面中存在站内搜索的功能,在“关键字”文本框中输入要搜索的内容,单击“search”按钮后可以进行新闻关键字搜索的功能,如图所示:图3-1站内搜索界面3.4.5新闻详细查询实现过程无论在前台页面中进行任何查询的操作,在查询结果页面中,单击新闻标题超链接就可以进行对新闻详细查询。由于管理员在后台进行数据维护时,将新闻内容保存在HTML网页中,将HTML网页的名称保存在数据表,因此,单击每个标题中的链接实际上都会出发一个HTML网页,该网页将被弹出显示。3.5后台系统架构3.5.1后台首页面架构在当前系统的后台首页中,管理员可以对各种类别的新闻、站内公告以及焦点导读进行管理,如果登录用户为系统管理员,则可以对站内的管理员信息进行管理,如果登录的用户为普通管理员,则具有修改登录用户信息的功能,新闻后台首页运行结果各个部分说明以列表的形式给出:区域名称说明对应文件1网站导航主要用于放置管理员可操作的链接b_top.jsp2网站左侧功能主要用于显示所有后台功能的链接b_left.jsp3网站右侧功能主要用于显示功能的显示b_mianPage.jsp4版权信息用于显示网站的版权信息b_botton.jsp表3-7系统后台各部分功能3.6管理员模块管理3.6.1管理员模块总体架构1.管理员管理模块主要功能◆管理员登录:用于核实管理员身份的功能。◆管理员查询:用于实现管理员查询的功能。◆管理员添加:用于管理员添加的功能。◆管理员密码修改:用于修改普通管理员密码的功能。 2.管理员管理流程管理员登录管理员登录修改管理员密码查询管理员添加管理员删除管理员管理员验证图3-2管理员管理流程图3.6.2管理员登录的实现过程管理员登录是管理员进入后台维护数据的唯一通道。在前台首页右上角单击“进入后台”超链接,进入到管理员登录页面,如图:图3-3后台登录界面 3.7新闻管理模块3.7.1新闻管理模块总体架构1.新闻管理模块主要功能◆新闻小类别添加◆新闻小类别删除◆新闻小类别查询◆新闻添加◆新闻修改◆新闻删除◆新闻查询3.7.2新闻类别的实现类在当前系统中,新闻类别主要是分为6大类:时政要闻、经济动向、法制教育、科学教育、社会现象以及娱乐天地。这6大类是固定的,但是它们的小类别不是固定的,需要后台管理员进行维护。新闻类别实现类名称为:SortAction.java.该类继承DispatchAction类,实现多业务处理的操作。代码如下:Packagecom.action;Importjavax.servlet.http.*;Importorg.apache.struts.action.*;Importcom.actionForm.SrotForm:Importorg.apache.struts.actions.DispatchAction;Importcom.dao.ObjectDao;Importjava.util.List;Importjava.io.UnsupportedEncodingException;PublicclassSortActionextendsDispatchAction{}3.7.3新闻类别查询的实现过程新闻类别信息的维护主要是新闻操作的子功能,例如单击左侧页面中“时政要闻”的超链接,可以查看该大类别中的所有小类别,查询小类别信息的运行结果如图:图3-4新闻类别页面实现“详细类别管理”关键代码如下:<%StringsortNews=newString(request.getParameter("bigSort").getBytes("ISO8859_1"),"gb2312");intpagesize=10;Listlist=(List)request.getAttribute("list");intnumber=list.size();//以下这段代码是计算多少页数intpageNumber=number;if(pageNumber%pagesize==0){pageNumber=pageNumber/pagesize;}else{pageNumber=pageNumber/pagesize+1;}//以下是计算当前页的页数intcount;if(request.getParameter("count")==null){count=0;}else{count=Integer.valueOf(request.getParameter("count"));}//以下显示多少条纪录intstart=count*pagesize;//开始条数intover=(count+1)*pagesize;//结束条数intlastCount=number-over;//还剩多少条记录if(lastCount<=0){over=number;}%><%for(inti=start;i<over;i++){NewsFormform=(NewsForm)list.get(i);Stringhql="fromSortFormwhereid='"+form.getSortId()+"'";SortFormsortForm=(SortForm)objectDao.queryFrom(hql);}%>3.7.4新闻类别添加的实现过程在新闻类别查询页面上,单击“添加类别”的超链接,即可显示添加新闻类别信息的页面,运行结果如图:图3-5添加新闻类别页面添加新类别页面提交表单如下:名称数据类型说明重要属性samllSortText详细类别名称size=”40”createTimeHidden类别名称建立时间bigSortHidden新闻大类别的名称SubmitSubmit【添加按钮】ResetReset【重置按钮】sortFromForm表单Action=”sortAction.do?method=iinsertSortAction&bigSort=<%=bigSort%>”表3-8添加新闻类别页面提交表单关键代码如下:publicActionForwardselectSortAction(ActionMappingmapping, ActionFormform,HttpServletRequestrequest, HttpServletResponseresponse) throwsUnsupportedEncodingException { objectDao=newObjectDao<SortForm>(); StringbigSort=request.getParameter("bigSort"); bigSort=newString(bigSort.getBytes("ISO8859_1"),"gb2312"); Stringhql="fromSortFormwherebigSort='"+bigSort +"'orderbyiddesc"; Listlist=objectDao.queryList(hql); request.setAttribute("list",list); returnmapping.findForward("selectSortAction"); } //对新闻详细类别插入的Action publicActionForwardinsertSortAction(ActionMappingmapping, ActionFormform,HttpServletRequestrequest, HttpServletResponseresponse) throwsUnsupportedEncodingException { SortFormsortForm=(SortForm)form; Stringhql="fromSortFormwherebigSort='" +sortForm.getBigSort()+"'andsmallSort='" +sortForm.getSmallSort()+"'"; objectDao=newObjectDao<SortForm>(); SortFormsort=objectDao.queryFrom(hql); if(sort!=null) { request.setAttribute("result","您输入的类别名称重复,请重新输入"); }else { objectDao.saveT(sortForm); request.setAttribute("result","您输入的类别成功"); } returnmapping.findForward("resultSortAction"); }3.7.5新闻查询的实现过程管理员登录以后,在左侧区域中,单击任意新闻类别的类别的链接,都可以对新闻所在的类别进行查询,其中,实现这些链接是将所有的大类别信息保存在一个数组对象中,然后通过for循环显示数组中的新闻类别内容,最后设置相同的超链接,通过for循环显示各个类别信息的超链接的代码如下:<%String[]type

温馨提示

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

评论

0/150

提交评论