收藏 分销(赏)

基于JSP的新闻发布系统.doc

上传人:天**** 文档编号:3994835 上传时间:2024-07-24 格式:DOC 页数:33 大小:217.54KB
下载 相关 举报
基于JSP的新闻发布系统.doc_第1页
第1页 / 共33页
基于JSP的新闻发布系统.doc_第2页
第2页 / 共33页
基于JSP的新闻发布系统.doc_第3页
第3页 / 共33页
基于JSP的新闻发布系统.doc_第4页
第4页 / 共33页
基于JSP的新闻发布系统.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

1、Abstract基于JSP的新闻发布系统THENEWSRELEASESYSTEMBASEDON JSP摘要当今社会是一个信息化的社会,新闻作为信息的一部分有着信息量大,类别繁多,形式多样的特点,新闻发布系统的概念就此提出。简单的说,新闻发布系统就是充当一个网络新闻媒介的功能,主要实现对新闻的分类、上传、审核、发布,模拟了一般的新闻媒介的新闻发布过程.利用JSP技术开发的新闻发布系统,主要有五大功能模块:前台查看模块,登陆验证模块,管理员管理模块,新闻类型管理模块,新闻信息管理模块,实现了对网站新闻的动态管理。因为可以用来动态发布新闻信息,所以对信息的管理更加及时、高效,提高了工作效率.本系统采

2、用B/S模式,以JDK1。5作为开发环境,以Java作为开发语言,以MyEclipse+Dreamweaver MX为开发工具,以SQL Server 2000作为数据库,以Tomcat 5.0或以上版本作为测试服务器。本论文对课题的设计和开发进行了总体论述,然后具体阐述如何运用JSP技术实现基于B/S架构的新闻发布系统.系统开发完成后,对课题要求的功能进行测试,测试结果证明本系统完成了课题的主要任务.关键词:新闻发布系统,JSP,MyEclipse,SQL Server 2000AbstractThe society today is an information society。 The

3、news has various information and various categories as the part of the information。 So the concept of news release system is put forward。 In brief, the news release system acts as a network media。 It mainly realizes the function of classification, upload, examination and release for news and simulat

4、ed the general media news release process。 The news release system based on JSP mainly has five function modules: the front desk check module, the login authentications module, the administrator management module and the news type management module. It realizes the dynamic management of the web news

5、. This system can release news information dynamically, so it manages information more timely and efficiently and improves work efficiency 。The system uses the B/S model. It takes JDK1。5 as the development environment 。It takes java as the development language。 It takes SQL Server 2000 as the databa

6、se。 It takes Tomcat 5。0 or above version as the test server.The paper describes the design and development of the topic on the whole。 Then it expounds how to use the JSP technology to realize the news release system based on B/S structure。 We test the function required by the subject after completio

7、n of the system. Test results show that the system accomplishes main task of the subject.Keywords: TheNews Release System,JSP,MyEclipse,SQL Server 2000目录目录1引言11.1课题研究背景11.2课题研究目的和意义12应用系统开发工具22。1JSP简介22。2MyEclipse简介32。3Tomcat简介32。4SQL Server 及JDBC简介43系统分析与设计53.1需求分析53.2系统简要分析63。3可行性分析63。4实体对象设计73.5数

8、据库设计104系统的具体实现114。1数据库连接模块114.2新闻发布系统前台144。3管理员登陆验证184。4管理员信息管理204。4.1删除管理员214.4。2添加管理员224。4。3 修改管理员234.5新闻类别管理244。5。1添加新闻类别244。5.2查看新闻类别254。6新闻信息管理274。6。1发布新闻信息274。6.2查看新闻信息295系统测试325。1软件测试325。2测试效果325.3测试结论346总结35参考文献36致谢37INDEX INDEX1Introduction11.1Research Background11。2Research Goal and Signif

9、icance12Application Development Tool22。1JSP Introduction22。2MyEclipse Introduction32.3Tomcat Introduction32。4SQL Server And JDBC Introduction43System Analysis and design53。1System Briefly Analysis53.2Demand Analysis63。3Feasibility Analysis63。4Entity Object Design73。5Database Design104System Realizat

10、ion114。1Database Connection Module114。2The Front-end Of The News Release System144。3Administrator Login Verification184。4Administrator Information Management204。4.1Delete Administrator214.4。2Add Administrator224。4。3 Modify Administrator234。5News Type Management244.5.1Add News Type244。5。2View News Ty

11、pe254。6New Information Management274。6.1Release News Information274.6。2View News Information295System Test325。1Software Testing325.2Test Effect325。3Test Conclusion346Summary35Reference36Acknowledgment371 引言Internet的蓬勃发展,使新闻的传播方式发生了巨大的变化,传统的信息传播媒体电视、广播、报纸已经不再是人们茶余饭后的主要精神甜点,人们更多的开始关注网络新闻。由于因特网所容纳的信息量大

