Java与Web数据库课程设计基于Web的新闻发布系统

上传人:痛*** 文档编号:42665333 上传时间:2021-11-27 格式:DOC 页数:19 大小:418.04KB
收藏 版权申诉 举报 下载
Java与Web数据库课程设计基于Web的新闻发布系统_第1页
第1页 / 共19页
Java与Web数据库课程设计基于Web的新闻发布系统_第2页
第2页 / 共19页
Java与Web数据库课程设计基于Web的新闻发布系统_第3页
第3页 / 共19页
资源描述:

《Java与Web数据库课程设计基于Web的新闻发布系统》由会员分享,可在线阅读,更多相关《Java与Web数据库课程设计基于Web的新闻发布系统(19页珍藏版)》请在装配图网上搜索。

1、java与web数据库课程设计淮阴工学院 JAVA与Web数据库课程设计报告课题名称: 基于Web的新闻发布系统 专业: 计算机科学与技术 班级: 网络1091 姓名: 姚建国 学号: 1091304125 指导老师: 张永军 邵鹤帅 2012年01月03日19设计任务书课题名称基于Web的新闻发布系统设计目的 本课程设计的目的是通过实践使学生经历一个java与数据库系统开发的全过程并受到一次综合的训练,以便能较全面地理解、掌握和综合运用所学的知识去分析、解决实际问题。实验环境1、操作系统为Windows xp2、数据库管理系统为access 20033、高级程序设计语言为jsp任务要求任务:

2、完成基于Web的新闻发布系统的分析设计工作,并选用适当的开发工具完成系统的开发。要求:1、完成需求分析;2、进行数据库的概念设计;3、进行数据库的逻辑设计;4、进行数据库的物理设计;5、进行应用程序设计;6、编程实现。工作进度计划序号起止日期工 作 内 容12012-1-32012-1-3查询资料、选择课题22012-1-42012-1-4需求分析、总体设计32012-1-52012-1-5系统整体设计、编写程序代码、调试程序42012-1-62012-1-6撰写课程设计报告指导教师(签章): 年 月 日 摘要: 随着Internet的迅速发展,社会已近进入了网络时代,人们越来越倾向于从Int

3、ernet获取信息。而网站则是Internet网上进行信息传播的主要载体,又为了使网站的管理员方便的更新发布信息,将杂乱的信息进行合理的处理有条理的呈现给用户。本系统基于Web的新闻发布系统,就是实现这些功能。本系统利用了jsp动态网页和access数据库,采用B/S开发模式,实现新闻的动态发布。系统分为前台用户界面和后台管理员界面,前台用户的功能包括:用户的登录与注册、新闻的发布、新闻的修改及新闻的查询;后台管理员包括:管理员的登录、新闻信息查询、删除新闻信息等。该系统可移植性强,虽然系统功能还不完善,但其良好的可继承性,可以随着网站业务的发展不断升级。关键词:JSP;access数据库;新

4、闻发布系统;B/S模式; 目 录1 需求分析11.1 功能需求11.2 安全需求11.3 性能需求22 系统分析22.1 系统开发技术22.11 JSP特点22.2 UML活动关系图32.3 系统模块43 数据库设计与实现53.1 数据库的需求分析53.2 数据库的逻辑设计53.3 数据库的物理设计54 代码编写65 系统运行与测试8总结与体会12致 谢13参考文献141 需求分析随着网络的飞速发展和普及,越来越多的用户习惯上网浏览新闻。本系统基于Web的新闻发布系统主要目的是为用户提供一个方便、及时的网上新闻发布、浏览平台。利用本系统,用户可以直接上网发布新闻信息并根据自己的需要对需要的新闻

5、进行浏览、检索、增加和修改。管理员可以对新闻信息进行相关的处理,根据网站的标准删除部分信息。1.1 功能需求本系统将实现以下的几个功能:l 查看新闻功能:任何用户均可以使用查看新闻的功能。查看新闻功能在首页显示最新的新闻,用户可以查看新闻的详细内容;l 站内新闻查询功能:普通用户可以使用新闻查询功能,用户登陆后可以根据提供的查询选项进行查找相关的新闻,查找中可以使用按编号查询、按新闻标题查询及按更新日期查询,当查询到相关的新闻会将其显示出来;l 新闻发布功能:普通用户具有此权限,当登录成功后,可以选择新闻发布功能,发布新闻是必须填写标号,新闻标题等;l 管理员登陆:当用户需要处理新闻时,需要以

