文档库 最新最全的文档下载
当前位置:文档库 › 基于JAVA的论坛系统本科毕业论文

基于JAVA的论坛系统本科毕业论文

摘要

本文主要介绍了基于JAVA技术的论坛系统的设计和实现,系统包含七个模块:论坛用户登陆注册模块,论坛账户信息模块,论坛文章发布模块,论坛文章管理模块,用户管理模块,版面设置模块,版主管理模块。论文详细描述了这些模块的结构、功能以及具体设计过程。为了达到运行稳定、高效的目的,系统基于J2EE平台开发,采用MVC模式,使用目前流行Struts + Hibernate框架,部分采用JSP + JavaBeans组件技术,并且使用了Memcached 缓存以及Hibernate数据缓存。界面设计人性化,操作简单。页面CSS以及JavaScript的编写遵循最新W3C标准,均支持在多种主流浏览器中使用。

Abstract

This article mainly introduced based on the JAVA technology forum system design and the realization, the system contains six modules: Forum user debarkation registration module, forum account information module, forum article issue module, forum article administration module, user administration module, moderator administration module.The paper described these module structure, the function as well as the concrete design process in detail.In order to achieve movement stable, highly effective goal, system based on J2EE platform development, uses the MVC pattern, the use popular Struts + the Hibernate frame, the part uses JSP at present + the JavaBeans module technology, and has used the Memcached buffer as well as the Hibernate data buffer.The contact surface design user friendly, the operation is simple.Page CSS as well as the JavaScript compilation deference newest W3C standard, supports in many kinds of mainstream browser uses.

关键字

JAVA, MVC, AJAX,Struts, Hibernate, JSP, BBS

毕业设计(论文)原创性声明和使用授权说明

原创性声明

本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:日期:

指导教师签名:日期:

使用授权说明

本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:日期:

学位论文原创性声明

本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。

作者签名:日期:年月日

学位论文版权使用授权书

本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

涉密论文按学校规定处理。

作者签名:日期:年月日

导师签名:日期:年月日

指导教师评阅书

评阅教师评阅书

教研室(或答辩小组)及教学系意见

毕业设计论文基于JA VA WEB的论坛系统

目录

第一章、论坛应用简介 (5)

一、论坛的分类 (5)

二、论坛开发的技术类型 (5)

三、设计目标 (5)

第二章论坛的需求分析 (6)

一、基本流程 (6)

二、模块分析 (6)

第三章、论坛的系统分析 (7)

一、开发工具的选择 (7)

二、运行环境的选择: (7)

三、数据库的选择 (7)

第四章、论坛的系统设计 (7)

一、数据库设计 (8)

二、数据库结构设计 (8)

三、数据库逻辑结构设计 (11)

第五章、开发环境配置 (13)

一、安装JDK及环境变量配置 (14)

二、安装配置Tomcat (14)

二、安装配置Eclipse及MyEclipse (14)

三、Struts配置 (14)

四、Hibernate配置 (14)

第六章、系统实现技术 (15)

一、用户登陆注册模块 (15)

二、论坛账户信息模块 (22)

三、论坛文章发布模块 (24)

四、论坛文章管理模块 (31)

五、用户管理模块 (32)

六、版面设置模块 (35)

七、版主管理模块 (37)

第六章、性能测试与分析 (40)

结束语 (41)

参考文献 (41)

第3页共60页

毕业设计论文基于JA VA WEB的论坛系统

前言

现今的社会是一个信息飞速发达的社会,在信息的交流和传递当中,互联网占据着一个非常重要的位置。人们可以通过互联网查看最新的消息,也可以通过互联网进行信息的交流。而论坛就是大家进行信息交流的其中一个渠道。它具有信息传递及时,信息交流方便,利于互动的优点!论坛的概念:论坛(BBS)是Bulletin-Board-System的缩写,即电子公告栏。它是一种在Internet网上开放的信息服务系统,通过论坛用户在论坛中可以发布信息,进行讨论,聊天,共享文件等等。BBS多用于大型公司或中小型企业,开放给客户交流的平台。对于初识网络的新人来讲,BBS - 就是用于在网络上交流的地方,可以发表一个主题,让大家一起来探讨,也可以提出一个问题,大家一起来解决,可以上传资源供大家分享等。在论坛里,人们之间的交流打破了空间,时间的限制。在与别人进行交往时,无须考虑自身的年龄,学历,知识,社会地位,财富,外貌,健康状况,也无从知道交谈的对方的真实社会身份。这样,参与讨论的人可以处于一个平等的位置与其他人进行任何问题的探讨。论坛往往是由一些有志于此道的爱好者建立,对所有人都免费开放。而且,由于BBS 的参与人众多,因此各方面的话题都不乏热心者。我们当然可以利用它来解决学习中的一些疑惑,也可以把自己的心事吐露出来。