12、、内容丰富、信息及时、准确,更有相关信息的全面的介绍与比较,大大地方便了人们的阅读。根据2010年的调查报告,阅读新闻以65。9的比例成为使用最多的因特网功能。因此,设计一个界面友好,功能强大的新闻发布系统十分有必要。1.1 课题研究背景新闻发布系统是上个世纪九十年代互联网技术发展以后才出现的技术,最初的表现是解决一些网站的信息动态发布而开发,只是简单的发布和显示,应用于各种不同的站点需要构建不同的系统来满足需要,而且功能很单一,在九十年代后期,互联网技术进一步发展,网络作为新起的新闻媒介工具,其用户大大增加,对系统的要求也越来越高,新闻发布系统在这样的一个环境中提出、开发并改进.到现在,新闻

13、发布系统的成功案例已经不计其数,而且已应用到各种站点上。可以说,各行各业的绝大部分的网站都是用到了新闻发布系统,大量的用户引发了新闻发布系统功能的进一步夸大和深化,给新闻发布系统提出了更高的要求。传统的网站新闻管理主要是静态的HTML页面,更新信息时需要工薪制作页面然后上传页面并修改相应的链接。手工制作发布的网页信息不但无法检索堆积如山的信息,而且每次更新内容并上传的时候都会使服务中断,导致用户无法访问而使形象和服务大打折扣.1.2 课题研究目的和意义本系统是基于JSP和脚本语言,将动态网页和数据库结合,能够在网上实现新闻的网上多用户发布,多栏目管理,实时的进行行为统计和记录的网上交互系统.这

14、也将大大减轻了网站更新维护的工作量,通过网络数据库的引用,将网站的更新维护工作简化到只需要录入相关文字信息或者上传图片,从而使网站的更新速度大大缩短,加快了信息的传播速度,也吸引了长期用户群,时时保持网站的活动力和影响力.本系统采用B/S模式,不需要安装客户端,被授权用户通过浏览器即可登录系统,B/S结构极大的简化了客户机的工作,客户机上只需要安装配置少量的客户端软件即可,服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。B/S体系的优点是,系统安装维护简便,数据集中管理,便于分散用户使用,适应互联时代软件的发展趋势。2 应用系统开发工具2.1 JSP简介JSP(Java

15、Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,。html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*。jsp)。 用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑.JSP将网页逻辑与网页设计和显

16、示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易. Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览. JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器.Java Serv

17、let 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成.JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 2.2 MyEclipse简介MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称My Eclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Stru

18、ts, JSF, CSS, Javascript, SQL, Hibernate。对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们.My Eclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,My Eclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6。0以前版本需先安装Eclipse。MyEclipse6.0以后版本安装时不需安装Eclipse。2.3 Tomcat简介Tomcat是Apache 软件基金会(Ap

19、ache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet 2。4 和JSP 2。0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它

20、还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能.Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。 2.4 SQL Server 及JDBC简介随着计算机技术的不断发展,信息化管理成都的不断提高,数据库技术在信息管理

21、中的作用日益重要.Microsoft SQL Server是目前使用最广泛的数据库之一,它与Windows网络操作系统的无缝集成,智能化的内容管理,强大的功能,使它得到大量用户的喜爱。数据库是数据管理的最新技术,是计算机科学的重要分支。多年来,数据库管理系统已从专用的应用程序包发展成为通用系统软件.由于数据库具有数据结构化、最低冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上的。一个数据库能否保持信息的正确性、及时性、很大程度上依赖数据库的更新功能的强弱与数据库的实时更新能力,这些操作包括插入、删除、修改,也成为更新3种操作。JDBC(J

22、ava Data Base Connectivity, java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序。 有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事.换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBC

23、 API写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行的优势。3 系统分析与设计3.1 需求分析1功能需求分析通过相关调查,要求网站具有以下功能:1)通过网络,展示各种类型的新闻及详细信息; 2)为后台管理提供登陆入口;3)管理员信息的管理;4)新闻类型的管理;5)新闻信息的管理。2性能需求分析当用户登录,进行任何操作的时候,系统应该及时地进行反应,反应的时间在五秒以内.系统能检测出各种非正常情况,如与设备的通信中断,无法连接数据