6、管理员的身份登录,待验证信息通过后即可登录成功;l 普通用户登录与注册:普通用户登录可以增加其权限,比如:可以发布新闻、修改新闻等,当用户没有用户账号时,可以选择注册一个账号;l 新闻管理功能:管理员登陆后可以对信息进行处理,比如:删除新闻、查询新闻等功能。1.2 安全需求 由于使用JSP编写的程序代码本身比较隐蔽性较强,在客户端仅可以看到JSP输出的动态Html文件,因此只要在编写代码时注意严谨性,控制好自己客户端的cookie信息即可得到很好的安全保障。管理员登录信息采用了数据库方式,存储与服务器端,不易给其他人获知。使用Tomcat6.0为系统发布平台,发布方便,安全可靠性比较高。1.3

7、 性能需求 Tomcat安装体积小,运行效率高,能很方便的在各种操作系统中运行,同时使用access数据库,兼容性高,建立数据库简单方便,免费使用。还有JSP开发工具众多可以使用Eclipse,也可以使用Dreamweaver编辑,甚至是记事本也可以,因此对系统的运行环境的要求非常低,服务器代价较小。2 系统分析2.1 系统开发技术2.1.1 JSP特点JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设

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

9、Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。2.1.2 access数据库 存储方式单一:Access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为(.mdb)的数据库文件种,便于用户的操作和管理。面向对象:Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。它将一个应用系统当作是由一系列对象组成的,对每个对象它都定义一组方法和属性,以定义该对象的行为和外国,用户还可

10、以按需要给对象扩展方法和属性。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。界面友好、易操作:Access是一个可视化工具,是风格与Windows完全一样,用户想要生成对象并应用,只要使用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。集成环境、处理多种数据信息:Access基于Windows操作系统下的集成开发环境,该环境集成了各种向导和生成器工具,极大地提高了开发人员的工作效率,使得建立数

11、据库、创建表、设计用户界面、设计数据查询、报表打印等可以方便有序地进行。Access支持ODBC(开发数据库互连,Open Data Base Connectivity),利用Access强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)特性,可以在一个数据表中嵌入位图、声音、Excel表格、Word文档,还可以建立动态的数据库报表和窗体等。Access还可以将程序应用于网络,并与网络上的动态数据相联接。利用数据库访问页对象生成HTML文件,轻松构建Internet/Intranet的应用。2.2 UML活动关系图用户打开新闻管理与发布系统的主页,分为用户登录、用户注册、管理员登录和信息

12、显示等模块。用户单击用户登录,通过登录页面,可以进入用户权限界面,进行相关的操作,操作完成可以使用返回按钮,再进行其他操作。图2.1用户活动关系图管理员进入首页,通过管理员登录,经过验证进入管理员权限界面,能够进行新闻的管理,比如删除新闻等。图2.2管理员关系图2.3 系统模块根据上面的分析,可以得出系统应该包括:主页面模块、用户登录模块、管理员登录模块以及用户注册。用户登录模块包括:发布新闻、修改新闻和查询新闻;管理员登录模块包括:删除新闻和查询新闻。图2.3系统模块图整个系统均采用B/S结构进行设计,后台管理部分也是通过页面进行操作,系统后台数据库使用access。3 数据库设计与实现3.

13、1 数据库的需求分析根据系统需求,可以列出以下的数据项和数据结构。管理员信息表:管理员编号、管理员名字和管理员密码;新闻信息表:新闻编号、新闻标题、新闻类别、新闻内容和新闻更新时间;用户信息表:用户编号、用户姓名、用户性别、用户年龄和注册时间。3.2 数据库的逻辑设计根据以上的需求分析,可以得出各表的关系。建立表的主键约束,可以避免处理数据库时产生严重的问题,保证各表数据库的完整性。各表之间达到了3NF,表之间基本没有什么影响,彼此之间相互独立。3.3 数据库的物理设计 管理员信息表(manage)用于存储管理员所有基本信息:表3.1管理员信息表编号字段名称数据结构说明1id文本 管理员编号2

