基于JSP的留言板课程设计.docx
《基于JSP的留言板课程设计.docx》由会员分享,可在线阅读,更多相关《基于JSP的留言板课程设计.docx(13页珍藏版)》请在冰豆网上搜索。
基于JSP的留言板课程设计
JSP课程设计报告书
—基于jsp留言板
Forpersonaluseonlyinstudyandresearch;notforcommercialuse
专业:
计算机信息管理
班级:
096111
Forpersonaluseonlyinstudyandresearch;notforcommercialuse
姓名:
钟春连
学号:
09611108
指导老师:
姜俊坡
东华理工大学
二零一一年六月二十日
一需求分析
随着互联网的迅猛的发展,网站给我们带来不少的便利,于此同时,论坛基本是每个网站必有的功能,为用户之间的交流提供的很好的平台。
我通过仔细的分析和规划,本论坛有如下功能:
用户注册,登录,用户信息修改,签写留言,留言查看,回复留言和管理员的普通维护功能等。
这些功能的具体描述如下:
1)用户注册模块:
用户可已成为本论坛的会员,通过表单把用户的相关信息提交给数据库。
2)登录模块:
基本是每个系统必备的模块,本论坛的登录的模块分为两个小模块:
普通用户登录,另一个是管理员登录。
3)签写留言模块:
这是论坛的主要功能之一,用户把自己感兴趣的话题发表到论坛上,与网上的会员进行探讨。
4)回复留言模块:
这也是论坛的主要功能之一,用户对别的用户发表的留言进行回复。
5)普通的维护模块:
这是给管理员的功能,该功能对那些危害社会风气的留言删除。
6)用户信息修改模块:
用户能对自己的信息进行修改。
二分析和设计(页面和数据库)
设计网站论坛时,首先应该区别是普通用户登录还是管理员登录。
如果是普通用户登录,那么该用户只有查看和回复留言的权限。
如果是管理员登录,则除了具有查看和回复权限外,还用具有管理论坛的权限。
在用户发表留言后,将显示该用户的用户名、性别、留言内容和留言时间等内容。
如果在某个留言有回复内容,则显示出是谁恢复了该篇留言和回复的内容。
另外还能在页面中显示当前的系统的时间和访问权限。
数据库设计
通过以上的分析:
数据库应有四个表,tb_user、td_topic、tb_reply、tb_counter。
由于是个小型的论坛,选择AEESS数据库
程序的主要实现根据等级设置用户权限,是用脚本言语(javascript)来显示系统的当前时间,并通过
<%@pagecontentType="text/html;charset=gb2312"language="java"import="java.sql.*"errorPage=""%>
<%@includefile="connDB.jsp"%>
includepage="counter.jsp"/>
<%
ResultSetrs_user=stmt.executeQuery("select*fromtb_userwhereusername='"+session.getAttribute("username")+"'andstatus='版主'");
booleaneof=rs_user.next();
%>
functionclockon(){
vardate=newDate();
varYY=date.getYear();
varMM=date.getMonth()+1;
varDD=date.getDate();
varKK=date.getDay();
varHH=date.getHours();
varmm=date.getMinutes();
varSS=date.getSeconds();
if(MM<10)MM="0"+MM;
if(DD<10)DD="0"+DD;
if(HH<10)HH="0"+HH;
if(mm<10)mm="0"+mm;
if(SS<10)SS="0"+SS;
switch(KK){
case1:
KK="星期一";
break;
case2:
KK="星期二";
break;
case3:
KK="星期三";
break;
case4:
KK="星期四";
break;
case5:
KK="星期五";
break;
case6:
KK="星期六";
break;
case0:
KK="星期日";
break;
}
varstr_date="系统公告:
"+YY+"年"+MM+"月"+DD+"日"+KK+""+HH+":
"+mm+":
"+SS;
if(document.all){
div_date.innerHTML=str_date;
}
vartimer=setTimeout("clockon()",200);
}
|
|
|
|
<%if(session.getAttribute("username")!
=null){%>
签写留言
修改资料
<%}else{%>
用户注册
<%}%>
<%if(session.getAttribute("username")!
=null){%>
注销用户
<%}else{%>
用户登录
<%}%>
查看留言
刷新页面
<%if(eof){%>
注销版主登录
<%}else{
%>版主登录<%}%>
<%if(session.getAttribute("username")!
=null){
out.println("["+session.getAttribute("username")+"]您好!
您不想说点什么吗?
如果想请点击“签写留言”!
");
}else{
out.println("您好!
如果您想说点什么,那么请先注册或登录!
");
}%>
您好!
欢迎访问“在水一方”留言簿!
!
!
已经有[<%=application.getAttribute("count")%>]人访问过本网站!
<%
stmt.close();
con.close();
%>
2)用户登陆(Login_User_deal.jsp)
在top.jsp中设计的是当用户单击登录连接的时候,弹出一个小的对话框来提供用户的登录功能,所以在在个页面中需要刷新用户登录后的页面,用到了脚本语言(javascript)中的一段代码:
,下面就不再写了。
主要的代码如下:
<%@pagecontentType="text/html;charset=gb2312"language="java"import="java.sql.*"errorPage=""%>
includepage="counter.jsp"/>
<%
request.setCharacterEncoding("GB2312");
Stringusername=request.getParameter("username");
StringPWD=request.getParameter("PWD");
if(username!
=""){%>
<%
ResultSetrs=stmt.executeQuery("select*fromtb_userwhereUserName='"+username+"'andstatus='用户'");
if(rs.next()){
StringrsPWD=