BBS论坛系统毕业设计说明书
BBS论坛使用说明书

BBS论坛使用说明书配置源程序附加数据库MySQL(1)将TM\09\Database文件夹中sql.sql放入mysql目录下的bin 文件中,选择“开始”/“所有程序”/“MySQL”/“MySQL Command Line Client”命令,(2)将打开MySQL数据库的Command Line Client窗口,在该窗口中,输入密码并按下〈Enter〉键时,进入数据库在命令行输入source sql.sql。
发布与运行(1)将光盘\TM\09\bbs文件夹拷贝到MyEclipse的工作空间中。
(2)启动MyEclipse。
(3)选择“文件”/“导入”菜单项,展开“常规”节点,选择“现有项目到工作空间中”子节点,如图1.1所示。
图1.1 “导入”窗口(4)单击【下一步】按钮,单击【浏览】按钮,选择程序所在目录,然后勾选“将项目复制到工作空间中”复选框,如图1.2所示。
图1.2 “导入”窗口(5)单击【完成】按钮。
(6)添加Struts环境参见本章文档9.3.5节中的第1小节。
(7)参照第07章文档中的7.3.5节中的第5小节,为MyEclipse配置Tomcat服务器。
(8)添加MySQL驱动包,请参见本章文档9.3.5节中的第3小节。
(9)单击工具栏的“”按钮,将弹出如图1.3所示的对话框。
这个对话框是项目发布对话框,在对话框的“Project”下拉选择框中选择本系统的项目名称“bbs”,单击Add按钮进行项目发布的设置。
图1.3 MyEclipse项目发布对话框(10)在弹出如图1.4所示的对话框中,选择“Server”下拉选择框中的“Tomcat 5”服务器,单击“完成”按钮程序将自动发布到服务器中。
如果需要重新发布项目,可以单击Redeploy按钮。
图1.4 New Deployment(11)单击工具栏中按钮右侧的小箭头,在弹出的菜单中选择“Tomcat 5”/“Start”菜单项,如图1.5所示。
BBS论坛系统说明书

摘要:本文主要介绍BBS论坛系统的设计思路和制作过程,从BBS论坛系统的重要性开始,介绍BBS论坛系统采用的技术和SQL Server数据库,进而阐述整个BBS论坛系统的制作过程和具体的设计思路。
该BBS论坛系统较全面地利用技术实现论坛系统的基本功能。
BBS论坛系统最基本的功能首先是发表主题,其次是其他人员根据主题发表自己的看法。
此外,为了记录主题的发表者和主题的加复者信息民,系统还需要提供用户注册和登录的功能。
只有注册的用户登录后才能够发表和回复主题,游客(浏览者)只能浏览主题信息。
根据用户的需求及以上的分析, BBS论坛需要具备以下功能:显示各论坛类别及版面、浏览自己发表的帖子、修改帖子、删除帖子、浏览发表新帖的内容、用户注册、用户登录、发表帖子、回复帖子等等。
关键词:BBS论坛系统,,SQL Server数据库,系统开发目录1.概况 (3)1.1开发环境 (3)1.2国内现状 (3)2.BBS论坛系统简介 (4)2.1 设计的目的和意义 (4)2.2设计的思路与总体方案 (5)2.2.2系统性能要求 (5)2.3系统功能模块分析 (6)2.3.1功能界面框图 (6)2.3.2系统功能描述 (6)3.系统数据库设计 (7)3.1数据库设计 (7)3.2数据库设计实现 (8)3.3系统业务流程及描述 (9)4.程序功能的实现 (12)4.1 用户注册和用户登录设计与实现 (12)总结 (16)参考文献 (17)正文1.概况论坛也称为BBS,是bulletin Board System的简称,意即电子公告板,是一种在Internet上常见的用于信息服务的Web系统,它主要给浏览者提供相互沟通的平台,以此来吸引用户,服务用户。
在计算机网络飞速发展的今天,BBS已经成为人们网上交流的重要平台,在BBS里,人们之间的交流打破了空间、时间的限制。
BBS大大加深了广大用户之间的交流。
因此对BBS论坛的研究是十分必要的。
BBS论坛总设计文档

