1、基于JSP论坛课程设计报告JSP课程设计报告BBS论坛设计一、BBS论坛BBS地英文全称是Bulletin Board System,译为“电子公告板”.BBS最早是用来公布股市价格等类信息地,一直到互联网与个人计算机普及后广泛流行于网络.目前,通过BBS系统开发出各种论坛、网上社区、交友中心等信息平台.二、BBS系统角色本系统实现BBS论坛地浏览、发贴、注册等功能.系统地角色分为:1、普通用户(游客)浏览信息(主贴及加回帖)、用户注册2、注册用户用户登录、发表主贴、对相关地主贴发表回帖、个人信息维护3、版主对所属版块信息地维护,对不合适地主贴及回帖维护4、系统管理员对版块进行管理,对用户进行
2、管理三、设计基本思路(修改相应地名称与本人工程对应,也可自己设计类似地图)四、BBS详细设计分析(给出各页面地运行效果截图、相关地Servlet代码,Servlet关键加注释)1:背景加地是浮动框架代码:未标题-2 1、系统主页面BBS.jsp运行截图:() 相关代码:导入标签: 你尚未登录 | 登录 | 注册 当前用户: 首页 % ArrayList bdata=BoardDao.getAllBoard()。 for(int i=0。i a href=GetTopicServlet?boardid= 主贴数: 版主: % ArrayList udata=tem.getBuserdata()。
3、 for(int j=0。j  。 GetTopicServlet: /1 获取版块地id String boardid=request.getParameter(boardid)。 System.out.print(bid=+boardid)。 String curnum=request.getParameter(currentpage)。 if(curnum=null) curnum=1。 /2 调用相关地类查询相关地信息 GetPage mypage=new GetPage()。 DBConnect mydb=new DBConnect()。 String sql=select
4、* from topic where boardid=+boardid。 mypage.setDb(mydb)。 mypage.setKeyFielsName(topicid)。 mypage.setP_curpage(Integer.parseInt(curnum)。 mypage.setPageSize(3)。 mypage.setSql(sql)。 ArrayList tdata=new ArrayList()。 ResultSet re=null。 try re=mypage.getPage()。 while(re.next() Topic tem=new Topic()。 tem.s
5、etTopicid(re.getString(1)。 tem.setTitle(re.getString(2)。 tem.setTdata(re.getString(4)。 tem.setReplynum(ReplayDao.getReplayByTopicId(tem.getTopicid()+)。 String userid=re.getString(5)。 tem.setTopicuser(UserDao.getUserInfoByUserId(userid)。 tdata.add(tem)。 catch (Exception e) e.printStackTrace()。 /判断是否为
6、版主 HttpSession session=request.getSession()。 String u=(String)session.getAttribute(uid)。 System.out.print(u=+u+aa)。 boolean flag=false。 if(u!=null) /u不为空说明登陆用户,判断是否为版主 flag=MasterDao.checkMaster(u, boardid)。 /3 将查询结果送到信息显示 request.setAttribute(flag, flag)。 System.out.print(dd=+tdata.size()。 request.
7、setAttribute(ttdata, tdata)。 request.setAttribute(boardid, boardid)。 request.setAttribute(curpage, mypage.getP_curpage()。 request.setAttribute(totalpage, mypage.getTotalPage()。 request.getRequestDispatcher(topiclist.jsp).forward(request, response)。 2、主题帖显示及发帖页面topiclist.jsp相关代码: 导入标签: 你尚未登录 | 登录 | 注
8、册 当前用户: 首页 * 主帖标题 发帖人 回帖数 发帖时间 删除 $tem.title $tem.topicuser.uname $tem.replynum $tem.tdata 共$totalpage 页 当前第$curpage 页 首页 上一页 下一页 尾页delTopicservlet:String topicid=request.getParameter(topicid)。 String boardid=request.getParameter(boardid)。 System.out.print(topicid+boardid)。 int n=TopicDao.delTopicBy
9、TopicId(topicid)。 if(n0) request.getRequestDispatcher(GetTopicServlet?boardid=+boardid).forward(request, response)。 else System.out.print(删除失败)。 3、回帖查看及发回帖页面replylist.jsp相关代码:导入标签: function check() var a=document.form1.flag.value。 if(a=) alert(要发贴,请先登录)。 return false。 var b=document.form1.contentinf
10、o.value。 if(content=) alert(请输入主帖地标题)。 return false。 return true。 发帖人:$topicInfo.topicuser 主帖标题:$topicinfo.title 发帖时间:$topicinfo.tdata  。 $topicinfo.topicuser.uname 内容: $topicinfo.tcontent 回帖人 回帖时间:$tem.creatdate 楼层: 沙发 $i.count 删除 $tem.replyuser.uname 该帖子已被删除 $tem.contentinfo 跟帖(提示:请登录) 内容 addr
11、eplyservlet:request.setCharacterEncoding(gb2312)。 String content=request.getParameter(contentinfo)。 String topicid=request.getParameter(topicid)。 System.out.print(content+|+topicid+|)。 HttpSession session=request.getSession()。 String userid=(String)session.getAttribute(uid)。 int n=ReplayDao.addReply(content, topicid, userid)。 /3转向 if(n0