14、pswd文本密码 新闻信息表(info)用于存储新闻信息:表3.2新闻信息表编号字段名称数据结构说明1id文本 新闻编号2auther文本作者3title文本新闻标题4lb文本新闻类别5nr文本新闻内容6time文本发布时间7udtime文本更新时间 用户信息表(userinfo)用于存储用户信息:表3.3用户信息表编号字段名称数据结构说明1userid文本 用户编号2name文本用户姓名3sex文本用户性别4userpasswd文本用户密码5rgdate文本用户注册时间 4 代码编写 首先是首页的设计,使用表格table进行布局,使用html代码插入使用背景图片,使界面美观。加上基本模块的链

15、接方便用户的使用,其中代码设计如下: 普通用户 用户注册 管理员 欢迎来到本网站 链接数据课的相关代码,由于使用的是access代码的数据库,链接时不需要使用测试链接,只需要在代码内部直接写出连接语句,但必须将数据库放在相同的目录之下,设计部分代码如下:String spath = user.mdb;/Access 数据库路径String dbpath = application.getRealPath(spath);/转化成物理路径String dbname = ; /Acvess 数据库用户名,没有则为空String user = ; /Access 数据库密码,没有则为空/数据库连接字符

16、串 String url =jdbc:odbc:Driver=Microsoft Access Driver (*.mdb);DBQ=+dbpath; /加载驱动程序Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);/建立连接Connection conn= DriverManager.getConnection(url); /创建语句对象Statementsql=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);String condition