BBS论坛管理系统设计文档班级:组别:成员:目录BBS论坛管理系统 (1)需求分析说明书 (4)1引言 (4)1.1系统概述 (4)1.2项目背景 (5)2系统功能需求 (5)2.1总体功能概述 (5)2.2用户登录 (6)2.3用户注册 (6)2.4发表主题 (6)2.5发表回复 (7)2.6注销登录 (7)2.7管理员登录 (7)2.8用户管理 (7)2.9论坛管理 (7)2.10新增论坛 (7)3数据流图 (8)3.1顶层数据流图 (8)3.2 0层数据流图 (8)3.3 1层数据流图 (9)3.3.1登录系统 (9)3.3.2注册系统 (10)3.3.3发表主题 (10)3.3.4回复主题 (10)3.3.5论坛管理 (11)4数据字典 (11)4.1数据流 (11)4.2数据项 (13)数据库设计 (17)1.表结构设计 (17)1.1用户信息表(tb_user) (17)1.2主题信息表(message) (17)1.3回复信息表(msgdetail) (18)2. SQL语句设计(建表语句) (18)2.1用户信息表(tb_user) (18)2.2主题信息表(message) (19)2.3回复信息表(msgdetail) (20)详细设计 (21)1.内容概要 (21)2.功能总体说明 (21)2.1 主要功能组成 (22)3界面设计及关键代码 (23)3.1 登录页面 (23)3.2用户注册页面 (25)3.3发表主题页面 (28)3.4留言信息列表: (28)3.5留言信息分类:(新增的功能,上次老师答辩说要修改的) (29)3.6发表回复 (32)4.后台管理 (35)4.1用户信息管理 (35)4.2论坛信息管理 (36)需求分析说明书1引言1.1系统概述BBS是Bulletin Board System(电子公告栏)的缩写,网络上通常称之为论坛。
它通过以文字为主的界面,为广大网友提供一个互相交流的空间。
BBS软件概要设计说明书