24、库服务器等,以避免出现长时间等待甚至无响应。3.2 系统简要分析新闻发布系统的主要目的是为用户提供一个方便的、可快速浏览当前最新新闻的界面,并且也可以随时发布最新的信息以达到信息共享的目的。因此要为用户提供个方便易用的使用界面,同时也为具有更高权限的管理用户提供添加、修改和删除新闻等的系统维护功能.访问本系统的用户可分为两大类:普通用户和管理员用户。普通用户可以直接访问新闻发布系统的前台,通过点击每条新闻的标题来查看该条新闻的详细内容。当用户作为管理员成功登陆后,可以对新闻系统进行管理,包括三大模块:1 管理员信息管理:增加管理员、删除管理员、修改管理员信息;2 新闻类型管理:增加新闻类型、查

25、看新闻类型信息;3 新闻标题信息管理:增加新闻信息,查看新闻信息。3.3 可行性分析可行性研究的目的就是用最小的成本在尽可能短的时间内确定问题是否能够解决,它不是真正的解决问题,而是确定问题是否值得去解决。它是系统开发的前期工作,经过仔细地分析决定问题是否值得解决开发,用最小的代价在尽可能短的时间内确定问题是否能够解决。1 经济可行性系统的开发不需要额外增加设备购置费、软件开发费、管理和维护费用。而且系统的开发可以较好地解决新闻内容繁多而造成的处理效率低,出错率偏高的问题,并可以及时了解各种类型的新闻及其详细内容的发布情况,为及时发布最新的新闻消息提供可靠的数据支持,从而明确工作目标,同时还可

26、以减少人工劳动、提高工作效率.2技术可行性本系统采用MyEclipse结合SQL Server 2000数据库技术,它们都满足新闻发布系统建设的需求。本系统主要使用Java语言,这是一种简单、安全、稳定的语言,通过在MyEclipse和Dreamweaver的可视化编程环境下,能够轻松构建出各部分模块,并能够实现各模块功能。新闻发布系统的关键部分在于系统各模块与数据库的链接,在系统界面修改的数据在数据库中能有相应的更新,确保数据的同步更新.3.4 实体对象设计1、新闻类型对象publicclass NewsType privateinttypeId;private String typeNam

27、e;private String typeCreater;private Date typeTime;privatebooleantypeState;publicint getTypeId() returntypeId;publicvoid setTypeId(int typeId) this。typeId = typeId;public String getTypeName() returntypeName;publicvoid setTypeName(String typeName) this。typeName = typeName;public String getTypeCreater

28、() returntypeCreater;publicvoid setTypeCreater(String typeCreater) this。typeCreater = typeCreater;public Date getTypeTime() returntypeTime;publicvoid setTypeTime(Date typeTime) this.typeTime = typeTime;publicboolean isTypeState() returntypeState;publicvoid setTypeState(boolean typeState) this.typeSt

29、ate = typeState;2、新闻标题对象publicclass NewsInfo privateintnewsId;private String newsName;privateinttypeId;private String newsContent;private String newsCreater;private Date newsTime;privatebooleannewsState;publicint getNewsId() returnnewsId;publicvoid setNewsId(int newsId) this。newsId = newsId;public S

30、tring getNewsName() returnnewsName;publicvoid setNewsName(String newsName) this.newsName = newsName;publicint getTypeId() returntypeId;publicvoid setTypeId(int typeId) this。typeId = typeId;public String getNewsContent() returnnewsContent;publicvoid setNewsContent(String newsContent) this。newsContent

31、 = newsContent;public String getNewsCreater() returnnewsCreater;publicvoid setNewsCreater(String newsCreater) this。newsCreater = newsCreater;public Date getNewsTime() returnnewsTime;publicvoid setNewsTime(Date newsTime) this.newsTime = newsTime;publicboolean isNewsState() returnnewsState;publicvoid

32、setNewsState(boolean newsState) this。newsState = newsState;3、管理员用户对象publicclass AdminInfo privateintadminId;private String adminAccount;private String adminPwd;privateintadminClass;publicint getAdminId() returnadminId;publicvoid setAdminId(int adminId) this。adminId = adminId;public String getAdminAc

33、count() returnadminAccount;publicvoid setAdminAccount(String adminAccount) this.adminAccount = adminAccount;public String getAdminPwd() returnadminPwd;publicvoid setAdminPwd(String adminPwd) this.adminPwd = adminPwd;publicint getAdminClass() returnadminClass;publicvoid setAdminClass(int adminClass)

34、this。adminClass = adminClass;3.5 数据库设计1ER图管理员编号帐号号密码名称创建者创建时间审核状态新闻类型新闻标题创建时间类型编号内容创建者名称编号审核状态1:n1:n1:n编号图3-1 E-R图2 新闻类型表表31 新闻类型表列名数据类型长度说明typeIdint4新闻类型标号,主键typeNamevarchar40新闻类型名字typeCreatervarchar20新闻类型创建者typeTimedatetime8新闻类型创建时间typeStatebit1新闻类型是否审核3 新闻标题表表 3-2 新闻标题表列名数据类型长度说明newsIdint4新闻标题编号,