第4页共60页

毕业设计论文基于JA VA WEB的论坛系统

第一章、论坛应用简介

一、论坛的分类

早期的BBS由教育机构或研究机构管理,现在多数网站上都建立了自己的BBS 系统,供网民通过网络来结交更多的朋友,表达更多的想法。目前国内的BBS已经十分普遍,可以说是不计其数,其中BBS大致可以分为5类:

(1)校园BBS:CERNET建立以来,校园BBS恨快地发展了起来,目前很多大学都有了BBS,几乎遍及全国上下。象清华大学、北京大学等等都建立了自己的BBS系统,清华大学的水木清华很受学生和网民们的喜爱。大多数BBS是由各校的网络中心建立的,也有私人性质的BBS。

(2〕商业BBS站:这里主要是进行有关商业的商业宣传,产品推荐等等,目前手机的商业站、电脑的商业站、房地产的商业站比比皆是。

(3〕技术BBS站:如CSDN技术论坛,主要为各种技术开发人员和相关企业提供全面的信息服务和技术服务。

(4)专业BBS站:这里所说的专业BBS是指部委和公司的BBS,它主要用于建立地域性的文件传输和信息发布系统。

(5)综合BBS:主要关于新闻,娱乐,以及各种热门话题的交流

(6)资源BBS:主要用于各种资源的发布并提供用户下载

(7)个人BBS:有些个人主页的制作者们在自己的个人主页上建设了BBS,用于接受别人的想法,更有利于与好友进行沟通。

二、论坛开发的技术类型

目前主流的论坛开发技术有基于ASP、PHP(有名如Discuz)、JAVA(如OSPOD)的等等,每种技术都有自己的优点、缺点。Java是由Sun Microsystems公司推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。Java语言是一种简单的,面象对象的,分布式的,解释的,健壮的,安全的,结构的中立的,可移植的,性能优异的,多线程的,动态的语言。有着“一次编写到处运行”的特点,并且与平台为关。它还有着众多的开源项目、丰富的资源库以及众多的中间件开发商。正因为JAVA有如此多的优点,使它的支持者越来越多,同时对Web的迅速发展起到至关重要的作用。本论坛系统也将基于JAVA来实现。

三、设计目标

本论坛系统将使用JAVA程序设计语言开发,属于技术支持和维护类,采用提问-回答模式,与CSDN相似,为用户提供各种信息资源和思想交流的场所。

第5页共60页

毕业设计论文基于JA VA WEB的论坛系统第二章论坛的需求分析

一、基本流程

要想使用论坛提供的各项功能服务,首先必须注册。基本流程是首先,注册人须阅读互联网有关法规及论坛服务条款款,并提交同意申请;论坛管理系统将设定一个账号名和密码并询问注册人一些情况,如姓名、性别、年龄、身份证号码、职业等等。注册人必须如实填写,系统能够进行验证码,通过后整个注册过程就基本完成。一旦注册成功,便成为论坛的合法会员。会员拥有唯一的帐号,这个帐号就是他在论坛中的通行证,是众多会员中相互辨别的唯一标志。在使用论坛的过程中所有会员必须遵守论坛的各项规章制度和行为准则,否则将被管理员开除或者被封Post权!二、模块分析

根据以上流程大致分为以下几个模块:

(一)用户登陆注册模块

登陆将使用帐号+密码+验证码的方式,成功后登陆信息将存储在Session中,关闭浏览器后失效,注册时用户必须先阅读论坛服务条款,之后填写论坛注册的各项信息,验证成功后即可使用论坛的各项功能。

(二)论坛账户信息模块

用户可查看和修改自己的信息,同时也可以通过名片功能查看其他用户信息,用户的信息分为基本信息,详细信息,积分信息,状态信息等。基本信息包括登陆名,密码,Email,用户类型,用户特性……等;用户的类型分为系统管理员,版主和普通会员,系统管理员可管理所有用户,可设置论坛的版面和版主,版主可管理普通用户的帖子,发布公告等等。用户特性分为,专家和普特会员两中,详细信息包括真实姓名,通信地址,联系电话……等;积分可通过发帖、回帖获得,也可以在帖子被版主置顶或推荐时可获得奖励积分;状态信息由管理员设定,可修改或删除用户。

(三)论坛文章发布模块

用户登陆后可使用文章发布功能(即发帖、回复),文章内容支持使用HTML在线编辑功能,用户可通过设定提问分数来吸引其他用户的参与,并可想专家体温。

(四)论坛文章管理模块

管理功能只限版主使用,主要功能包括发布公告,文章设置置定、推荐或取消置定、取消推荐,删除文章,删除回复等。

(五)用户管理模块

系统管理员可管理各个用户的状态,也可直接删除用户。

(六)版面管理模块

系统管理员可设置版面信息。有添加、修改、删除功能。

第6页共60页

毕业设计论文基于JA VA WEB的论坛系统(七)版主管理模块

系统管理员可设置各个版块的版主,也可以取消设置。

第三章、论坛的系统分析

一、开发工具的选择

目前JAVA的主流开发工具有JBuilder、VisualAge for Java、Forte for Java、Visual J++、Eclipse、NetBeans、JCreator+J2SDK、JDK+记事本、EditPlus+ J2SDK等等。一般开发J2EE项目时都需要安装应用服务器(中间件)和相应的开发工具。论坛使用的是Eclipse+MyEclipse+Tomcat6.0作为开发工具以及应用服务器。Eclipse是一种可扩展的开放源代码IDE,由IBM出资组建。Eclipse 框架灵活、扩展容易,最大特点是它能接受由Java开发者自己编写的开放源代码插件,同时为工具开发商提供了更好的灵活性,使他们能更好地控制自己的软件技术,因此很受开发人员的喜爱,目前它的支持者越来越多,大有成为Java第一开发工具之势。MyEclipse是Eclipse的一款插件,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。Tomcat 是一个免费的开放源代码的Web 应用服务器,它是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。Tomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能,技术先进、性能稳定,已经成为目前比较流行的Web 应用服务器。

二、运行环境的选择:

本系统的运行环境应用:

Windows 2000、Windows XP操作系统。

三、数据库的选择

论坛使用的数据库为MySql,它是一个小型关系型数据库管理系统,由于其体积小、速度快、总体拥有成本低、开放源码等特点,被广泛地应用在Internet上的中小型网站中。

第四章、论坛的系统设计

对上述各项功能进行集中、分块,按照结构化程序设计的要求,得到系统功能模块图如下:

第7页共60页

毕业设计论文基于JA VA WEB的论坛系统

图4.1系统功能模块图

一、数据库设计

数据库设计是一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。在系统的总体模块确定之后,接下来的工作就是数据库的设计了,而数据库的设计在一个信息管理系统中占有非常重要的地位,因为一个系统中数据库结构设计的好坏,直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。同时,合理的数据库结构也将有利于程序的实现。

论坛需求具体体现在各种信息的保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。

二、数据库结构设计

得到上面的数据项和数据结构以后,就可以设计出难免满足用户需求的各种实体,以及它们之间的关系,

第8页共60页

毕业设计论文基于JA VA WEB的论坛系统

图4.2.1用户(基本信息)实体

图4.2.2用户(详细信息)实体

第9页共60页

毕业设计论文基于JA VA WEB的论坛系统

图4.2.3论坛版面实体

图4.2.4版主实体

图4.2.5 文章帖子实体

第10页共60页

毕业设计论文基于JA VA WEB的论坛系统

图4.2.6文章回复实体

三、数据库逻辑结构设计

在上面的实体以及实体之间关系的基础上,形成数据库中的表以及各个表之间的关系。

论坛系统数据库中的各个表的设计结果如下所示:

t_userbase 用户基本信息表

第11页共60页

毕业设计论文基于JA VA WEB的论坛系统

t_userinfo 用户详细信息表

t_bbs_topic文章帖子表

第12页共60页

毕业设计论文基于JA VA WEB的论坛系统

t_bbs_revert文章回复表

t_propertie版面属性表

t_bbs_group版主表

第五章、开发环境配置

本轮系系统将使用JDK1.6 + Eclipse.3.3+MyEclipse6.0+Tomcat6.0进行开发,数据库为MySql。使用了SVN进行版本控制。

第13页共60页

毕业设计论文基于JA VA WEB的论坛系统一、安装JDK及环境变量配置

首先下载并安装JDK1.6,完成后右击"我的电脑"——>"属性",在弹出的"系统属性"选项面板中选择"高级"选项卡,点击"环境变量"按钮,弹出"环境变量"面板。

1.新建系统变量JAVA_HOME,在变量值中输入JDK的安装路径,例C:\Program Files\Java\jdk1.6.0,

2.新建系统变量CLASSPATH,在变量值中输入:.;%JAVA_HOME%\lib

3.找到系统变量PATH,在变量值中追加:; %JAVA_HOME%\bin

4.配置完毕后,点击”开始”——>”运行”,输入”cmd”,将打开命令提示框,在其中输入”javac”,如果显示为JA V A的命令信息,则安装成功。

5.

二、安装配置Tomcat

下载安装Tomcat6.0,进如Tomcat的安装目录下” conf”,找到server.xml并打开,在” Host”标签之间加,docBase为程序文件的存放路径,最后保存即可。

二、安装配置Eclipse及MyEclipse

由于使用MyEclipse,所以只需下载MyEclipse安装到任意目录即可,安装完毕后运行MyEclipse,点击菜单栏”window”→”preferences”打开系统配置界面,在左边树型菜单中点击”Installed JREs”打开配置已安装的JDK1.6,然后再点击左边树型菜单”MyEclipse”→”Application Servers”→”Tomcat”→”Tomcat6.x中配置Tomcat的安装路径以及JDK,最后点击”Apply”完成。

三、Struts配置

运行MyEclipse,点击菜单栏”MyEclipse”→”Capabilties”→”Add Struts Capabilties”,按。系统将自动添加Struts的配置文件以及JAR包。之后点击菜单栏”File”→”New”→”Other”,在弹出的显示框中选择” MyEclipse”→”Web-Struts”下的文件类型(Action、Form……等等)。

四、Hibernate配置

运行MyEclipse,点击菜单栏”MyEclipse”→”Capabilties”→”Add Hibernate Capabilties”,将自动生成hibernate.cfg.xml配置文件、HibernateSessionFactory工厂类和所需要的JAR包。之后点击右上更多进入”MyEclipse Hibernate”,在”DB Browser”配置并连接到数据库,右键点击表名”Hibernate Reverse Engineering”按提示对表进行映射。将自动生成Hibernate的实体Bean和对应的.hbm.xml文件。

第14页共60页

毕业设计论文基于JA VA WEB的论坛系统第六章、系统实现技术

一、用户登陆注册模块

系统启动之后,用户想进入论坛使用必须先通过用于验证用户名和用户密码的过程。界面显示如下图:

图6.1.1登录界面

点击登录时系统将弹出登录框,用户登录表单中放置了两个文本框和一个登陆按钮,用来输入用户名和密码以及提交表单信息,点击登陆按钮将提交到/users/checkusername.jsp,JS代码如下:var name=$("#namereg").val();

var pass=$("#pass_login").val();

var day=$("#days").val();

var days_=0;

if(day.checked==true){

days_=day.value;

}else{

days_=0;

}

//使用JQUERY中AJAX的调用方式

$.post("/users/checkusername.jsp?name="+name+"&pass="+pass+"&days="+days_+"&time="+new Date(),{aq:0},function(data){

if(data.indexOf("ok")>-1){//登录成功

var link_parent=parent.window.location.href;

if(link_parent.indexOf("login=false")>-1){

parent.window.location.href=data;

}

第15页共60页

相关文档