BBS论坛系统概要设计说明书一.软件概要设计1.数据库的建立下载并装MySql5.5.24数据库,设置它的默认编码为GB2312,设置的账户和密码分别为root和root,把编写好的sql语句导入到数据库中并保存为BBS.sql文档。
2.下载web静态页面并修改成动态jsp页面下载javaworld论坛的静态页面,保存到本地,用Macromedia Dreamweaver 8打开,删除不必要的页面代码。
最后包含的jsp文件有帖子的树形展现:article.jsp帖子的详细信息:articleDetial.jsp帖子的平板展现:articleFlat.jsp帖子的删除:delete.jsp管理员的登陆:login.jsp帖子的修改:modify.jsp发表新的帖子:post.jsp回复帖子:reply.jsp搜索帖子:search.jsp会话检测:sessionCheck.jsp所使用的图标文件都在images文件夹中,控件文件在FCKeditor文件夹中。
3.DB,USER和Article的封装(1)把连接数据库常用的代码都封装在DB.java中。
例如创建一个数据库连接Connection conn=DriverManager.getConnection(“jdbc:mysql://localhost:3306/bbs”,”root”,”root”);创建Statement 、ResultSet 和一些常用的方法,在数据库使用完后一定要关闭资源调用close 方法。
(2)在用户模块中把用户的基本属性都封装User.java中。
例如用户的username,password,add,email,qq等等。
(3)在帖子的基本属性也封装在Article.java中,如定义:private int id;private int pid;private int rootid;private String title;private String cont;private Date pdate;p rivate boolean isleaf;每个成员变量都Getts和Setts方法等等!以上的bean文件都是为了方便在jsp文件中调用而开发的!4.发帖的树形展现帖子的树形展现,需要用到递归函数,自身调用自身,在article.jsp文件中实现,首先检查这个帖子的pid,为0的是父贴,通知检查它是不是叶子节点,当isleaf为0时,循环结束,否者继续执行直到帖子全部输出!树形代码实现如下:private void tree(List<Article> articles ,Connection conn,int id,int grade){String sql="select * from article where pid =" + id;Statement stmt=DB.getStmt(conn);ResultSet rs=DB.getRs(stmt,sql);try{while(rs.next()){Article a=new Article();a.initFromRs(rs);a.setGrade(grade);articles.add(a);if(!a.isIsleaf()){tree(articles,conn,a.getId(),grade+1);}}}catch(SQLException e){e.printStackTrace();}finally{DB.close(rs);DB.close(stmt);}}5.帖子的详细情况该功能比较简单,但是articleDetial.jsp要接受帖子的id参数,一定要注意接受到得参数id是String类型,需要转换成Int类型,实现:Int id = Integer.parseInt(request.getParameter(“id”)); 把接受到的id传给sql的select语句,就可把帖子a取出来放在Artile列表中。
BBS论坛设计文档

目录第1章绪论................................................................................................................................................ - 2 - 第2章系统分析............................................................................................................................................ - 3 -2.1 需求分析........................................................................................................................................... - 3 -2。
2 可行性分析.................................................................................................................................... - 3 - 第3章系统总体设计.................................................................................................................................... - 5 -3.1 系统目标........................................................................................................................................... - 5 -3。
BBS论坛系统 毕业论文 完整 毕业设计 定稿

毕业设计说明书摘要:当今社会是一个信息飞速发达的社会,人们通过互联网络可以进行信息的交流。
论坛就是一种在Internet网上开放的信息服务系统,通过论坛用户可以方便的实现信息的交换和文件的共享。
本文研究并实现了基于B/S模式的BBS论坛系统,该系统采用目前流行的JSP+JavaBean+后台数据库三层架构。
本文从BBS系统的开发背景、相关技术、需求分析、详细设计、系统测试与维护等方面详细阐述了整个系统的开发过程。
关键词: BBS ,JSP,MYSQL,JavaBeansAbstract:Nowadays is a flourishing society that information travels fast, Through the Internet people can exchange information with each other. The forum is a service system that is open on Internet, through which, the forum customer can conveniently realizes the commutation of the information and the share of the documents. This text research and realizes online forum system (BBS) which based on the B/S model, The system used the popular Three-tier Model (JSP+JavaBean+Database).The text detailed description of the whole system development, which described from the background of system, related technologies, demand analysis, detailed design, system testing and maintenance.Keywords:BBS,JSP,MYSQL,JavaBeans目录1前言 (1)1.1 选题背景和意义 (1)1.2 系统要解决的问题 (1)2 相关技术及运行环境简介 (1)2.1 JSP技术简介 (1)2.2 JAVABEAN技术简介 (2)2.3 JDBC技术简介 (2)2.4 TOMCAT技术简介 (3)2.5 运行环境 (3)3 需求分析 (3)3.1 用户功能需求 (4)3.2 数据需求 (5)4 系统整体设计 (5)4.1 系统模块结构设计 (5)4.2 数据库设计 (9)4.2.1 E-R图分析 (9)4.2.1.1 ER模型 (9)4.2.1.2 联系定义 (12)4.2.2 数据表设计 (13)4.3系统流程图 (15)5 详细设计 (16)5.1 用户登录模块 (16)5.2 用户注册模块设计 (18)5.3 帖子主题模块设计 (21)5.4 浏览帖子模块设计 (24)5.5 发表帖子模块设计 (26)5.6 其他模块设计 (28)5.6.1查询用户模块 (28)5.6.2帖子管理模块 (30)6 系统运行和测试 (32)6.1 测试运行情况 (32)6.2 程序有待改进方面 (33)结论 (34)参考文献 (35)致谢 (36)1前言1.1 选题背景和意义在二十一世纪,地球因为互联网的存在,早已变成一个村落。
BBS论坛说明

软件学院课程设计小型论坛B B S李晨光 2013214409软件工程13-2班庄严2015年月日设计题目 学号 专业班级 学生姓名指导教师目录一、系统开发概述.......................................................................................................错误!未定义书签。
二、需求分析...............................................................................................................错误!未定义书签。
2.1 用户需求说明...............................................................................................错误!未定义书签。
2.2 系统需求说明...............................................................................................错误!未定义书签。
三、系统分析与设计...................................................................................................错误!未定义书签。
四、流程设计...............................................................................................................错误!未定义书签。
6.1 功能模块.......................................................................................................错误!未定义书签。
BBS论坛界面及代码(毕业设计)

<%'显示发帖者签名%>
</td>
</tr> <%
Rs1.Close Set Rs1 = nothing
'关闭发帖者信息记录集 '释放发帖者信息记录集资源
%>
<tr> <%'如果管理员登录后访问该页面,则显示修改和删除并设置链接%>
<% If Session("flag") > 4 Then %>
<td height="12" colspan="2" bgcolor="#EFEFEF">
Rs1.Open Sql1,conn,3,3
'把取出的记录存放在记录集对象中
%>
<tr align="center">
<td height="120" colspan="2"> <img src="images/<%=Rs1("logo")%>">
<%'显示发帖者头像%>
</td>
</tr>
<tr> <td height="25" align="right">发帖者:</td>
src="Images/reply.gif"
width="72" height="21" border="0" alt="回复此帖"></a>
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摘要:本论坛系统是基于是Struts2+MYSQL+JSP实现的BBS论坛系统,它具有使用方便、操作灵活、运行稳定、安全可靠等特点.本设计目的是提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的网上社区.实现了用户注册,登录,用户之间多人互动聊天,留言,上传照片,更改个人信息,显示全部用户,上线用户,查找好友等功能.关键词:BBS论坛,Struts2,MySQL,JSPAbstract:This forum system is based on Struts2+MySQL+jsp implementationed BBS forum system , it has the characteristics of convenient use, flexible operation, stable operation, safety and reliability etc..This forum system aims to provide a communication platform for the user, and also aims to provide the exchange of experience for the vast number of users of the online community.It realized the regist, login, multiplayer chat, message, upload photos, change of personal information, display all the users, on-line users, find friends and other functions.Keywords:BBSForum, Struts2,MYSQL,JSP目录1 引言 (4)2 系统分析 (4)2.1 系统功能分析 (4)2.1.1 用户功能分析 (5)2.1.2 管理员功能分析 (5)2.2 模块需求分析 (5)2.3 可行性分析 (6)2.3.1 技术可行性 (6)2.3.2 社会可行性 (6)3 系统总体设计 (6)3.1 系统目标 (6)3.2 系统功能划分 (7)3.2.1 前台功能结构 (7)3.2.2 后台功能结构 (7)3.3 系统开发环境 (7)3.3.1 开发环境 (7)3.3.2 系统平台体系结构 (8)3.3.3 JavaScript语言简介及特点 (8)3.3.4 JSP概述 (9)3.3.5 MySQL技术 (9)3.3.6 JDBC技术 (9)4 数据库设计 (10)4.1 数据库概念设计 (10)4.2 数据库逻辑设计 (13)5 系统详细设计与实现 (14)5.1 前台设计 (14)5.2 后台设计 (25)结论 (26)参考文献 (27)致谢 (28)1 引言随着网络的兴起,人们的交流越来越方便.于是就出现了论坛,使得人们足不出户就可以互相聊天,也可以通过网络了解国家大事,还可以针对某一事件发表个人看法,大家可以畅所欲言.BBS论坛系统,就是一种在线交流的平台.在论坛上,人们可以对某一领域提出自己遇到的问题,即发表某一主题,随后,论坛上的其他人会根据自己的学识、经验发表意见或提出问题的方法.BBS论坛主要是一个供用户交流的平台,为广大用户提供交流经验、探讨问题的网上社区.因此,BBS论坛系统最基本的功能首先是发表主题,其次是其他人员根据主题发表自己的看法.此外,为了记录主题的发表者和主题的回复者信息,系统还提供用户注册和登录的功能.只有注册的用户登录后才能够发表和回复主题,没有注册的用户只能浏览网站信息.此论坛是基于B/S模式的一种JSP网页论坛的设计与实现,力求做到页面美观,简单易于操作.论文从几个方面对系统的开发做出了阐述.在系统分析一章,从系统的功能分析,模块需求描述,可行性分析三方面来研究.系统总体设计从系统目标,系统功能划分,系统开发环境三方面来研究.数据库设计数据库的概念设计,数据库的逻辑设计两方面来研究.系统的详细设计与实现从前台设计与后台设计两方面来研究的.2 系统分析2.1 系统功能分析系统中主要包括用户和管理员,如图2.1所示.图2.1 系统功能模块图2.1.1 用户功能分析(1) 用户可以注册登录.(2) 注册登录后可以浏览帖子,修改个人信息.(3) 用户可以发新帖子.(4) 用户可以回复帖子.2.1.2 管理员功能分析(1) 管理所有的用户信息,包括增删改查.(2) 管理所有的帖子,包括增删改查和移动.2.2 模块需求描述(1) 注册登录功能用户进入首页,如果有账号可以直接登录,如果没有账号需要进行注册后才能登录. 为安全防护,验证登录者的身份,规定用户的昵称不能为空,必须不得少于5个字符,密码也不得少于5个字符.还必须再次输入密码确认无误.电子邮箱必须填正确的Email.验证码必须跟所给的验证码一致,区分大小写,不然会有错误提示.所有的注册完成之后才能注册成功,然后给一个登录账号.有了账号之后输入密码才可以登录.这些都是通过JavaScript来验证的.(2) 用户浏览或修改个人信息功能用户登录之后,可以在首页查看自己的相册,查看个人信息,还可以补充个人信息以及修改个人信息.修改个人头像.可以发送个人消息,查看全部用户以及在线用户等功能,搜索好友等.(3) 用户浏览帖子功能用户可以在帖子列表区浏览帖子.(4) 用户发新帖子功能用户可以在帖子列表区发表主题,也可以就别人的帖子发表自己的观点.发表成功后新帖子就会出现在帖子表的最上面.(5) 用户回复帖子功能用户查看帖子信息,然后可以搜索好友里查找该好友然后给此发帖子的人留言.(6) 管理员管理用户功能管理员登录之后可以点击管理用户,看到一个显示所有用户信息的列表,管理员可以对用户信息进行删除.(7) 管理员管理帖子功能管理员登录之后还可以点击管理帖子,看到一个显示所有帖子信息的列表,管理员可以对帖子信息进行更新和删除或者移到其他的版块中.2.3 可行性分析2.3.1 技术可行性技术可行性分析主要是分析技术条件是否能顺利完成开发工作,能否满足开发者的需求等.该BBS论坛管理系统采用了最近流行的JSP语言和当前兴起的Browser/Server(浏览器/服务器)模式进行开发.数据库服务器选用mysql5.0数据库,它能够批量处理数据,同时保持数据的完整性并提供许多高级管理功能.从而使数据库编程变得灵活,安全和易用.因此系统的软件开发平台已成熟可行,能满足此系统的需要.2.3.2 社会可行性随着互联网技术的飞速发展,BBS论坛已经成为人们人们彼此沟通、交流信息的主要方式.在论坛上,人们可以在各个领域提出自己的问题和想法,然后,论坛上的其他人会根据自己的看法、经验发表意见或提出解决问题的方法.BBS论坛不仅缩短了人们之间的距离,也成为人们在线交流的重要工具.所以在今天的人类生活中BBS论坛是非常重要的.3 系统总体设计3.1 系统目标基于BBS论坛在现实生活的实际应用,本系统的系统目标是提供一个以现实环境为基础的网上交流平台.通过它人们不必拘泥于空间和时间上的限制,方便交流,畅所欲言同时也能够更加便利的看到别人的想法,观点,最大化的丰富人们的视野和生活.让人随时随地的享受网络的乐趣.3.2 系统功能划分3.2.1 前台功能结构图3.2.1 BBS论坛前台功能模块图3.2.2 后台功能结构图3.2.2 BBS论坛后台功能模块图3.3 系统开发环境3.3.1 开发环境在开发此论坛的时候,需要具备下面的软件和开发环境服务器端:(1)操作系统:Windows7.(2)Web服务器:Tomcat 6.0.(3)Java开发包:JDK 1.6.(4)数据库:Mysql 5.0.(5)集成开发工具:Myeclipse 8.5.客户端:浏览器:Firefox8.0.3.3.2 系统开发体系结构的选择[5]在应用开发领域中,目前系统平台的体系结构主要有两种,即C/S(Client/Server)结构和B/S(Brower/Server)结构.B/S结构,即浏览器和服务器结构.它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全.特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效.B/S结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构.在这种结构下,用户界面完全通过web浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术.因此本系统采用了B/S结构.3.3.3 JavaScript语言简介及特点JavaScript语言是Netscape公司开发的一种脚本性语言,Scripting language或者称其为描述性语言.作为一种编程语言,在静态网页Html的基础上,使用JavaScript可以开发交互式Web 网页,能够使网页和用户之间实现一种实时性的、动态的、交互性的关系,使得网页包含更多活跃的元素和更加精彩内容.JavaScript是专门为制作Web网页而量身定做的一种简单的编程语言.JavaScript是在客户机上执行的,其特点和功能主要是短小精悍,能够大大提高网页的浏览速度和交互能力.其特有的工具色彩让其在动态网页的开发中找到了用武之地. 3.3.4 JSP概述[3,4]JSP是由Sun公司在Java语言的基础上开发出来的一种动态网页制作技术,其将标记<% %>插入到页面中,从而把网页中的静态部分和动态部分分离.JSP技术的强势在于1一次编写,到处运行.在更换系统时,代码不需要做任何修改.2强大的可伸缩性.通过小小的jar文件运行servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,一台服务器到无数台服务器,JSP表现了强大的可伸缩性.3系统的多平台支持.基本上可以在所有平台上的任意环境下开发.在任意环境中进行系统部署,在任意环境中扩展.4多样化和功能强大的开发工具支持,常用的编辑工具有Dreamweaver和MyEclipse 等.3.3.5 MYSQLMySQL是瑞典MySQL AB公司开发的一个小型关系型数据库管理系统.MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内.这样就增加了速度并提高了灵活性.MySQL可以称得上是目前运行速度最快的SQL语言数据库,除了具有许多其他数据库所不具备的功能外,MySQL体积小、速度快、总体拥有成本低,尤其是开放源码这种完全免费的产品,用户可以直接从网上下载,用于个人和商业用途,而不必支付任何费用.[1]本系统使用java编写,并使用了多种编译器进行测试,支持多线程,充分利用CPU资源,优化的SQL查询算法,有效地提高查询速度,既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中.支持多语言,提供用于管理、检查、优化数据库操作的管理工具,可以处理拥有上千万条记录的大型数据库,支持多种存储引擎.所以本BBS论坛系统也选择Mysql数据库.[2]3.3.6 JDBC技术数据库管理是每个应用系统开发过程中必须使用问题.目前主流的数据库有Oracle、SqlServer、MySql等.不管使用何种技术,都离不开JDBC技术的支持.JDBC的全称是Java DataBases Connectivity standard,即Java数据库连接,其定义了用来访问数据库源的标准Java类库,是一种数据库通用接口采用的主流技术.通过它使用一种标准方法,就能够方便的访问数据库资源.JDBC是一种规范,其目标是使应用程序开发人员通过它连接任何提供JDBC驱动程序的数据库系统,这样就使得程序员无需对某种数据库有过多的了解,大大加快了开发过程.所以JDBC为Java应用程序与各种不同数据库之间进行对话提供了一个标准的方法,这也是Java语言“一次编写,到处运行”的优势.JDBC连接数据库代码:Connection conn = null;try {Class.forName(driver);conn=Drivermanager.getConnection(url+"?useUnicode=true&characterEncoding=utf8", username,password);} catch (Exception e) {e.printStackTrace();}return conn;4 数据库设计4.1 数据库概念设计E-R图是实体联系图,E-R模型是对现实世界的一种抽象.其组成部分主要包括实体、联系和属性.通过这三种成分,我们可以很好的抽象出现实世界中的个体,并通过彼此之间的联系来抽象整个世界.E-R模型是设计数据库时经常使用到的方法. 经过分析,本系统创建了五张数据库表.即回复帖表record、根帖信息表msg,论坛类别信息表picture,用户表user和管理员表admin.下面划分出本系统所使用的数据库实体,它们分别为用户user和帖子record 以及管理员admin.用户信息表如图4.2.1所示:主要有账号,用户姓名,生日,性别,密码,地址,邮箱,头像,电话,血型,星座,学校,爱好.图4.2.1 用户信息实体图回复帖表如图4.2.2所示:主要有编号,账号,回复者,回复者头像,回复内容,回复帖子时间.论坛类别信息表如图4.2.3所示:主要有编号,账号,类别名称.图4.2.3 论坛类别信息实体图根帖信息表如图4.2.4主要包括:编号,登录者的头像,登录者姓名,登录者账号,发布者账号,内容,回复帖子,发布时间.图4.2.4 根帖信息实体图管理员信息表如图4.2.5所示,主要包括:账号,密码,内容.图4.2.5管理员信息实体图4.2 数据库逻辑设计用户表user:Filed Type Null Key Defaultaccount Varchar(10) NO PRI NULLusername Varchar(10) YES NULLbirthday date YES NULLgendar varchar(3) YES NULLpassword varchar(10) YES NULLaddress varchar(30) YES NULLemail varchar(30) YES NULLhead varchar(10) YES NULLmsg varchar(100) YES NULLphone varchar(11) YES NULLblood varchar(2) YES NULLstar varchar(9) YES NULLschool varchar(20) YES NULLlikes varchar(50) YES NULL 回复帖表record:Field Type Null Key Defaultid bigint NO PRI NULL account varchar(10) YES NULLusername varchar(20) YES NULLhead varchar(10) YES NULLcontent varchar(500) YES NULLtime timestamp YES NULL论坛类别信息表picture:Field Type Null Key Defaultid bigint NO PRI NULL picName varchar(100) YES NULLaccount varchar(10) YES NULL根帖信息表msg:Field Type Null Key Defaultid bigint NO PRI NULL loginuser_head varchar(10) YES NULL loginuser_username varchar(20) YES NULLloginuser_account varchar(10) YES NULL user_account varchar(10) YES NULL content varchar(300) YES NULLanswer varchar(300) YES NULLtime datetime YES NULL管理员表admin:Field Type Null Key Defaultaccount varchar(10) NO PRI NULLpassword varchar(10) YES NULLtext varchar(200) YES NULL5 系统详细设计与实现5.1 前台设计(1) 前台页面设计与实现此系统的页面都使用了页面框架,前台页面分为3个区域:页头,功能栏,内容显示区.前台页面的运行结果如图5.1.1所示.图5.1.1前台页面的运行结果实现前台页面显示的主要代码login.jsp如下:<html><head><link rel="stylesheet" type="text/css" href="css/styles2.css"> </head><body><div id="d1" ><div id="top"></div><div class="content_top"></div><div id="login"><img id="login_bg"src="images/bg3.gif"><div id="login_d1"><div class="content_top"></div><br/><fieldset><legend>用户登录</legend><form action="login.action?" method="post"><table><tr><td>账号</td><td><input name="loginuser.account"/></td></tr><tr><td>密码</td><td><input type="password"name="loginuser.password" /> </td></tr><tr><td> </td><td><input type="submit" value="登录"> <input type="button"value="注册" onclick="location='registform.action'"></td></tr></table></form></fieldset><br/><br/><fieldset><legend>管理员登录</legend><form action="adminlogin.action" method="post"><table><tr><td>账号</td><td><input name="admin.account" type="password" ></td></tr><tr><td>密码</td><td><input type="password"name="admin.password" /> </td></tr><tr><td> </td><td><input type="submit" value="登录"> </tr></table></form></fieldset></div></div></div></body></html>(2) 用户注册/登录,管理员登录用户进入首页,必须先注册然后登录,否则直接登录不上,该用户注册页面的主要效果是:验证用户的个人信息.主要由regist.jsp生成,页面显示效果如图5.1.2所示:图5.1.2用户注册页面显示图主要实现代码如下:<head><link rel="stylesheet" type="text/css" href="css/styles2.css"> <script src="js/jquery-1.4.1.min.js" type="text/javascript"></script><script src="js/jquery.validate.min.js" type="text/javascript"> </script><script type="text/javascript">$(function() {$('#fff').validate({rules: {username: {required:true,minlength:5},password: {required:true,minlength:5},confirm_password: {equalTo: "#password"},email: {email: true},birthday:{},address: {},gendar:{},codes: {required:true,remote:"code.action"}},messages: {username: {required: "用户名必须填",minlength:"用户名不能小于5个字符"},password: {required:"密码必须填",minlength:"密码不能小于5个字符"},confirm_password: {equalTo: "两个密码必须一样"},email: {email: "必须填正确的Email"},birthday:{},address: {},gendar:{},codes: {required: "Code必须填",remote: "Code不对"}}});});</script></head>(3) 论坛板块的展示接下来用户才可以登录,直接输入用户注册成功后得到的那个账号,和用户注册时的密码就可以登录到此论坛的主界面了,论坛板块的展示如图5.1.3所示:图5.1.3论坛版块展示图(4) 个人信息模板的展示个人信息模板如下图5.1.4所示:图5.1.4 个人信息模板展示实体展示图(5) 补充个人资料模板的展示补充个人资料模板如下图5.1.5所示:图5.1.5补充个人信息展示实体图(6) 主人寄语以及留言板块的展示如图5.1.6所示:如图5.1.6主人寄语及留言板块实体展示图5.2 后台设计(1) 管理员管理用户信息模板的展示管理员管理用户实体图下图5.2.1所示:图5.2.1 管理员管理用户实体展示图(2)管理员修改和删除帖子模板的展示管理员修改删除帖子实体图如下图5.2.2所示:图5.2.2 管理员修改删除帖子实体展示图总结通过此次基于struts和jsp开发的BBS在线论坛的设计,使我对Java和jsp程序设计有了深一步的了解,对软件系统设计及开发有了比较全面的思路.但是系统还存在一些问题,需要通过进一步的学习,来不断地完善。