网上留言簿jsp实现(附所有代码)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

计算机与信息学院《计算机网络系统实践》报告2014年1月设计题目:网上留言簿的设计与实现学生姓名:学号:专业班级:计算机科学与技术X班二、选做部分题目:网上留言簿的设计与实现1设计要求1.进行网上留言簿的需求分析和功能设计;2.在数据库中构建数据库、表或视图,熟悉数据库开发流程;3.根据网上留言簿的功能,设计各页面和脚本,掌握动态网页的制作技术;2开发环境操作系统:Windows7数据库:SQLServer2005开发平台:MyEclipse8.63基本原理1、Web编程Web编程简单地说是基于上的应用程序开发,随着Internet的普及与传播,越来越多的人通过走进网络世界的大门。CGI(CommonGatewayInterface)应用程序的第一次引入了动态交互的概念,这些运行于服务器端的脚本程序通常用Perl语言或C语言写成,需要编译才能运行。随着Web应用程序技术的发展,CGI所引入的动态内容概念被很多新技术所实现和发展,基于程序运行的地点大致可以分为两大类:一类是随着HTML页面下载并运行于客户端的程序脚本,例如ActiveX控件,DHTML,JavaApplet和JavaScript;另一类程序是基于服务器端的技术,例如ActiveServerPage(ASP),PHP,JavaServerPage(JSP),JavaServlet等。2、JSP简介JSP是JavaServerPage技术的缩写,是由Java语言的创造者Sun公司提出、多家公司参与制定的动态网页技术标准。通过在传统的(*.html,*.htm)中加入Java代码和JSP标记,构成后缀为*.jsp的JSP网页文件。Web服务器在遇到访问JSP页面的请求时,首先执行其中的代码片断,然后将执行的结果以普通HTML方式返回客户浏览器,JSP页面中的程序代码在客户端是看不到的。这些内嵌的Java程序代码可以完成数据库的操作、文件上传、网页重定向、发送电子邮件的等功能,所有的操作均在服务器端进行,客户端得到的仅仅是运行的结果,因而对客户浏览器的要求很低。JSP有JavaServlet技术为基础,利用可跨平台运行的JavaBeans组件,可以方便的操作数据库,执行各种复杂的查询,使逻辑处理和显示互相分离。3、JSP的优点(1)跨平台运行:JSP的最大优势在于平台可移植性,利用Java语言的平台无关性,任何JSP程序只要编译一次,就可以在任何服务器平台使用。(2)执行效率高:JSP在服务器端被Java虚拟机编译成Servlet执行,编译的过程只在第一次执行时进行,以后Servlet对于每个客户端请求都使用内存中的同一副本处理,而不像CGI那样需要为每个请求创建单独的进程,而只要在Java虚拟机中装载一个Servlet,因而节省了大量的服务器资源,执行时性能优化,代码效率高。(3)服务器端组件支持:服务器端编程语言往往由于缺少强大的服务器组件支持而受到限制,JSP使用成熟的JavaBeans技术,可以轻松得到各种服务器组件的支持。4、数据库支持JSP技术利用Java语言的数据库操纵能力可以与任何JDBC兼容数据库建立连接,执行常用的查询、添加、更新、删除操作和复杂的逻辑代数。利用Sun公司开发的JDBC-ODBC桥,JSP还可以访问现有的ODBC(OpenDataBaseConnection)[2]驱动的数据库系统。目前市场上的主流数据库产品都带有ODBC支持,所以JSP可以访问Oracle、MicrosoftSQLServer和MySQL等数据库产品。4功能模块1.前台:用户浏览、发布以及搜索留言部分的设计2.后台:管理员管理、回复留言部分的设计网络留言板,是一个可以在用户登陆以后,进行查询、发表、修改、浏览全部、删除留言等功能的动态网页系统。用户使用ID及PASSWORD登录网上留言版,随后进入欢迎界面,然后留言管理页面,根据用户需要,看是否要查找、添加、回复、修改或删除留言。根据以上分析,网络留言板应该具有如下功能:1用户登陆用户在进入留言板前,必须验证身份。即只有已注册的用户才能进行留言管理。2添加留言用户可以在留言板上添加留言。3查询留言查询出现所要查询字的相关留言信息。4修改留言用户登录系统后,可以修改留言信息。5回复留言用户可以在登录后对某一留言进行回复5删除留言用户登录系统后,删除数据库留言。6管理员功能管理员对留言板的操纵权限应该与普通用户应该有区别,只有管理员有对留言的删除功能,普通用户无此功能。利用jsp实现动态网页的建立,利用数据库实现数据的存储与读取,从而实现网络留言板的功能。5设计步骤一、数据库设计用户表设计留言表设计留言回复表的设计二、jsp设计(相关代码见附录):6设计结果及使用说明1、开始界面-登录界面登录成功如图:2、用户名Pky的用户登录成功画面:3、注册用户界面:4、注册成功,告诉用户注册的ID下次登录时用ID登录5、更新留言的页面:6、留言页面-此页为普通用户登录后看到的留言页面,无删除留言功能:7、回复留言的页面-点击留言页面的title即可进入对该条留言的回复:8、管理员登录成功9、管理员可以使用对留言进行删除功能7设计体会(关键问题及解决方法)1、数据库连接问题利用jdbc数据库连接驱动进行对数据库的连接,访问;相关的配置操作,Internet网上有许多相关的教程资料,在此不再赘述;2、注册功能的实现注册功能与留言功能有相似的地方,都是向表里插入数据,注册时从regist.jsp文件中获取用户需要注册的信息,将取到的信息插入用户表中即可实现该功能;3、Reply回复功能的实现对于每条留言的回复功能,则留言的回复也需要一张表来存储对留言的回复内容,其中主键设为自增长,设有留言的id列,与留言表的id关联起来;4、管理员与普通用户之间的区别实现在person表中设计admin属性列,管理员设置为1,非管理员默认为0,在delete操作前读person表的该属性,判断为管理员后才显示delete功能,否则不予显示,即完成了只有管理员才可以删除留言的功能;5、运行后连在同一局域网的计算机和智能手机均可访问该留言板,在以后的时间里,可以对此留言进行更加深入的改进,可以作为毕业前同学给自己的留言纪念,应该是个很好的想法。8参考资料《JSP基础与案例开发详解》清华大学出版社相关的网络视频教程《数据库系统教程》清华大学出版社附代码:List_note.jsp%@pagecontentType=text/html;charset=gb2312%%@pageimport=java.sql.*%htmlheadtitleGumnChen20112522/title/headbodycenterh1fontsize=7Message/fontfontsize=7Board/font/h1h1style=background-color:rgb(128,255,128);fontsize=6Messagelist/font/h1br%//编码转换request.setCharacterEncoding(GB2312);if(session.getAttribute(uname)!=null){//用户已登陆%%!StringDBDRIVER=com.microsoft.sqlserver.jdbc.SQLServerDriver;StringDBURL=jdbc:sqlserver://localhost:1433;DatabaseName=guestbook;StringDBUSER=sa;StringDBPASSWORD=9999;Connectionconn=null;PreparedStatementpstmt=null;ResultSetrs=null;%%//如果有内容,则修改变量i,如果没有,则根据i的值进行无内容提示inti=0;Stringsql=null;Stringkeyword=request.getParameter(keyword);//out.println(keyword);if(keyword==null){//没有任何查询条件sql=SELECTid,title,author,contentFROMnote;}else{//有查询条件sql=SELECTid,title,author,contentFROMnoteWHEREtitlelike?orauthorlike?orcontentlike?;}try{Class.forName(DBDRIVER);conn=DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD);pstmt=conn.prepareStatement(sql);//如果存在查询内容,则需要设置查询条件if(keyword!=null){//存在查询条件pstmt.setString(1,%+keyword+%);pstmt.setString(2,%+keyword+%);pstmt.setString(3,%+keyword+%);}rs=pstmt.executeQuery();%formaction=list_notes.jspmethod=POSTPleaseInputwhatyouwantsearch:inputtype=textname=keywordinputtype=submitvalue=search/form/h3ahref=insert.jspAddanewmessage/abr                                                                ahref=logout.jspLogOut/atablewidth=80%border=1trtdMessageID/tdtdTitle/tdtdauthor/tdtdcontent/td%if(session.getAttribute(uadmin)==Admin){%tddelete/td%}%tdreply/td/tr%while(rs.next()){i++;//进行循环打印,打印出所有的内容,以表格形式//从数据库中取出内容intid=rs.getInt(1);Stringtitle=rs.getString(2);Stringauthor=rs.getString(3);Stringcontent=rs.getString(4);if(keyword!=null){//需要将数据返红title=title.replaceAll(keyword,fontcolor=\red\+keyword+/font);author=author.replaceAll(keyword,fontcolor=\red\+keyword+/font);content=content.replaceAll(keyword,fontcol

1 / 32
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功