35、主键newsNamevarchar150新闻标题名称typeIdint4所属新闻类型的编号newsContenttext16新闻标题下的内容newsCreatervarchar20新闻标题创建者newsTimedatetime8新闻标题创建时间newsStatebit1新闻标题是否审核4 管理员用户表表 33 管理员用户表列名数据类型长度说明adminIdint4管理员编号,主键adminAccountvarchar20管理员账号adminPwdVarchar20管理员密码4 系统的具体实现4.1 数据库连接模块本系统采用JDBC连接SQL Server2000数据库,连接步骤如下:1加载数据

36、库驱动程序SQL的JDBC驱动程序名称是com。microsoft。jdbc。sqlserver.SQLServerDriver,通过Class。forName(”com.microsoft.jdbc。sqlserver。SQLServerDriver”);注册这个驱动程序。这样就能使用这个驱动来连接SQLServer数据库.2数据库连接数据库连接是由DriverManager这个工厂类的getConnection方法获得的。getConnection方法在获得连接过程中,需要数据库连接字符串、用户名和密码,SQLServer数据库的连接字符串格式如下:jdbc:microsoft: sqls

37、erver:/dbip:port/databasename其中dpip是数据库所在主机的ip,如果在本机,可以填写localhost或127。0。0.1port 是数据库的端口,SQLServer默认端口是1433,dabatasename 是所用的数据库实例名称3执行SQL语句得到数据库连接后,可以通过连接对象的createStatement方法来创建一个Statement对象,Statement是用于执行SQL语句的接口.有了Statement对象后,可以调用executeQuery或execute方法执行给定的SQL语句。4 得到结果集Statement执行executeQuery或ex

38、ecute方法后,返回一个Resultset对象,Resultset是用于指向结果集对象的接口,遍历该对象就能遍历结果集。5 对结果集作相应的处理这一步骤主要是遍历结果集取出相应的记录,根据业务需要对这些记录进行展现等处理.6 关闭结果集,关闭Statement,关闭连接当连接完成了,就要关闭相应的资源以释放内存,后打开的资源应该先关闭,所以关闭顺序为:结果集 Statement 数据库连接。为方便以后连接数据库的使用,将数据库的连接和关闭放在一个DataUtil类中,使用JDBC连接SQLServer数据库具体实现主要代码如下:publicclass DataUtil /*得到连接*retu

39、rn/publicstatic Connection getConn()Connection conn = null;tryClass.forName(”com.microsoft.sqlserver。jdbc.SQLServerDriver”);conn = DriverManager。getConnection(”jdbc:sqlserver:/localhost:1433;databaseName=newsDB,”sa”,”sa);/改成自己的数据库连接,用户名和密码catch(Exception e)e。printStackTrace();return conn;/关闭连接*param

40、rsparamst*paramconn*/publicstaticvoid closeConn(ResultSet rs,Statement st,Connection conn)try rs.close(); catch (Exception e) try st.close(); catch (Exception e) try conn。close(); catch (Exception e) /关闭连接paramst*paramconn/publicstaticvoid closeConn(Statement st,Connection conn)try st.close(); catch

41、 (Exception e) try conn.close(); catch (Exception e) 4.2 新闻发布系统前台1.主要界面新闻发布系统前台界面如图4-1所示:图41新闻发布系统前台界面此为index。jsp页面的效果,所有用户都可以访问此页面,头部下方显示“当前位置”和“管理员登录”部分,中间主体部分显示所有已经发布的并且通过审核的新闻类型以及其下的新闻标题,这些都是从数据库中查询显示的,随着数据库的变化,显示的内容也会相应变化.主要代码如下:div id=”middle! 运用小脚本得到新闻类型的数量,并用循环将内容输出 span style=”background-co

42、lor:lime;margin: 5px;= type。getTypeName)/spanbrfor(NewsInfo news : nlist)System。out。print(news);a href=”/news/pages/shownewsinfo。jsp?newsid=typeid=type.getTypeId() ”% list = new ArrayListNewsType();Connection conn = null;PreparedStatement query = null;ResultSet rs = null;tryconn = DataUtil.getConn()

43、;query = conn。prepareStatement(select from newsType where typeState = 1”);rs = query。executeQuery();while(rs.next()NewsType newstype = new NewsType();newstype.setTypeId(rs。getInt(”typeId));newstype。setTypeName(rs。getString(typeName”));newstype。setTypeCreater(rs。getString(typeCreater”));newstype。setTypeTime(rs。getDate(typeTime”);newstype。setTypeState(rs.getBoolean(”typeState”));list。add(newstype);catch(Exception e)e。printStackTr

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
百度文库年卡

猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服