下载

1下载券

加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 基于jsp的简单论坛制作(报告加源代码)

基于jsp的简单论坛制作(报告加源代码).doc

基于jsp的简单论坛制作(报告加源代码)

brant晓珲
2017-11-14 0人阅读 举报 0 0 暂无简介

简介:本文档为《基于jsp的简单论坛制作(报告加源代码)doc》,可适用于综合领域

基于jsp的简单论坛制作(报告加源代码)课程名称Web开发技术课程实习课程编号j学号学生姓名所在专业计算机科学与技术所在班级计科指导教师成绩教师签字课程实习时间:年月日至月日评语:目录摘要、应用需求分析、用户登录和注册功能、注册功能、用户登录成功后就进入了论坛的主界面用户可以新选择相应的功能、用户发表帖子、帖子的浏览、查看特定帖的详细信息、用户帖子的删除功能。、帖子的删除、管理员对帖子的查看发表删除功能、管理员查看或发表帖子、管理员删除帖子、系统总体设计、系统结构设计、各个页面的功能及示意图、各个页面之间的调用关系、数据库设计、用户信息表Student、存储帖子所用的信息表DISCUSS、存储回复帖子的信息表REPLY、系统详细设计、建立数据库及数据库表、用户登录功能的实现、登陆界面的制作:、登陆功能的实现、浏览主题帖子功能的实现、翻页功能的实现、主题帖子详细内容页面的制作、在帖子详细内容页面里实现回复功能、用户发表新帖子页面的制作、NewTitlejsp页面发表新的主题文章、SaveNewTitlejsp页面用于保存由NewTitlejsp页面传来的数据信息、新用户注册功能的实现、用户取回密码功能的实现、用户和管理员删除帖子功能的实现课程实习心得参考文献:摘要当今随着网络的迅速发展制作BBS论坛的技术和方法也越来越多。BS的英文全称是BulletinBoardSystem翻译为中文就是“电子公告板”。BBS最早是用来公布股市价格等类信息的当时BBS连文件传输的功能都没有而且只能在苹果计算机上运行。早期的BBS与一般街头和校园内的公告板性质相同只不过是通过电脑来传播或获得消息而已。一直到个人计算机开始普及之后有些人尝试将苹果计算机上的BBS转移到个人计算机上BBS才开始渐渐普及开来。近些年来由于爱好者们的努力BBS的功能得到了很大的扩充。BBS论坛是一种比较好的交流平台他能方便人们进行即时在线交流发表各种信息实现网络资源的共享。而且也能促使人们敞开心扉去学习知识、追求进步以至于能更好的利用网络资源。随着计算机软件的迅速发展BBS的界面效果越来越美观功能、作用和范围也得到了迅速扩大。与此同时制作BBS论坛的方法和所用的软件种类也越来越多了。而在这里我将采用基于JSP网页技术的方法进行简单的BBS论坛制作。我所用的开发软件是Eclipse它是一款可以做基础Java项目开发的工具JDK当前进行Java开发的最新版本数据库是MySQL它是一款当前比较流行的进行中小量数据开发的中小型数据库服务器是Tomcat它也是一款当前比较流行的软件主要用于网络服务器的开发。本文主要讲述利用JavaWeb的相关技术来制作一个简单论坛。通过实际制作,实现了BBS论坛系统应有的一些基本功能如:登陆功能通过在登陆界面输入用户名和密码来实现会员的登录用户只有登录成功了才能进行一系列的操作注册功能用户首次登陆需要先注册注册时需要用户填写个人信息找回密码功能当用户忘记密码时可以通过此功能找回密码找回密码时需要用户记得注册时填写的个人信息。除此之外还有浏览帖子、发表帖子、回复贴子以及删除帖子等等功能。制作本论坛所用的前台软件是MyEclipse后台数据库是MySQL运行时所用的服务器是Tomcat综合运用了HTML、JSp。关键词:BBS论坛JSP技术登陆注册找回密码浏览贴子发表帖子回复贴子删除帖子广东海洋大学本科生课程实习报告、应用需求分析作为一个BBS论坛它应该具有BBS所有的一些基本功能包括:用户登陆功能用户取回密码功能用户浏览帖子的功能以及用户发表、回复、修改和删除帖子的功能等。接下来我将详细阐述一下这些功能。、用户登录和注册功能进入登录页面后对于第一次登陆的用户来说首先需要注册单击“新用户注册”按钮即可进入注册界面,注册完成后返回登录界面。然后在对应的地方分别输入用户名和密码点击“登录”按钮系统即将用户名和密码发送到网络服务器上与保存在服务器数据库中的信息进行核对。若核对正确则进入帖子浏览的界面若不正确则重新返回登录界面。登录页面:、注册功能用户首次进入系统时候需要填写注册信息进行用户注册。广东海洋大学本科生课程实习报告、用户登录成功后就进入了论坛的主界面用户可以新选择相应的功能、用户发表帖子当用户登录成功后便进入该页面在该页面发表的主题帖子、、帖子的浏览在主题页面中主要有两部分组成一是用户的个人信息再就是他人已经发表的主题帖子每个帖子都包含了一些简单信息:主题、作者和时间这里运用了分页功能。广东海洋大学本科生课程实习报告、查看特定帖的详细信息如上所述单击主题便进入该帖的详细内容页面。里面主要包含了该帖的详细内容和他人对此帖的回复页面的最低处是用户的回复框架用户在框架内直接输入要回复的内容即可。、用户帖子的删除功能。、帖子的删除在主题帖子页面中每幅帖子的最左面都有一个删除按钮点,击此按钮便可删除你所发表的帖子。如果是非管理员即会提示非管理员不能删除帖子、管理员对帖子的查看发表删除功能、管理员查看或发表帖子管理员查看或发表帖子与普通用户的一样。管理员可以对帖子和用户进行管理。、管理员删除帖子管理员删除帖子与普通用户的区别在于他可以删除任何人发表的贴子另外他还有一项特权就是可以删除任何人回复的垃圾帖子。只要以admin身份登录的用户都可以点击帖子前面的就可以删除帖子、系统总体设计、系统结构设计本BBS论坛系统共分为三大功能模块:()登陆管理功能系统()注册功能系统()找回密码功能系统。登陆管理功能系统又包括四个子模块:单纯的用户登录模块用户发表帖子模块用户回复他人帖子模块和用户删除自己所发表的帖子模块。广东海洋大学本科生课程实习报告、各个页面的功能及示意图各个模块页面名称页面功能开始登陆的界面Loginhtml系统启动时的首页Enterjsp用于判断用户名和密码是否正确MainFormjsp登陆成功后转入该页面Discussjsp浏览主题帖子的页面在这可以查看各类帖子Personjsp显示个人信息的页面登录管理NewTitlejsp发表新的主题帖子的页面功能系统SaveNewTitlejsp将新发表的帖子存入数据库表Discuss中Detailjsp用于显示帖子的内容及回复该帖的内容SaveRevertjsp将回复内容存入数据库表Reply中Deletejsp用于删除帖子Registerjsp该界面用于新用户注册注册功能系统SaveRegisterjsp保存新用户注册信息到数据库表Student中找回密码功能系GetPasswordjsp用于用户找回密码统、各个页面之间的调用关系各个页面之间的调用关系如下图所示:、数据库设计、用户信息表Student表名:Student用户信息表Student包括八个字段:即ID(用户的标识符)、USERNAME(用户名)、PASSWORD(用户密码)、SEX(性别)、AGE(年龄)、BIRTH(生日)、TELEPHONE(联系电话)、EMAIL(电子邮箱)等。STUDENT表的属性如下图所示:STUDENT表的内容如下图所示:广东海洋大学本科生课程实习报告、存储帖子所用的信息表DISCUSS表名:DISCUSS信息表DISCUSS包括七个字段:即NAME(发帖人的昵称)、EMAIL(电子邮箱)、SUBJECT(帖子的主题)、CONTENT(帖子的内容)、TIME(发帖的时间)、USERNAME(用户名)、ID(帖子的标识)等。表的属性:表的内容:、存储回复帖子的信息表REPLY表名:REPLY信息表REPLY包括五个字段:即NAME(回帖人的昵称)、CONTENT(回帖的内容)、TIME(回帖的时间)、REPLY(所回复的主贴的标识符)、ID(回复贴的标识符)等。表的属性:表的内容:、系统详细设计、建立数据库及数据库表建立一个数据库Test和三个数据库表(STUDENT、DISCUSS和REPLY)。首先在Eclipse软件里配置MySQL配置完成后在Eclipse界面里建立名为“Test”的数据库然后再建立三个数据库表(STUDENT、DISCUSS和REPLY)。创建表student:stmtexecuteUpdate("createtablestudent(idintnotautoincrement,""usernamevarchar()unique,""passwordvarchar()not,""sexvarchar()not,""agevarchar(),""birthvarchar()not,""telephonevarchar(),""emailvarchar()not,""primarykey(id))")创建表discuss:stmtexecuteUpdate("createtablediscuss(namechar()not,""emailchar()not,""subjectchar()not,""contenttextnot,""timechar(),""usernamechar(),""idintnotautoincrement,primarykey(id))")广东海洋大学本科生课程实习报告创建表reply:stmtexecuteUpdate("createtablereply(namechar()not,""contenttextnot,""timechar(),replyint,""idintnotautoincrement,""primarykey(id))")、用户登录功能的实现、登陆界面的制作:<html><bodybackground=photojpg><table><formaction="enterjsp"method="post"onsubmit="returncheckForm(this)"><tr><td><h>用户名:<td><td><h><inputtype="text"name="username"><td><tr><tr>>密码:<td><td><h<td><h><inputtype="password"name="password"><td><tr><tr><td><inputtype="submit"value="点击进入论坛"name="submit"><td><td><inputtype="reset"value="重新设置"name="reset"><td><tr><form><tr><td><formaction="GetPassWordjsp"method="post"><inputtype="submit"value="找回密码"name="getpass"><form><td><td><formaction="registerjsp"method="post"><inputtype="submit"value="注册新用户"name="regist"><form><td><tr><table><body><html><scriptlanguage="JavaScript">functioncheckFrom(form){if(formusernamevalue==""){alert("用户名不能为空")formusernamefocus()returnfalse}if(formpasswordvalue=""){alert("密码不能为空")formpasswordfocus()returnfalse}returntrue}<script>、登陆功能的实现通过Loginhtml界面传递参数username和password给Enterjsp界面然后查询数据库判断用户名和密码是否正确。若判断正确则为用户建立一个session并进入了用户主界面。<pagecontentType="texthtmlcharset=GB"><pageimport="javasql*"><html><bodybgcolor=yellow><try{outprint("系统错误")ClassforName("commysqljdbcDriver")}catch(Exceptione){outprint("系统错误")}数据库的驱ConnectionconResultSetrsStringsqlStringusername=requestgetParameter("username")Stringpassword=requestgetParameter("password")try{Stringdatabase="test"Stringuri="jdbc:mysql:localhost"databasecon=DriverManagergetConnection(uri,"root","root")连接到数据库PreparedStatementpstmt=数据库表达式sql="select*fromStudentwhereusername=andpassword="SQL语句pstmt=conprepareStatement(sql)pstmtsetString(,username)代表上面的第一个问号。pstmtsetString(,password)广东海洋大学本科生课程实习报告rs=pstmtexecuteQuery()if(rsnext()){requestgetSession(true)创建一个sessionsessionsetAttribute("username",username)sessionsetAttribute("password",password)sessionsetAttribute("userIP",requestgetRemoteAddr())获取用户的ip地址}sessionsetAttribute("enter","true")responsesendRedirect("MainFormjsp")登录成功}elseresponsesendRedirect("loginhtml")登录失败返回~}catch(Exceptione){outprint("系统错误")}><body><html>、浏览主题帖子功能的实现、翻页功能的实现功能的实现:首先确定每页所能容纳帖子的最大数目在这里我设定MaxNum=然后连接数据库查询帖子的总数从而判断总的页数即lastPage接着根据请求的页码pageNO判断出该页码是否合法若pageNO<则改正为pageNO=,若pageNO>lastPage即所求的页码超出了最大页数则改正pageNO=lastPage然后确定要显示的第一个帖子的标识码firstNum和最后一个帖子的标识码lastNum最后连接数据库将标识码在firstNum和lastNum之间的帖子的信息查询出来并在此页面显示帖子的主题、作者等粗略的信息点击主题便能进入帖子的详细内容。程序为:<pageimport="javaxxmlsoapDetail"><pagecontentType="texthtmlcharset=GB"><pageimport="javasql*"><html><bodybackground=photojpg><StatementsqlConnectionconResultSetrsintMaxNum=每页容纳的主题论文的最大数目intcount=,firstPage=,lastPage=,firstNum=,lastNum=,prePage=,nextPage=,pageNO=if(requestgetParameter("pageNO")==||requestgetParameter("pageNO")equals(""))pageNO=elsepageNO=IntegerparseInt(requestgetParameter("pageNO"))firstPage表示首页lastPage表示末页pageNO表示第几页firstNum表示该页的起始贴的IDlastNum表示该页的末帖的IDprePage表示前一页nextPage表示后一页try{ClassforName("commysqljdbcDriver")}catch(Exceptione){outprint(e)}try{Stringdatabase="test"Stringuri="jdbc:mysql:localhost"databasecon=DriverManagergetConnection(uri,"root","root")翻页功能的实现Stringcondition="select*fromdiscuss"sql=concreateStatement()rs=sqlexecuteQuery(condition)while(rsnext()){count计算数据库里一共有多少帖子}*if(requestgetParameter("pageNO")==)pageNO=elsepageNO=IntegerparseInt(requestgetParameter("pageNO"))*lastPage=(int)Mathceil((double)countMaxNum)向上取整if(pageNO<=)pageNO=广东海洋大学本科生课程实习报告if(pageNO>lastPage)pageNO=lastPagefirstNum=(pageNO)*MaxNumlastNum=pageNO*MaxNumif(pageNO<=)prePage=elseprePage=pageNOif(pageNO>=lastPage)nextPage=pageNOelsenextPage=pageNOResultSetrsStringcondition="select*fromdiscusswhereidbetween"firstNum"and"lastNumrs=sqlexecuteQuery(condition)Stringname,subject,timeintreplyid,idwhile(rsnext()){name=rsgetString()subject=rsgetString()time=rsgetString()id=rsgetInt()outprint("<table><tr><td><ahref=deletejspid="id"replyid=><imgsrc=photojpgwidth=height=><a><td><tdwidth=><ahref=detailjspid="id">"subject"<a><td>")outprint("<tdwidth=>"name"<td>")outprintln("<tdwidth=>"time"<td>")outprint("<tr><table>")}outprint("<td><ahref=NewTitlejsp>发表新帖子<a><td>")}catch(Exceptione){outprintln("捕捉的错误")}><formaction=dissessjspmethod=post><tableborder=><tr><td>目前页数:<fontcolor=red><=pageNO><font><td><td>总页数:<fontcolor=red><=lastPage><font><td><td><ahref=dissessjsppageNO=<=firstPage>>【第一页】<a><td><td><ahref=dissessjsppageNO=<=prePage>>【上一页】<a><td><td><ahref=dissessjsppageNO=<=nextPage>>【下一页】<a><td><td><ahref=dissessjsppageNO=<=lastPage>>【最后一页】<a><td><td>输入页次:<inputtype=textsize=name=pageNOvalue="<=pageNO>"><td><td><inputtype=submitname=sendvalue="送出"><td><tr><table><form>、主题帖子详细内容页面的制作通过discussjsp页面传递参数ID然后进行数据库查询获得帖子的详细信息并显示的页面上。<StatementsqlConnectionconResultSetrsResultSetrsintid=IntegerparseInt(requestgetParameter("id"))try{ClassforName("commysqljdbcDriver")}广东海洋大学本科生课程实习报告catch(Exceptione){outprint("加载驱动错误")}try{intreplyid=Stringdatabase="test"Stringuri="jdbc:mysql:localhost"databasecon=DriverManagergetConnection(uri,"root","root")Stringcondition="select*fromdiscusswhereid='"id"'"*StringBufferresult=*sql=concreateStatement()rs=sqlexecuteQuery(condition)while(rsnext()){outprintln("这是帖子的详细内容:n")outprint("<br>")*outprint("<table>")outprint("<tr>")*outprint(rsgetString())*outprint("<tr>")outprint("<table>")**outprint(result)*}outprint("<tr>")outprint("<hr>")outprint("<tr>")、在帖子详细内容页面里实现回复功能在Detailjsp页面里实现回复功能让用户可以在同一页面实现浏览贴子、回复帖子和浏览别人回复的帖子的功能:Detailjsp页面中的代码:此部分代码是显示该帖子的内容并给用户提供了一个回帖框架在框架内直接输入内容就可以进行回复回复帖子的Stringcondition="select*fromreplywherereply='"id"'"rs=sqlexecuteQuery(condition)while(rsnext()){outprint("<table>")outprint("<tr>")outprint("<td>用户"rsgetString()"的回复内容是:<td>")outprint("<td>"rsgetString()"<td>")outprint("<tr>")outprint("<tr>")outprint("<td>回复的时间是:"rsgetString()"<td>")outprint("<tr>")outprint("<table>")intreply=IntegerparseInt(rsgetString())提取回复贴的idoutprint("<ahref=deletejspid="id"replyid="reply">删除回复请按><imgsrc=photoguanjpgwidth=height=><a>")}}catch(Exceptione){outprint("尼玛")}><formname=formaction=saveRevertjspid=<=id>method="post"onsubmit="returncheckForm(this)"><tableborder=><tr><td>输入你要回复的内容<td><td><textarearows=cols=name=content><textarea><td><tr><tralign=center><tdcolspan=><inputtype=submitvalue=确认回复name=send><inputtype=resetvalue=清除重写>SaveRevertjsp页面中的代码:此页面的功能保存由Detailjsp页面传来的回帖信息保存次信息到Reply数据库表中:<pagecontentType="texthtmlcharset=GB"><pageimport="javautilCalendar"><pageimport="javautilGregorianCalendar"><pageimport="javasql*"><广东海洋大学本科生课程实习报告StatementsqlConnectionconResultSetrstry{ClassforName("commysqljdbcDriver")}catch(Exceptione){outprint(e)}try{Stringdatabase="test"Stringuri="jdbc:mysql:localhost"databasecon=DriverManagergetConnection(uri,"root","root")Stringreply=requestgetParameter("id")Stringname=(sessiongetAttribute("username"))toString()Stringcontent=requestgetParameter("content")intyear,month,day,hour,minute,secondStringtimeGregorianCalendarcalendarcalendar=newGregorianCalendar()year=calendarget(CalendarYEAR)month=calendarget(CalendarMONTH)day=calendarget(CalendarDAYOFMONTH)hour=calendarget(CalendarHOUROFDAY)minute=calendarget(CalendarMINUTE)second=calendarget(CalendarSECOND)time=year"年"month"月"day"日"hour":"minute":"secondbytebb=contentgetBytes("iso")content=newString(bb)StringupdateCondition="insertintoreply(name,content,time,reply)values('"name"','"content"','"time"','"reply"')"sql=concreateStatement()outprint(updateCondition)sqlexecuteUpdate(updateCondition)outprint("内部失败")responsesendRedirect("detailjspid="reply)}catch(Exceptione){outprint("更新回复失败")}>、用户发表新帖子页面的制作、NewTitlejsp页面发表新的主题文章此界面提供用户输入功能输入完成后“发表心得主题”按钮便可提交数据给SaveNewTitlejsp页面:<<pagecontentType="texthtmlcharset=GB"><html><bodybackground=photogif><formaction=SaveNweTitlejsppageNO=method=postonsubmit="returncheckForm(this)"><tableborder=><tr><td>姓名<td><td><inputtype="text"size=name=name><td><tr><tr><td>Email<td><td><inputtype=textsize=name=email><td><tr><tr><td><pre>主题<td><td><inputtype=textsize=name=subject><td><tr><trvalign=top><td><pre>内容<td><td><textarearows=cols=name=content><textarea><td><tr><tralign=center><tdcolspan=><inputtype=submitvalue=发送心得主题name=send><inputtype=resetvalue="重置"><td><tr><table><hr><ahref=dissessjsppageNO=>返回主题页<a><form><body><html>广东海洋大学本科生课程实习报告、SaveNewTitlejsp页面用于保存由NewTitlejsp页面传来的数据信息首先将传递来的数据进行转换然后将其插入数据库Discuss中:<pageimport="javautilCalendar"><pageimport="javautilGregorianCalendar"><pageimport="javasql*"><pageimport="javautil*"><pagecontentType="texthtmlcharset=GB"><html><body><StatementsqlConnectionconResultSetrstry{ClassforName("commysqljdbcDriver")}catch(Exceptione){outprint(e)}try{Stringdatabase="test"Stringuri="jdbc:mysql:localhost"databasecon=DriverManagergetConnection(uri,"root","root")Stringname=requestgetParameter("name")Stringemail=requestgetParameter("email")Stringsubject=requestgetParameter("subject")Stringcontent=requestgetParameter("content")intyear,month,day,hour,minute,secondStringtimeGregorianCalendarcalendarcalendar=newGregorianCalendar()year=calendarget(CalendarYEAR)month=calendarget(CalendarMONTH)day=calendarget(CalendarDAYOFMONTH)hour=calendarget(CalendarHOUROFDAY)minute=calendarget(CalendarMINUTE)second=calendarget(CalendarSECOND)time=year"年"month"月"day"日"hour":"minute":"secondbytebb=contentgetBytes("iso")content=newString(bb)bytecc=subjectgetBytes("iso")subject=newString(cc)Stringusername=sessiongetAttribute("username")toString()StringupdateCondition="insertintodiscuss(name,email,subject,content,time,username)values('"name"','"email"','"subject"','"content"','"time"','"username"')"sql=concreateStatement()sqlexecuteUpdate(updateCondition)outprint("更新成功")responsesendRedirect("dissessjsp")}catch(SQLExceptione){outprint("更新失败")}><body><html>、新用户注册功能的实现SaveRegisterjsp用于保存新用户的信息这些信息是由Registerjsp页面传递而来首先判断用户名是否已被注册过了若被注册过则提示已注册。这是注册页面:<pagecontentType="texthtmlcharset=GB"><html><bodybackground=photojpg><table><tr><td><center>您好欢迎登陆注册页面请详细填写您的资料。<td><tr><table><formaction=SaveRegisterjspmethod="post"><table><tr><td>姓名<td><td><inputtype="text"size=name="username"><td><tr><tr><td>密码<td><td><inputtype="password"size=name="password"><td><tr><tr><td>性别<td><td><inputtype="text"size=name="sex"><td><tr><tr><td>年龄<td><td><inputtype="text"size=name="age"><td><tr><tr><td>生日<td><td><inputtype="text"size=name="year">年<td><td><inputtype="text"size=name="month">月<td><td><inputtype="text"size=name="day">日<td><tr><tr><td>电话<td><td><inputtype="text"size=name="telephone"><td><tr><tr><td>邮箱<td><td><inputtype="text"size=name="email"><td><tr>广东海洋大学本科生课程实习报告<tr><td><inputtype="submit"name="submit"value="注册"><td><tr><tr><td><ahref=loginhtml>返回前一页<a><td><tr><table><form><body><html>这是现实把检查注册信息并保存注册信息工呢过:<pagecontentType="texthtmlcharset=gb"><pageimport="javasql*"><html><body><StatementsqlConnectionconResultSetrstry{ClassforName("commysqljdbcDriver")}catch(Exceptione){outprint("")}*publicStringhandleString(Strings){try{bytebb=sgetBytes("iso")s=newString(bb)}catch(Exceptionee){returns}*try{Stringdatabase="test"Stringuri="jdbc:mysql:localhost"databasecon=DriverManagergetConnection(uri,"root","root")Stringusername=requestgetParameter("username")Stringpassword=requestgetParameter("password")Stringsex=requestgetParameter("sex")Stringage=requestgetParameter("age")Stringtelephone=requestgetParameter("telephone")Stringemail=requestgetParameter("email")Stringmonth=requestgetParameter("month")Stringday=requestgetParameter("day")Stringyear=requestgetParameter("year")Stringmsg=sql=concreateStatement()rs=sqlexecuteQuery("select*fromstudentwhereusername='"username"'")查询数据库if(!rsnext()){如果不存在Stringbirthbirth=year"年"month"月"day"日"*bytebb=usernamegetBytes("iso")username=newString(bb)byteb=sexgetBytes("iso")sex=newString(b)*StringupdateCondition="insertintostudent(username,password,sex,birth,age,telephone,email)values('"username"','"password"','"sex"','"birth"','"age"','"telephone"','"email"')"sql=concreateStatement()sqlexecuteUpdate(updateCondition)插入数据库中msg="恭喜你已注册成功~"outprintln("<center><fontcolor=greensize=>提示信息:<hr><font><fontcolor=redsize=>"msg"<font><hr>")responsesendRedirect("loginhtml")}else{如果注册用户已存在msg="你所注册的用户已经存在请你重新注册~"outprintln("<center><fontcolor=greensize=>提示信息:<hr><font><fontcolor=redsize=>"msg"<font><hr>")outprintln("<inputtype=buttonvalue=回上一页onclick=historyback()>")}}catch(Exceptione){outprintln("系统错误")}><body><html>、用户取回密码功能的实现GetPasswordjsp页面用于取回密码给该页面传递一些用户填写的信息将该用户注册时的对应信息与此信息进行比较当该信息与用户注册时填写的一样时便广东海洋大学本科生课程实习报告能取回密码否则不能:<pagecontentType="texthtmlcharset=GB"><pageimport="javasql*"><html><bodybackground=photobajpg><p><center><h>填写以下资料找回您的密码<h><center><formaction=""name="getpassword"><tableborder=><tr><td>姓名:<td><td><inputtype="text"name="username"><td><tr><tr><td>性别::<td><td><inputtype="text"name="sex"><td><tr><tr><td>邮箱:<td><td><inputtype="text"name="email"><td><tr><tr><td><inputtype="submit"name="submit"value="提交"><td><tr><StatementsqlConnectionconResultSetrstry{ClassforName("commysqljdbcDriver")}catch(Exceptione){outprint("")}try{Stringdatabase="test"Stringuri="jdbc:mysql:localhost"databasecon=DriverManagergetConnection(uri,"root","root")if(requestgetParameter("username")!=username用户名requestgetParameter("sex")!=sex性别requestgetParameter("email")!=){email电子邮箱Stringusername=requestgetParameter("username")Stringsex=requestgetParameter("sex")Stringemail=requestgetParameter("email")Stringcondition="select*fromstudentwhereusername='"username"'andsex='"sex"'andemail='"email"'"sql=concreateStatement()rs=sqlexecuteQuery(condition)从数据库中查找对应信息if(rsnext()){如果找到Stringpassword=rsgetString()Stringerrmsg="正确的填写信息,你的密码为:"outprintln("<center><fontcolor=greensize=>提示信息:<hr><font><fontcolor=redsize=>"errmsgpassword"<font><hr>")outprintln("<inputtype=buttonvalue=回上一页onclick=historyback()>")}else{Stringerrmsg="对不起您不能取回你的密码原因是你没能正确的填写信息~"outprintln("<center><fontcolor=greensize=>提示信息:<hr><font><fontcolor=redsize=>"errmsg"<font><hr>")outprintln("<inputtype=buttonvalue=回上一页onclick=historyback()>")}}}catch(Exceptione){outprint("系统的错误")}>、用户和管理员删除帖子功能的实现Deletejsp页面用于删除帖子在此页面获得两个参数id和replyid。其中id为帖子的标识符replyid为是否是回帖当replyid>时表示要删除的是回复贴否则当replyid<,即等于时表示要删除主帖:<<pagecontentType="texthtmlcharset=GB"><pageimport="javasql*"><html><bodybackground=photojpg><StatementsqlConnectionconResultSetrstry{ClassforName("commysqljdbcDriver")}catch(Exceptione){outprint("驱动失败")}广东海洋大学本科生课程实习报告try{Stringdatabase="test"Stringuri="jdbc:mysql:localhost"databasecon=DriverManagergetConnection(uri,"root","root")intid=IntegerparseInt(requestgetParameter("id"))获得主贴idintreplyid=IntegerparseInt(requestgetParameter("replyid"))删除主贴还是回复贴if(replyid>){if(sessiongetAttribute("username")equals("admin")){Stringupdatecondition="updatereplysetcontent='此回复已被删除~'""wherereply="id"andid="replyid删除回复贴sql=concreateStatement()sqlexecuteUpdate(updatecondition)outprint("帖子已经删除")responsesendRedirect("detailjspid="id)}elseoutprint("<h>""你是非管理员所以没有权利删除帖子")><ahref=detailjspid=<=id>>返回<a><}else{否则当replyid=时表示if(sessiongetValue("username")equals("admin")){Stringcondition="deletefromdiscusswhereid="idsql=concreateStatement()sqlexecuteUpdate(condition)Stringcondition="deletefromreplywherereply="idsql=concreateStatement()sqlexecuteUpdate(condition)Stringcondition="altertablediscussdropid"sql=concreateStatement()sqlexecuteUpdate(condition)Stringcondition="altertablediscussaddidintnotautoincrementprimarykey"sql=concreateStatement()sqlexecuteUpdate(condition)responsesendRedirect("dissessjsp")}elseoutprint("你还不是管理员所以你没有权删除帖子")outprint("<ahref=dissessjsp>返回<a>")}}catch(Exceptione){outprint("删除主贴失败")}><body><html>课程实习心得经过一个多星期的实训在这期间感受很多所以有必要作一次心得总结。在次实习开发过程中遇到了非常的问题可经过了老师同学以及网络上的查看相关资料这些帮助下终于完成本次课程实习。懂得了如何开发一个完整的javaweb系统所需要的技术在遇到困难时不怕辛苦坚持下去才可以取得成功。而且课程实习是对本课程的一次非常好的总结对所学的知识综合运用。只有努力不断辛苦不放弃坚定的把一个个技术难题解决啦才可以真正的掌握本次课程所教的而技术。第一应该有信心第二坚持不懈第三学会如何寻求帮助。学会如何在面对一个技术难题时如何去寻找方法帮它解决这才是根本锻炼我们大学生的这种能力。为以后的课程实习还有将来走向社会打上厚实的基础。广东海洋大学本科生课程实习报告参考文献:《jsp程序设计》清华大学出版社张跃平、耿祥义主编《java面向对象程序设计》清华大学出版社张跃平、耿祥义主编《数据库系统概论》高等教育出版社王珊、萨师煊主编

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/44

基于jsp的简单论坛制作&#40;报告加源代码&#41;

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利