17、=SELECT * FROM info;ResultSet rs=sql.executeQuery(condition);表格形式的显示,代码如下:out.print(); out.print(); out.print(+编号); out.print(+新闻发布者); out.print(+新闻标题); out.print(+新闻类别); out.print(+新闻内容); out.print(+发表时间); out.print(+更新时间); out.print(); while(rs.next() out.print(); String str=rs.getString(1); out.p

18、rint(+str+); out.print(+rs.getString(2)+); out.print(+rs.getString(3)+); out.print(+rs.getString(4)+); out.print(+rs.getString(5)+); out.print(+rs.getString(6)+); out.print(+rs.getString(7)+); out.print() ; out.print();新闻发布的相关的代码,主要是Insert的代码,代码如下:Stringcondition3=INSERTINTOinfo(id,auther,title,lb,n

19、r,time,udtime)VALUES(+id+,+auther+,+title+,+lb+,+nr+,+time+,+udtime+); 在列名上我们需要添加一对原因在于access数据库产生的一些问题,对于其他数据库则可以不使用,运行时也能成功。新闻修改的相关代码,主要是Update的代码,代码如下:Stringcondition5=updateinfosetauther=+auther+,title=+title+,lb=+lb+,nr=+nr+,time=+time+,udtime=+udtime+ where id=+id+; 根据id查询并显示代码,代码如下: String co

20、ndition=SELECT * FROM info WHERE id = +id+; ResultSet rs=sql.executeQuery(condition);out.print(); out.print(); out.print(+编号); out.print(+新闻发布者); out.print(+新闻标题); out.print(+新闻类别); out.print(+新闻内容); out.print(+发表时间); out.print(+更新时间); out.print(); while(rs.next() out.print(); String str=rs.getStrin

21、g(1); out.print(+str+); out.print(+rs.getString(2)+); out.print(+rs.getString(3)+); out.print(+rs.getString(4)+); out.print(+rs.getString(5)+); out.print(+rs.getString(6)+); out.print(+rs.getString(7)+); out.print() ; out.print(); 根据新闻题目查询及根据新闻更新时间查询方法基本类似,在此就不再累赘了。关于滚动字幕的代码编写,代码如下:欢迎来到本网站 还具有相关的属性,

22、可以选择从上到下滚动还是从下到上,也可以从左往右和从右往左等。5 系统运行与测试首先进入首页,对首页界面进行测试:图5.1运行出错 出现这样一个原因在于没有启动Tomcat,我们这个系统的发布是基于Tomcat发布环境的,发现这个问题,则启动Tomcat并刷新,得到这样的效果:图5.2系统首页首页正确显示,下面进入用户登录界面图5.3用户登录 当你输入用户名和密码正确时就进入用户特权模式,能够进行出了查看新闻以外的其他功能,比如可以发布新闻、查询新闻和修改新闻,相应的界面如下:图5.4用户功能选择 用户可以选择任意一项进行操作,如用户进入发布新闻,则可以进入发布新闻的界面,如果发现没有新闻可发

23、布,可以选择返回,界面如下:图5.5新闻发布其他的功能测试的方法基本和发布新闻一致。 通过测试发现本系统最大的问题在于,输入条件的控制,没有相关的信息的判断。比如对于一个日期来说,其实应该使输入的时间为日期类型,否则应该认为无效。但由于本人技术水平有限,本学期主要只学习JSP相关,对于javascript脚本相关的控制代码不是很熟悉,刚开始也尝试使用,但在初期的调试中发现产生了非常多的错误,这些错误在这一阶段已经超出我的解决问题的能力范围,所以本次在开发这个系统时,没有考虑相关的限制条件。希望通过之后的学习,将这个系统进行完善。总结与体会我这次做的是基于Web的新闻发布系统,主要采用的方法是J

24、SP和access 数据库的建立。严格按照软件工程相关的要求,使用相关的面向结构化的分析方法和面向结构化的设计方法,分析系统的基本功能,建立相关的数据库,将自己所学知识进行了基本的综合应用,使各方面得到巩固。通过这次课程设计,我对数据库、JSP有了更深的认识。在实验过程中,从系统分析到系统设计到代码编写及测试,严格按照软件工程关于项目的开发步骤,采用流行的面向结构化的设计方法,通过寻找需求分析,得到本系统的基本功能,从功能中抽象出不同的模块。在学习过程中,我上图书馆借了不少资料,也上网看了一些别人设计的新闻发布系统的设计报告,学以致用,自我创新,独立完成了这份自己的报告,从学到用,从用又到学,

25、不断修改,系统更新。虽然不能达到完善系统,但也做到了尽善尽美,加强理论学习对完善系统会有很多帮助,不管怎么说,对这次做的课程设计自己觉得还算满意。当然,在编写和调试过程中,也出现了不少问题,所以采用了网络资源。在网络上真的能让自己学到很多东西,一些自己解决不了的东西,一般在网上都会给出解决方法。总之,通过这次课程设计我学到了网页前台设计与高级编程语言相结合,能开发出一个实用的软件,以此来提高工作效率。致 谢在这次课程设计的编写过程中,我得到了许多人的帮助,尤其是邵鹤帅老师、张永军老师和其他老师的许多意见给了我很多灵感。首先我要感谢我的老师在课程设计上给予我的指导、提供给我的支持和帮助。这是我能

26、顺利完成这次报告的主要原因,老师帮我解决了许多技术上的难题,让我能把系统做得更加完善。在此期间,我不仅学到了许多新的知识,而且也开阔了视野,提高了自己的设计能力。其次,我要感谢帮助过我的同学,他们也为我解决了不少我不太明白的设计商的难题。同时也感谢淮阴工学院计算机工程学院提供给实验室给我提供的方便环境。良好的上机条件,使我们能够更加专心于课程设计的事情之中,在心底非常感激淮阴工学院计算机工程学院的支持。当然,在这次课程设计中,我也在网站上找了许多参考资料,也在图书馆借阅了一些参考书籍。所以我也要谢谢提供这些资料和参考资料的作者们。最后再一次感谢所有在设计中曾经帮助过我的良师益友和同学。参考文献1 李绪成,闫海珍.Java Web开发教程M.北京:清华大学出版社,2009.12 戴志诚,赵国峰.JSP信息化系统建设方案M.北京:人民邮电出版社,20073 林上杰,林康司. JSP2.0技术手册M.北京:电子工业出版社,2005.24 刘金岭,冯万利,张有东.数据库原理及应用M.北京:清华大学出版社,2009.75 马斗,邱泽.专家门诊JSP开发答疑M.北京:人民邮电出版社,2006

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!