bbs论文 - 图文
更新时间:2024-03-25 00:18:01 阅读量: 综合文库 文档下载
- bbs是什么意思推荐度:
- 相关推荐
扬 州 市 职 业 大 学 毕 业 设 计 说 明 书 设计(论文)题目: BBS论坛
系 别: 信息工程学院 1 专 业: 网络技术 1 姓 名: 何小敏 1 学 号: 110705143 1 指导教师: 严双林
完成时间: 2014.5月
摘要
摘 要
随着网络在现代社会中的广泛应用及当今社会快节奏的发展,人们越来越需要一个平台来进行分享并交流相应的资讯信息。现在有各种的论坛网站等系统来实现人们的这一需要,获得有益信息并与他人进行交流,以方便人个扩展知识层面。
论文中主要阐述了论坛网站的开发过程。介绍了开发论坛网站的环境及技术,同时详细的叙述了设计的思想及流程,说明了数据库的建立思想以及与程序之间的关联等问题。说明了网站不同功能的实现方法及详细设计过程。
该课题主要的工作是对论坛网站的主要功能进行设计与实现,实现用户浏览帖子,发表及回复论坛帖子的功能以及系统管理员对后台的管理功能,如删除帖子和用户信息,对用户权限的设置。主要作用是通过发表新帖并回复他人帖子来实现信息交流。此文章中首先对整个系统功能进行详细的分析与设计;其次采用SQL Server数据库技术实现对系统中涉及的数据信息进行管理,最后利用JSP技术进一步具体实现论坛网站各项功能,并用Tomcat作为服务器支持其运行。运行调试确保网站的正常工作。
网站设计在Windows XP操作系统环境下,构建JSP技术的运行环境JDK+Tomcat,并通过运用Java嵌入式语言实现动态的,交互的web服务器运行程序,实现论坛网站的基本功能。
关键词:论坛网站;JSP技术;SQL数据库
目录
目 录
摘 要 ............................................................................................................................................... I ABSTRACT........................................................................................................................................II 目 录 ............................................................................................................................................ III 第 1 章 引 言 ............................................................................................................................... 1
1.1 课题的研究目的和意义 ....................................................................................................... 1 1.2 国内外发展状况 ................................................................................................................... 1 1.3 研究内容及目标 ................................................................................................................... 2 第 2 章 开发方法及关键技术简介 ................................................................................................. 4
2.1 开发工具与运行环境 ........................................................................................................... 4 2.2 主要问题及解决手段 ........................................................................................................... 5 2.3 关键技术简介 ....................................................................................................................... 6
2.3.1 JSP技术 ...................................................... 6 2.3.2 SQL Server数据库技术 ......................................... 7 2.3.3 B/S结构 ...................................................... 9 2.3.4 Tomcat技术 ................................................... 9
第 3 章 总体设计 ............................................................................................................................ 11
3.1 系统机构设计 ..................................................................................................................... 11 3.2 功能设计 .............................................................................................................................. 12 3.3 数据库设计 .......................................................................................................................... 13 第 4 章 详细设计 ............................................................................................................................ 16
4.1 前台管理模块实现 ............................................................................................................. 16
4.1.1 用户注册登陆 ................................................. 16 4.1.2 用户发帖回帖 ................................................. 22 4.1.3 用户传载资料 ................................................. 27 4.2 后台管理模块实现 ............................................................................................................. 31
4.2.1 管理员管理 ................................................... 31 4.2.2 论坛分类管理 ................................................. 33 4.2.3 用户权限管理 ................................................. 36 4.2.4 论坛帖子管理 ................................................. 38
目录
4.2.5 密码修改 ..................................................... 39
第 5 章 结 论 ............................................................................................................................. 41 参考文献 ............................................................................................................................................. 42 致 谢 ............................................................................................................................................. 44
引言
第 1 章 引 言
1.1 课题的研究目的和意义
随着计算机技术的不断发展与提高,人们深刻的认识到了其强大的功能及在现代社会中的各个领域发挥着无可替代的重要的作用。其中计算机网络技术更是得到了充分的应用,然而在网站设计中Web数据库技术已然成为最为广泛应用的网站架构的基础技术,网络提供了用户与用户之间通信交流的有效手段。利用JSP技术
实现Web服务器与数据库的连接,完成对网站信息的查询与处理。
由于网络具有传播信息容量大,形态多样,迅速方便且自由交互的特点,其已发展成为新的传播媒体及交互平台。目前就有很多不同形式的网站提供人们共享资讯,而论文中目的是介绍运用JSP技术设计并实现论坛网站的功能。构建一个交流平台通过互联网使用户和用户之间可以进行交流,分享各种信息;同时也可以通过网络提出所遇到的各种问题等待他人的解答,并彼此认识,交流扩大知识。
设计实现论坛网站的主要意义在于:首先,现今JSP在网站设计方面有着突出的优势,因此有必要掌握并熟练应用JSP动态网页设计技术;其次,通过数据库与Web服务器连接来对网站数据进行管理,掌握不同环境的关联与应用;最后,随着网络的发展及人们对知识信息的需求不断提升,网络已成为不可忽视的资讯来源,而论坛网站便能满足这个要求。
1.2 国内外发展状况
Java Server Pages(JSP)是一种基于web的脚本编程技术,类似于网景公司的服务器端Java脚本语言——server-side JavaScript(SSJS)和微软的Active Server Pages(ASP)。JSP比SSJS和ASP具有更好的可扩展性,并且他不专属于任何一家厂商都可以在自己的系统上实现JSP。
1
引言
JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页设计标准。其在动态网页的建设中尤其强大而特别的功能。JSP与Microsoft的ASP技术非常相似。两者都提供在HTML代码中混合某种程序代码、有语言因情节是执行程序代码的能力。而事实证明,Java Servlet是一种开发Web应用的理想构架。JSP以Servlet技术为基础,又在许多方面做了改进。JSP页面看起来像普通HTML页面,但它允许潜入执行代码,在这一点上,它和ASP技术非常相似。但是,利用跨平台运行的JavaBean组件,JSP为分离处理逻辑与显示样式提供了卓越的解决方案。
1.3 研究内容及目标
要求达到的目标是能够普通用户的注册登录,并在论坛网站中自由发表新帖及浏览回复他人发表的帖子,用户可对个人信息的进行修改;管理员对论坛帖子信息、主题信息、用户信息及权限的管理。
课题主要研究并实现的内容有如下几方面: (1)数据存储与数据库描述
由于论坛需要储存用户及其所发帖子的相关信息,而在论坛运行过程中这类相关数据量会逐渐增大,因此要依据数据库来实现对这些数据的存储和管理。
通常,用户要存有其注册时的ID,用户名,密码等个人信息,以方便网站的管理。同时,论坛中的主题及帖子同样需要相应的信息数据,以方便其分类与管理。
根据上述分析,系统数据库中的主要表及其关系如下: 会员信息表(用户ID,用户名,密码,姓名,性别,年龄…) 帖子主题表(用户ID,标题,内容,上传的附件,…) 帖子回复表(用户ID,内容,…) 管理员表(管理员ID,用户名,密码,…) 主表中用户的ID属性为主键
2
引言
(2)用户在网站中进行的活动
这是课题的重点工作,涉及到如下内容: ①普通用户操作
用户可在网站中感兴趣的主题发表新帖来表达自己的观点,并通过回帖与他人进行交流,也可浏览新闻区的帖子。
在此主要涉及的问题是用户与用户之间发帖进行信息交互,准确显示出用户所表示的帖子内容。
②管理员操作
对于一个论坛网站系统来说,用户之间通过发帖及回帖该进行交流,必然要有管理员对帖子进行管理,对不规范的帖子进行删除,某些用户信息的注销及权限的设置。
③后台操作
管理员对于网站本身所要进行的各种后台操作,包括对于主题的添加,删除;对于新闻区要能添加新的新关的帖子供用户浏览。
3
开发方法及关键技术简介
第2章 开发方法及关键技术简介
1.4 开发工具与运行环境
(1)开发工具
根据整个系统的开发计划,采用的开发工具是MyEclipse ,结合Dreamweaver最基本的框架搭建,并采用Java语言进行嵌入式开发动态网站。
MyEclipse是一个开放的源代码,基于Java可扩张的开发平台,多数人都是将MyEclipse作为Java集成开发环境使用,虽然MyEclipse使用Jave开发,但MyEclipse不仅仅局限于Java开发,还可用于其它语言开发,如C/C++;MyEclipse是一个框架和一组服务,它通过各种插件来构建开发的环境,因此只要提供支持C/C++插件便能进行相应的语言开发。
MyEclipse是一个IDE(Integrated Developing Environment),而这个IDE可以允许安装第三方开发的插件来使自身的功能得到扩展和增强,而MyEclipse就是其中一种有名的插件集之一,MyEclipse将开发者常用到的一些有用的插件都集合起来,但它是收费的。
MyEclipse最早是由IBM开发的,后来IBM将MyEclipse作为一个开发的源代码项目,献给了开源组织MyEclipse.org,但仍由IBM的子公司OTI(主要从事MyEclipse开发的人员继续MyEclipse的开发。
MyEclipse为MyEclipse提供一个大量私有和开源Java工具的集合,这解决了各种开源工具不一致的缺点。NitroX是一个繁杂而强大,加速Java Web应用开发的工具,还包含了一个强大且能够编译所有的JSP和Struts Web应用的具AppXray。这些工具解析Java和XML配置文件。
4
开发方法及关键技术简介
MyEclipse实际价值来来自包含的发布包中的大量工具。如CCS/JS/HTML的编辑器,帮助创建EJB和Struts项目的向导并产生了项目的所有主要的组件如action/seesion bean/form等。还包含编辑Hibernate配置的文件和执行SQL语句的工具。
(2)运行环境 ①软件环境
本系统运行在Windows系列的操作系统上。 ②硬件环境
对硬件环境无具体要求。
1.5 主要问题及解决手段
(1)数据库的连接
程序调试运行后将数据库与程序连接时,会出现与数据库连接失败的情况,此时需要为数据库安装一个sq3的补丁,并将安全性里的登录设置为混合登录方式。
(2)TOMCAT 6.0端口设置问题
在tomcat安装文件夹中有个conf文件,其中有个server.xml文件,有记事本中打开,里面有个port=\的代码字样,此代码表示默认的端口就是8080,但有时此端口会出现被占用的状况,因此服务器便不能使网站正常运行,此时便要将文件中的端口改成其它值,如:port=\然后重启tomcat,便可以运行程序。
(3)文件传载的实现
在网站中实现文件的传载,当上传文件后,如文件名是中文形式时下载文件时会报错,通过查阅资料后发现改写下原Upload.jsp文件中的代码如: byte[] buff = new byte[2048]; int bytesRead;
while(-1 != (bytesRead = bis.read(buff, 0, buff.length))) { bos.write(buff,0,bytesRead);
5
开发方法及关键技术简介
} }
catch(Exception e){ e.printStackTrace(); } finally {
if (bis != null)bis.close(); if (bos != null)bos.close(); }
便可解决问题。
1.6 关键技术简介
JSP技术
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与Java Servlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要
6
开发方法及关键技术简介
Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。
JSP可用一种简单易懂的等式表示为:HTML+Java=JSP。
JSP与Microsoft的ASP技术非常相似。两者都提供在HTML代码中混合某种程序代码、有语言因情节是执行程序代码的能力。在ASP或JSP环境下,HTML代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的HTML页面只能依赖于Web服务器,而ASP和JSP页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到HTML代码中,然后一起发送给浏览器。ASP和JSP都是面向Web服务器的技术,客户端浏览器不需要任何附加的软件支持。
1.6.1 SQL Server数据库技术
数据库是数据库应用程序的重要组成部分,设计结构合理,功能齐全的数据库对于提高数据库应用的开发效率和程序的性能都是非常重要的。因为数据库的影响深远,不但对系统设计者有着极大的影响,而且也可能会在今后的应用过程中造成不可挽回的损失,数据的正确关系到整个系统正常运作,也是系统能够正常工作的前提条件。所以在设计过程中不但要把所必需的数据字段加到数据库中,而且要加入一些可以方便控制数据库的字段,来增加数据库的完整性和安全性。数据库的设计通常是以一个已经存在的数据库管理系统为基础的,常用的数据库管理系同Access, SQL Server, Oracle等。根据用户需求和业务流程,本系统采用了SQL Sever 2000数据库。
对拟开发系统选用SQL Server 2000作为后台数据库。数据库是信息管理系统的后台,存储着所有的信息,在信息管理系统中有着很重要的地位。数据库设计的好坏,直接影响到这个系统的运行效率。良好的数据库设计,可以提高数据信息的存储效率保证数据信息的完整性和一致性。
7
开发方法及关键技术简介
SQL Server 2000是一个中、小型数据库管理系统,使用方便、功能强大,与其它数据库有良好的接口。通过SQL Server 2000功能强大的工具,用户可以方便的使用和管理数据库,如创建和编辑数据表、设计和使用各种查询工具进行查询操作、设计和使用窗体、制作和打印报表、设计和使用宏、设计和使用Web页等。还可使用VBA(Visual Basic for Application)开发高级应用程序。SQL Sever 2000具有完整的数据库应用开发工具,用户可以方便的设计、修改、浏览一个记录数据的基本表;可以在表数据中进行各种筛选和查询操作;可以设计和使用各种窗体以实现数据显示和操作;可以根据表数据设计打印各种报表;可以设计和使用宏,对表进行一系列特定的操作。SQL Server 2000内有强大的操作向导,为用户提供了丰富的数据库基本表模板。用户只需简单的操作就可建立数据库中所使用的各种基本表、窗体和报表。在SQL Server 2000中,可以设定、修改基本表之间的关联,从而实现在多个相关表之间的关系查询。SQL Sever 2000中的宏可以实现操作的自动化,使操作更加简单、快捷。SQL Server 2000增强了网络功能,用户可以轻松自如地完成网页发布等。SQL Server 2000不仅可以处理自身的数据库文件,还可以处理其它一些数据库系统管理软件所建立的数据库文件,能识别DBase、FoxBase、FoxPro、Paradox、Btrieve等数据库格式文件,并且支持开放式数据库互连性标准(ODBC)的SQL。SQL Server 2000能与工作站、数据库服务器或主机上的各种数据库互相连接,并可用于建立客户/服务器应用程序中的工作站部分。
与其它的关系型数据库管理系统相比,SQL Server 2000具有以下优点: (1)存储文件单一。
(2)支持长文件名,并可以在文件名内加空格,使文件便于理解、查找。具有强大的网络功能,可通过网络传送数据。
(3)使用简便,用户无需了解编程语言,便可轻松地设计开发数据库程序。 (4)可以处理多种数据信息,如文本文件和其它数据库文件。
8
开发方法及关键技术简介
1.6.2 B/S结构
B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explorer,服务器安装Oracle、Sybase、Informix或 SQL Server等数据库。浏览器通过Web Server 同数据库进行数据交互。其大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。
B/S结构最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展性非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如CA证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。
1.6.3 Tomcat技术
Tomcat时一个免费开源的Servlet容器,它是Apache基金会Jakarta项目中一个核心项目,由Apache,Sun和其它的一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新Servlet和Jsp规范总能在Tomcat中得到了体现。Tomcat被JavaWorld杂志的编辑选为2001年度最具有创新的java产品,可见其在业界的地位。
与传统桌面应用程度不同,Tomcat中应用程序是一个WAR(Web Archive)文件。WAR时Sun提出一种Web应用程序的格式,与JAR类似,也是许多文件的一个压缩包。这个包中的文件是按一定目录结构来组织:通常其根目录下包含有Html和Jsp文件或者包含这两种文件目录,另外还会有一个WEB-INF目录,这个目录很重要。通常在WEB-INF目录下,有一个web.xml文件和一个classes目录,
9
开发方法及关键技术简介
web.xml是这个应用的配置文件,而classes目录下,则包含编译好的Servlet类和Jsp或Servlet所依赖其它类(如JavaBean)。通常这些所依赖的类也可以打包成JAR放到WEB-INF下lib目录下,当然也可以放到系统CLASSPATH中,但那样移植和管理起来不方便。
在Tomcat中,应用程序部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要将Jsp转化成为Servlet文件,然后编译。编译以后,访问将会很快。另外Tomcat也提供了一个应用:manager,访问这个应用需用户名和密码,用户名和密码存储在一个xml文件中。通过这个应用,辅助于FTP,你可以对过Web部署和撤销应用。
10
开发方法及关键技术简介
第三章 总体设计
1.7 系统机构设计
本论坛网站实现用户的注册登录,浏览、发表、回复及删除帖子;网站管理员对帖子信息及用户信息和权限的管理,对主题板块的添加及新闻作息帖的录入。论坛可提供用户与用户之间进行信息咨询的分享与交流。主要功能模块图如图3-1所示。
用 户 注 册登 陆
11
论坛网站系统 前台管理 后台管理 用户浏览信息 用户发帖回帖 用户传载资料 管理员登陆 论坛分类管理 论坛帖子管理 论坛新闻录入
总体设计
图3-1 论坛网站系统结构图
图3-1中显示了此论坛网站的整体系统结构
系统的总体设计思路是在网络中运行此论坛网站,用户进行注册并登陆论坛,系统对用户进行权限的验证。根据用户需求,论坛主要提供用户一个信息的交流平台,通过在网站中发表回复帖子来实现用户间的资讯交流,并可对文件等资料进行传载来分享资源。
为了便于论坛更好的运行,管理员可对用户信息及帖子信息进行管理;同样为了更方便用户之间的交流,管理员也可对主题进行管理,对新闻进行录入。
1.8 功能设计
系统主要分为前台和后台两个管理模块,而其中包括的主要的功能分别是:用户注册登陆、用户发帖回帖、用户传载资料、论坛分类管理、论坛帖子管理等功能。
(1)用户注册登陆:该功能主要实现普通用户的注册登陆的功能。注册时用户填入具体的地址邮箱及电话等信息,并将注册时所填信息录入数据库保存以便管理用户信息。注册成功后用户便可登录系统并在论坛中进行相应操作。
(2)用户发帖回帖:该功能用户可在论坛中通过发帖回帖与他人进行交流。注册账号并登陆,可以浏览论坛中新闻版块及其他用户发表的帖子,并可在个人感兴趣的主题中通过发帖来表达自己的观点想法或回复他人所发的帖子来交流经验并分享信息,以扩充知识并能结交朋友。
(3)用户传载资料:该功能可在用户发帖是实现,当用户有好的资料后信息想与大家分享时,便在论坛中发帖并应用此功能上传文件,将其分享给论坛中的其他
12
总体设计
用户。其他用户也可通过回帖来发表个人对于所分享资料的感想,以此是用户间更好的共享有益资源并进行相应的交流。
(4)论坛分类管理:此功能在论坛后台管理中实现,主要为论坛主题界面的分类进行管理。论坛中为了方便管理及用户之间可以更好的交流,不同种类的帖子应有相应的主题板块来进行管理。这样方便用户快速的找到自己想要了解的相关信息。
(5)论坛新闻录入:此功能同样在论坛后台管理中实现,主要由系统管理员在后台进行新闻帖中信息的录入。用户可在新闻资讯一项中浏览新闻信息,获得资讯。但用户只可在此版块浏览新闻,不能进行其他操作。
1.9 数据库设计
为了论坛网站更好的进行和管理,需要记录注册用户以及其所发帖子等数据信息。所以需要建立数据库来储存相关的信息,所建数据库中各表信息如下:
用于储存用户的数据信息的表t_user,其中要对用户注册时所用的ID设为主键,由此属性项将表3-1中的用户与表3-2中存储的所发的帖子的数据信息进行关联。其中还记录了用户名,密码以便用户登陆网站,以及姓名,性别,年龄等个人信息。
每个所发表的新帖同样需要记录相关信息,如标题,内容用所发的用户等数据,由于论坛支持文件的传载,则在存储主题信息的表3-3中要此属性项以便实现此功能。且每个主题模块会有不同的帖子,而所发新帖子是存在于哪个主题模块中也是要记录的信息,这样有助于对网站进行管理。
表3-4中储存论坛管理员的相关信息,如用户名,密码等,而新闻模块用于普通用户浏览信息,了解资讯。此模块中的帖子信息由管理员登陆并进入后台后录入所存信息如表3-6中所示。
13
总体设计
表3-1 会员信息表t_user
表3-2 帖子回复表t_huifu
字段名 ID LOGINPW NAME SEX AGE ADDRESS TEL EMAIL QQ
类型 INT VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR
长度 小数位数 4 50 50 50 2 2 50 50 50 50
主键 是 否 否 否 否 否 否 否 否 否
NULL 否 是 是 是 是 是 是 是 是 是
LOGINNAME VARCHAR
14
总体设计
字段名 ID TITLE CONTETN SHIJIAN USER_ID ZHUTI_ID
类型 INT VARCHAR VARCHAR VARCHAR
INT INT
长度 4 20 50 50 4 4
小数位数 主键
是 否 否 否 否 否
NULL 否 否 否 否 否 否
表3-3 帖子主题表t_zhuti
字段名 ID TITLE CONTENT FUJIAN SHIJIAN USER_ID CATELOG_ID
类型 INT VARCHAR VARCHAR VARCHAR VARCHAR
INT INT
长度 4 50 50 50 50 50 4 4
表3-4 管理员表t_admin
字段名 USER_ID
类型 INT
长度 小数位数 主键 NULL 4 50
15
小数位数
主键 是 否 否 否 否 否 否 否
NULL 否 否 否 否 否 否 否 否
YUANSHIMING VARCHAR
是 否
否 是
USER_NAME VARCHAR
总体设计
USER_PW VARCHAR
50 否 是
表3-5 论坛类别表t_catelog 字段名 ID NAME JIESHAO
类型 INT VARCHAR VARCHAR
长度 小数位数 4 50 500
主键 是 否 否
NULL 否 是 否
第四章 详细设计
1.10 前台管理模块实现
1.10.1 用户注册登陆
(1) 功能描述
前台管理主要实现用户在论坛中所要进行的基本操作,其中主要包括用户注册登陆、用户发帖回帖及资料的传载等功能。而这里主要介绍用户注册登陆功能的实现。实现用户在网站注册新的账户,注册成功后用户可登陆到论坛网站中并在论坛中进行相应操作。
16
详细设计
图4-1 论坛网站首页用户登陆界面
17
详细设计
图4-2 论坛网站用户注册界面
(2) 程序实现
在程序userLogin.jsp中的代码段实现用户的登陆操作,用SQL语言对数据库中t_user表中存储的用户数据进行检索,验证所输入的用户名,密码是否在数据库中存在,若存在则验证其是否正确。
实现代码如下:
public String userReg() {
TUser user=new TUser();
18
详细设计
}
user.setLoginname(loginname); user.setLoginpw(loginpw); user.setName(name); user.setSex(sex);
user.setAge(age); user.setAddress(address); user.setTel(tel); user.setEmail(email);
user.setQq(qq); user.setType(1); user.setDel(\
userDAO.save(user);
Map request=(Map)ServletActionContext.getContext().get(\request.put(\注册成功,请登录\
return \
public String userLogout() {
HttpServletRequest request=ServletActionContext.getRequest();
19
详细设计
request.getSession().setAttribute(\request.getSession().setAttribute(\
this.setMessage(\安全退出\this.setPath(\
return \ }
public String userMana() { }
public String userDel() {
TUser user=userDAO.findById(id); user.setDel(%userDAO.attachDirty(user);
this.setMessage(\操作成功\
20
String sql=\List userList=userDAO.getHibernateTemplate().find(sql);
Map request=(Map)ServletActionContext.getContext().get(\request.put(\return ActionSupport.SUCCESS;
详细设计
this.setPath(\
return \ }
(3) 流程图
开始 用户注册 N 是否成功 Y 返回首页 提示注册成功 结束
图4—1 注册流程图
21
详细设计
开始 用户登录 用户名密码 是否正确 N 返回登录界面 Y 进入论坛主页 结束
图4—2登录程序流程图
1.10.2 用户发帖回帖
(1) 功能描述
该功能主要包括两个操作分别为:用户发表新的帖子,回复他人发表的帖子。通过这两个操作实现用户之间的交流及分享信息。
用户登录论坛后,可在相应的主题模块中发表帖子来与其他用户进行交流,也可对别人发表的帖子个人感兴趣的帖子进行回复来发表自己的观点。
22
详细设计
图4-3 用户发表新帖界面
图4-4 用户发帖后显示界面
23
详细设计
图4-5 论坛网站用户回帖界面
(2) 程序实现
在程序zhutiAdd.jsp实现发贴回帖等操作的一些前期准备,如参数的定义并将数据库中数据与程序中的参数相关联。
用myelcipse新建回复帖子的jsp页面huifuAdd.jsp,设置页面的编码格式为urf-8,编写表单form
32
详细设计
实现代码如下:
public String login(String userName,String userPw,int userType) {
System.out.println(\ try {
Thread.sleep(700);
} catch (InterruptedException e) {
e.printStackTrace(); }
String result=\
if(userType==0)//系统管理员登陆 {
String sql=\ Object[] con={userName.trim(),userPw.trim()};
List adminList=adminDAO.getHibernateTemplate().find(sql,con);
if(adminList.size()==0) {
result=\ } else {
WebContext ctx = WebContextFactory.get(); HttpSession session=ctx.getSession(); TAdmin admin=(TAdmin)adminList.get(0); session.setAttribute(\ session.setAttribute(\ result=\ } }
33
详细设计
}
1.11.2 论坛分类管理
(1) 功能描述
此功能在论坛后台管理中实现,主要为论坛主题界面的分类进行管理。论坛中为了方便管理及用户之间可以更好的交流,不同种类的帖子应有相应的主题板块来进行管理,如:java cs编程、j2ee编程、JSP技术、数据库技术等模块,这样方便用户快速的找到自己想要了解的相关信息。
图 4-11 论坛类别界面
图 4-12 论坛类别添加
(2) 程序实现
34
详细设计
在catelogMana.jsp中实现论坛类别的管理,此功能构建了论坛的版面,在catelogAdd类中定义所需要变量,利用getParameter与数据库表中的属性进行关联,构建论坛类别管理的主要框架。 实现代码如下:
public String catelogAdd() {
TCatelog catelog=new TCatelog(); catelog.setName(name); catelog.setDel(\ catelogDAO.save(catelog); this.setMessage(\操作成功\
this.setPath(\ return \}
public String catelogMana() {
String sql=\
List cateLogList=catelogDAO.getHibernateTemplate().find(sql);
Map request=(Map)ServletActionContext.getContext().get(\ request.put(\ return ActionSupport.SUCCESS; }
public String catelogDel() {
TCatelog catelog=catelogDAO.findById(id); catelog.setDel(\
catelogDAO.attachDirty(catelog);
this.setMessage(\操作成功\
35
详细设计
this.setPath(\ return \ }
1.11.3 用户权限管理
(1) 功能描述
点击左侧的论坛管理员菜单。实现对论坛管理员的管理
(2) 程序实现
编写jsp页面lutanGuanliyuaAdd.jsp,输入表单form表单接受输入的数据。Submit提交按钮完成数据的传送 实现代码如下
public String lutanGuanliyuanAdd() {
TUser user=new TUser();
user.setLoginname(loginname); user.setLoginpw(loginpw);
user.setType(100); user.setDel(\
36
详细设计
userDAO.save(user);
this.setMessage(\操作成功\
this.setPath(\ return \ }
public String lutanGuanliyuanMana() {
String sql=\ List
lutanGuanliyuanList=userDAO.getHibernateTemplate().find(sql); Map
request=(Map)ServletActionContext.getContext().get(\ request.put(\ return ActionSupport.SUCCESS; }
public String lutanGuanliyuanDel() {
TUser user=userDAO.findById(id); user.setDel(\
37
详细设计
userDAO.attachDirty(user);
this.setMessage(\操作成功\
this.setPath(\ return \ }
1.11.4 论坛帖子管理
(1) 功能描述
论坛管理员用超级管理员分配的账号和密码登陆系统。实现论坛帖子的管理,删除帖子等操作。
(2) 程序实现 实现代码如下:
public String zhutiDel() {
38
详细设计
TZhuti zhuti=zhutiDAO.findById(id);
zhuti.setDel(\ zhutiDAO.attachDirty(zhuti);
HttpServletRequest req=ServletActionContext.getRequest(); req.setAttribute(\成功删除\ return \ }
1.11.5 密码修改
(1) 功能描述
实现管理员对密码的修改,管理员登陆系统后台进入密码修改模块,可使管理员进行密码修改。
(2) 程序实现
在userPw.jsp中adminPwEdit实现用户密码的修改,在这里用到了DWR框架中的API,即WebContext ctx = WebContextFactory.get(); 具体的说,这里用到了WebContext和WebContextFactory两个类,而这两个类的作用便是为程序提供访问标准HttpServlet对象的入口。
现代码如下:
public String adminPwEdit(String userPwNew) {
39
详细设计
try { }
catch (InterruptedException e) { }
WebContext ctx = WebContextFactory.get(); HttpSession session=ctx.getSession();
TAdmin admin=(TAdmin)session.getAttribute(\ admin.setUserPw(userPwNew);
adminDAO.getHibernateTemplate().update(admin); session.setAttribute(\
return \ }
40
Thread.sleep(700);
// TODO Auto-generated catch block e.printStackTrace();
结论
第五章 结 论
随着计算机的发展及现代社会中对网络的使用越来越频繁,人们要通过不断学习新的知识来适应现今竞争越发激烈的社会,把自己融入到社会的发展中,因此研发一个论坛网站提供大家分享交流信息,接触更多的知识来充实自我,对于现代社会的人们有着重要的意义。
在明确了网站系统的功能后,设计了整个网站的操作流程,将整个系统分为几个小的模块来逐一完成,这样整个网站系统的设计思路便比较清晰。每一个子模块在设计实现中都遇到了许多不同程度的问题,通过查阅资料书籍及在互联网中询问他人对相关问题的
解决方法,再结合自己的遇到的情况并对程序进行多次的高试最后实现系统功能,深刻的体会到互联网的强大功能,了解通过网络并结合自己的实际情况来解决问题的方法和网络的方便快捷之处。在程序开发的过程中不仅提高了编程能力,同时也体会了一个论坛网站所能实现的真正用处和其必要性。在系统设计过程中,了解到在设计程序之前一定要对所设计的系统有较深刻地了解,并对用户的需求进行认真的分析,并将其分类,这样才能有条不紊的一步步进行详细设计。实现一个论坛网站系统还是有很多要学习的地方,不仅要掌握好相关知识,同时还要了解所要应用的各种工具,将之相结合来运行实现网站的工作。
由于之前对JSP技术及它所要应用的开发环境不是非常了解,因此在程序的开发过程中遇到了较多的困难,但通过对一些相关专业书籍的查阅及在网上搜索所遇问题的解决方法,最后实现了网站的正常运行。
而在开发网站之前,要在网上或书中查看多个在似的网站系统。体会真正的论坛网站的开发流程,并不仅仅是注重代码的实现,在开发之前的用户需求分析更加重要,要根据用户所需要的功能来设计系统,否则最后实现的系统可能并不实用。
41
参考文献
参考文献
[1] 张孝祥、徐明华, JAVA基础与案例开发详解, 清华大学出版社, 2009. [2] 康牧,JSP动态网站开发实用教程,清华大学出版社,2009. [3] 刘亚宾,精通Eclipse--JAVA技术大系,电子工业出版社,2005. [4] 于万波,网站开发与应用案例教程,清华大学出版社,2009.
[5] 杨学瑜,高立军,软件开发过程与项目管理,电子工业出版社,2008. [6] 张洁才,Java web应用开发教程,科学出版社,2005. [7] 戴维尔,JavaScript程序员教程,电子工业出版社,2010.
[8] 黎连业、王华、李淑春,软件测试与测试技术,清华大学出版社,2009. [9] 黄梯云著.管理信息系统.北京.电子工业出版社.2006 .
[10]James D. McCaffrey等著.NET软件测试自动化之道[M]. 北京.电子工业出版
社.2007.
[11]甘仞初著.信息系统开发.北京.经济科学出版社.2007.
[12]马赫著. Dreamweaver MX 2004 网页设计经典108例.中国青年出版社.2005.
42
致谢
[13]唐友国 湛洪波著.JSP网站开发详解.电子工业出版社2008年10月.
[14]卫红春等著.信息系统分析与设计[M].北京.清华大学出版社.2009. [15]张大方 李玮等著.软件测试技术与管理[M].湖南.湖南大学出版社,2007.
[16](美)H.M.Deitel,P.Jdeitel著.Java程序设计教程(第五版). 清华大学出版社.2004. [17]美)Elliotte Rusty Harold著.Java Network Programming.东南大学出版社 .2005. [18]孙卫琴等著.精通struts:基于MVC的Java Web设计与开发. 电子工业出版社.2005. [19]张文静 林琪著.JSP程序设计.人民邮电出版社.2005.
[20]孙卫琴 李洪成著.Tomcat与Java Web开发技术详解. 电子工业出版社.2005. [21](美)John J.Patrick著.SQL基础(第二版).清华大学出版社.2004. [22](美)David flanagan著.Java技术手册(第五版).东南大学出版社.2006. [23]黄裴、徐汀荣,电子商务原理与技术(第二版),科学出版社,2006年10月
43
致谢
致 谢
论文是在导师的指导下完成的。在此期间导师一直对我严格要求,给予我充分的帮助和很多的支持。我衷心的感谢xxx并且对她尽职尽责的指导表示崇高的敬意。同时感谢信息学院全体领导和老师,在大学四年里对我的教育与培养。
44
正在阅读:
bbs论文 - 图文03-25
浅谈幼儿园教玩具制作与使用09-23
法理学第二十八章 法与人权 A03-16
【重庆专升本 文科】英语名词性从句练习题08-13
忠孝仁义礼智信02-18
参观博物馆观后感12-11
我和朋友作文400字06-16
儿童游戏课程教案12-05
大客户中心9月经营分析报告06-06
华为分包商上岗考试ITR答案09-02
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 图文
- 论文
- bbs
- 关于2013-2014学年度重庆大学“五四”表彰第二批(校团委与学生
- 大连理工大学关于国际联合培养本科生的管理办法(试行)
- 超星尔雅 生理健康
- 正文(1)
- 生产建设项目水土保持设施验收报告和鉴定书(最终定稿)
- 甘肃华电瓜州干河口200MW风力发电工程施工组织设计
- 2010年四川省宜宾市中考数学试题含答案=
- KBH连锁专卖店加盟协议
- 最新小学语文教师学科专业知识考试试题
- 关于开展2014年职业技能鉴定报名的通知
- 环境监测期末复习资料
- BRT在中国城市交通中的地位与发展战略探讨
- 2016尔雅魅力科学课后答案
- 2012年国家公务员考试行测真题及解析(完整版) - 图文
- 《公输》课后阅读练习答案
- 自己动手打造 Mac OS X Lion 安装光盘和U盘
- 外研版小学英语第三册Module 4 Unit 1 What are they doing说课
- 《秦兵马俑》教学设计1
- 施工升降机司机复习题
- 春季大型车展活动策划方案