毕业设计(论文)-基于jsp的社区论坛系统的设计与实现.doc_第1页
毕业设计(论文)-基于jsp的社区论坛系统的设计与实现.doc_第2页
毕业设计(论文)-基于jsp的社区论坛系统的设计与实现.doc_第3页
毕业设计(论文)-基于jsp的社区论坛系统的设计与实现.doc_第4页
毕业设计(论文)-基于jsp的社区论坛系统的设计与实现.doc_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

分院名称:软件学院学生学号:0811240326长春师范学院长春师范学院本科毕业论文(设计)本科毕业论文(设计)(理工类)题目:基于jsp的社区论坛系统的设计与实现专业:计算机科学与技术作者姓名:指导教师姓名:指导教师职称:讲师年月长春师范学院本科毕业论文(设计)II长春师范学院本科毕业论文(设计)作者承诺保证书长春师范学院本科毕业论文(设计)作者承诺保证书本人郑重承诺:本篇毕业论文(设计)的内容真实、可靠。如果存在弄虚作假、抄袭的情况,本人愿承担全部责任。论文作者签名:王炳翔日期:年月日长春师范学院本科毕业论文(设计)指导教师承诺保证书长春师范学院本科毕业论文(设计)指导教师承诺保证书本人郑重承诺:我已按有关规定对本篇毕业论文(设计)的选题与内容进行指导和审核,坚持一人一题制,确认由作者独立完成。如果存在学风问题,本人愿意承担指导教师的相关责任。指导教师签名:日期:年月日长春师范学院本科毕业论文(设计)III摘摘要要论坛又称作网络论坛(BBS),全称为BulletinBoardSystem,也叫做电子公告板或者BulletinBoardService(公告板服务),它是因特网(Internet)上的一种电子信息服务系统。它提供一块公共的输入信息区域(电子白板),全世界任何用户都可以在上面书写,可发布信息或提出问题等待被解决。它是一种交互性强,内容丰富更新及时的网络电子信息服务系统,用户在BBS专门的站点上可以获得各种信息服务,发布信息、讨论、聊天等。早期的BBS与一般街头、校园内的公告板性质相同,只不过是用来传播消息而已。随着信息技术的飞速发展,加上由于爱好者们的努力,BBS系统的功能得到了很大的扩充。现如今,用户可以通过BBS随时取得各种最新的信息,也可以通过它来和全世界所有登录的网友讨论各种有趣的话题,还可以发布一些“朋友征集”、“房屋廉价转让”、“招聘人才”等信息招贴公告,更可以召集共同爱好的朋友到聊天室内高谈阔论这个精彩的天地就在身旁,只要您在一台可以访问互联网的计算机旁,就可以进入这个神奇的交流平台,来享用它的种种服务。本套论坛的优点在于它具有强大的可扩展性和可维护性集成了很多常用的功能,非常适合网民创建自己的中小型信息交流平台!关键词关键词:BBS论坛交流网络技术长春师范学院本科毕业论文(设计)IVAbstractForumalsoknownasNetworkForum(BBS)calledtheBulletinBoardSystemalsoknownaselectronicbulletinboardsorBulletinBoardService(bulletinboardservice)itisanelectronicinationservicesystemontheInternet(Internet).Itprovidesapublicarea(whiteboard)theworldanyusercanwriteintheaboveyoucanpublishinationoraskquestionswaitingtobesolved.Itisaninteractivecontent-richupdatetimelynetworkofelectronicinationservicesBBSdedicatedsitecanaccessinationservicesinationdiscussionchatetc.EarlyBBSandgenerallythestreetswithinthecampusbulletinboardofthesamenaturebutisusedtospreadthemessage.WiththerapiddevelopmentofinationtechnologycoupledwiththeeffortsofenthusiaststheBBSsystemfunctionhasbeengreatlyexpanded.NowtheusercanatanytimethroughBBSforthelatestinationyoucanalsobyitandallovertheworldregistereduserstodiscussvariousinterestingtopicsyoucanalsoreleasesomeoftheFriendsCollectionlow-costhousingforsaleposterannouncementofrecruitmentinationandmoremayconvenethecommonloveofafriendtothechatroomtalk.thiswonderfulworldonthesidenexttothecomputeraslongasyoucaninaaccesstotheInternetyoucanenterthismagicalexchangeplattoenjoyallitsservices.ForuminthissetisthatithasstrongscalabilityandmaintainabilityandintegratedalotofcommonlyusedfunctionsidealforInternetuserstocreatetheirownsmallandmedium-sizedinationexchangeplat!KeyWords:BBSforumExchangeNetworktechnique长春师范学院本科毕业论文(设计)V目目录录承诺保证书承诺保证书.II摘摘要要.IIIABSTRACT.V第一章第一章绪绪论论.11本课题的来源及研究意义.11.1本课题的来源.11.2本课题的研究意义.1第二章第二章系统分析与总体设计系统分析与总体设计.22.1需求分析22.2可行性分析22.3系统结构设计与功能分析.32.3.1系统结构设计.42.3.2前台功能结构设计42.3.3后台功能结构设计42.4系统用途介绍.52.5开发语言综述.52.5.1java编程语言.52.5.2JSP语言介绍62.5.3Struts2框架介绍.62.5.4SQL语言介绍.72.5.5html与CSS网页编程语言.72.6系统流程图.82.7系统开发工具和运行环境.92.8MySQL数据库.92.8.1JDBC技术.92.8.2MySQL数据库介绍.10第三章第三章数据库设计数据库设计113.1数据库设计.113.1.1关系型数据库与E-R图.11长春师范学院本科毕业论文(设计)VI3.1.2数据库表及关系建立.123.1.3详细数据库及表结构设计.12第四章第四章系统的详细设计与实现系统的详细设计与实现.154.1系统界面设计.154.2前台设计.184.2.1普通用户浏览.184.2.2新用户注册模块.184.2.3会员登录模块.194.2.4密码保护模块.204.2.5密码修改模块.204.2.6会员资料修改.204.2.7会员发表新主题模块.214.2.8会员回帖模块.214.3后台设计214.3.1管理员登录.214.3.2会员资料管理.224.3.3密码保护管理.234.3.4帖子管理.23第五章第五章系统的测试与调试系统的测试与调试245.1测试概述.245.1.1软件测试的目的.245.1.2测试的环境.245.2测试与调试.25结结论论26参考文献参考文献27附录附录128附录附录230致致谢谢31长春师范学院本科毕业论文(设计)1第一章第一章绪绪论论1本课题的来源及研究意义本课题的来源及研究意义1.1本课题的来源本课题的来源当今社会正处在信息时代,先进的技术潮席卷全球。网络技术正以前所未有的速度也铺天盖地而来,它以其独特的优势在信息化的过程中不断发展,为了给信息时代的人们交流提供更方便的服务,无论是QQ、论坛等聊天交流工具都逐步发展日益走向成熟,而论坛以其独特的魅力在激烈的竞争中站据了一席之地,它结合各种先进的软件技术造就了这个快捷、界面友好的交流系统,实现了一个功能相对齐全的网络多功能聊天系统,世界各地的网友可以自由地提出问题以及帮助他人解决问题,或者交流经验,随时随地可以完成一个虚拟世界的信息大互动。随着互联网日益深入我们的日常社会生活,BBS开发技术发展至今,从CGI到ASP再到PHP已经日趋成熟,功能也更加丰富强大,由于携着Sun公司的Java技术所实现的“一次编写,到处运行”的优势,使继承这一衣钵的JSP技术越来越受到人们的注视,而BBS作为一种对外的展示窗口,进行内外信息交流,已成为大多数网络用户的广泛需要。为了进行更好的交流,用户想就自己的专业和爱好能和其他的用户随时随地的进行及时专业的交流,这就逐步产生了论坛,这样大家就可以在网络这个虚拟的空间中更方便地实现交流,BBS论坛是我们在这个时代中生活的重要交流工具。所以我选择使用JSP+Struts2开发BBS论坛这一课题作为毕业设计。1.2本课题的研究意义本课题的研究意义本文提出了设计的是目前比较流行、常用的基于Sturts2框架的BS体系结构的BBS论坛本套论坛的优点在于它具有较好的可扩展性、可维护性、常用性且非常适合各种网民创建自己的中小型网络信息交流平台!长春师范学院本科毕业论文(设计)2第二章第二章系统分析与总体设计系统分析与总体设计2.1需求分析需求分析1功能性需求开发BBS论坛系统的目的是为提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的交流社区。因此,BBS论坛系统最基本的功能首先是用户发表主题,其次是其他用户根据主题而发表自己的观点等。另外,为了保证论坛社区交流的整齐性和规章性,系统还专门提供用户注册和登录的功能。只有注册的用户登录后才能够发表和回复主题,未注册者有时也叫“游客”只能浏览主题的信息。根据用户的需求及以上的简单分析,BBS论坛需要具备前台功能和后台功能:(1)系统前台功能:普通用户(未注册用户):1.新用户注册2.浏览帖子3.搜索贴子论坛会员(已注册用户):1.会员登陆2.资料修改3.密码保护4.找回密码(用户忘记密码)5.浏览帖子6.搜索贴子7.发表帖子(发表主题)8.回复帖子9.用户注销(退出)(2)系统后台功能:系统管理员(必须登陆管理页面):1.管理员资料管理:管理员信息2.会员信息管理:会员信息浏览、删除;会员账号屏蔽(使会员只能浏览而无权发帖)3.密码管理(取消会员密码保护)4.帖子管理:主题增加和删除;帖子内容评论与删除;设置精品主题(加精处理)2非功能性需求(1)平台限制:基于WindowsXP系统,不需要安装任何其他软件。(2)操作方式:无限制,任何网络浏览器。2.2可行性分析可行性分析可行性分析是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问长春师范学院本科毕业论文(设计)3题是否能够解决。1技术可行性技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。本BBS论坛管理系统采用了JSP开发语言结合Struts2框架并采取前最新的BrowserServer(浏览器服务器)模式进行开发。BS体系结构比传统ClientServer(客户机服务器)体系结构增强了许多优点,而且又紧密的结合了InternetIntranet(国际互联网企业内部互联网)技术,这都是网络技术发展的大趋势。数据库服务器选用MySQL数据库,它能够处理相对大量数据,同时保持数据的完整性,并提供许多高级管理功能,它的灵活性、安全性和易用性为数据库编程提供了良好的条件。那么本系统的软件开发平台条件已基本可行。硬件方面,在电子计算机飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台足以满足此系统开发的各种的需要。2经济可行性经济可行性主要是对项目的经济效益进行评估,本系统模拟的是提供一个供网络用户进行信息交流的平台,为广大用户提供广阔的探讨空间。但实际只是用于个人的设计,以模拟为主,不存在过大的资金的流动,所以在经济上是可行的。3社会可行性随着网络技术、Internet技术的快速发展,BBS论坛已成为人们彼此沟通、交流信息的主要方式和不可缺少的工具。在论坛上,人们可以对某一领域的问题进行互交探讨,论坛上的其用户可以根据自己的经验发表意见或浏览了解信息。BBS论坛拉近了人们之间的距离,它早已成为人们网上生活的必备工具。所以BBS论坛对当今社会的发展是比较重要的,对人们进行信息的传递也是不可或缺的。2.3系统的结构设计与功能分析系统的结构设计与功能分析2.3.1系统结构设计系统结构设计本文主要实现了基于BS模式的一种JSP结合Struts2框架的论坛的设计与实现,主要功能是实现客户端和客户端通过服务器的动态交互。人们通过浏览器就可以访问各种需要的论坛主页,并且保证服务器的安全。数据库采用小巧、易用、功能强大的的mysql数据库。该论坛功能较齐,除了拥有一般论坛的功能之外还加入了一些独特的功能,如精帖子处理、强大的搜索、封账号功能等。本网站按照软件项目开发的流程进行,对于网站开发的可行性分析、需求分析、概要设计、详细设计以及对网站的测试都有详细的论述和实现过程。长春师范学院本科毕业论文(设计)4用户资料操作找回密码搜索帖子查看根贴内容用户登录新用户注册用户注销(退出)发表主题回复帖子查看自己发表的帖子BBS论坛前台结构2.3.2前台功能结构设计前台功能结构设计普通用户(未注册用户):1.新用户注册2.浏览帖子3.搜索贴子论坛会员(已注册用户):1.会员登陆2.资料修改3.密码保护4.找回密码(用户忘记密码)5.浏览帖子6.搜索贴子7.发表主题8.回复帖子9.用户注销(退出)前台功能结构图如图2.3.2所示:图2.3.2BBS前台功能结构图2.3.3后台功能结构设计后台功能结构设计系统管理员(必须登陆管理页面):1.管理员资料管理:管理员信息2.会员信息管理:.会员信息浏览、删除;会员账号屏蔽(使会员只能浏览而无权发帖)3.密码管理(取消会员密码保护)4.帖子管理:主题增加和删除;帖子内容评论与删除;设置精品主题(加精处理)后台功能结构图如图2.3.3所示:长春师范学院本科毕业论文(设计)5资料管理帖子管理会员管理密码管理BBS论坛后台结构图2.3.3BBS后台功能结构图2.4系统用途介绍系统用途介绍像BBS这种典型的后台数据库管理类型系统,拥有数据流量特别大的网络管理任务,必须要满足使用方便、操作灵活的操作理念。本系统在设计时对用户使用满足以下几个目标:1采用人机对话的操作方式,界面设计美观友好,信息查看灵活、快捷、准确,直观、方便、并且数据存储安全可靠。2全面展示系统内所有分类的帖子,并进行分页显示机制。3为用户提供一个方便、快捷的主题信息查看功能。4实现在线发表帖子功能。5提供登录模块,主要用开管理员登录系统和发表帖子时的用户留下用户的一些信息。6用户随时都可以查看自己发表的帖子。7对用户输入的数据,系统进行较为完善的检验,尽可能排除普遍的人为的错误。8.对于胡乱散播非法言论等会员采取封号警告处理。9系统运行稳定安全可靠。2.5开发语言综述开发语言综述2.5.1java编程语言编程语言本论坛开发所使用的核心语言就是java语言,java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由SunMicrosystems公司于1995年5月推出长春师范学院本科毕业论文(设计)6的Java程序设计语言和Java平台(即JavaSEJavaEEJavaME)的总称。Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。Java更具备了显著优势和广阔前景。Java语言的主要特性:1、Java语言是简单的。Java语言的语法与C语言和C+语言很接近,Java丢弃了C+中很少使用的、很难理解的、令人迷惑的那些特性,特别地,Java语言不使用指针,并提供了自动的废料收集。2、Java语言是一个面向对象的。Java语言全面支持动态绑定,而C+语言只对虚函数使用动态绑定。3、Java语言是分布式的。Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(javanet)。4、Java语言是健壮的。Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。5、Java语言是安全的。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。6、Java语言是体系结构中立的。它可以在实现这个Java平台的任何系统中运行。7、Java语言是可移植的。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSIC实现的。8、Java语言是解释型的。在运行时,Java平台中的Java解释器对java字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。9、Java是高性能的。与那些解释型的高级脚本语言相比,Java的确是高性能的。10、Java语言是多线程的。11、Java语言是动态的。Java语言的设计目标之一是适应于动态变化的环境。2.5.2JSP语言介绍语言介绍JSP(JavaServerPages)是由Sun公司倡导,许多别的公司参与一起创建的一种新动态网页技术标准,类似其他技术标准。在传统的网页HTML文件(.htm.html)中加入Java程序片断(Scriptlet)和JSP标签,构成了JSP网页(.jsp)。JSP称为Server-sideLanguage。所以被许多人认为是未来最有发展前途的动态网站技术之一。长春师范学院本科毕业论文(设计)72.5.2Struts2框架介绍框架介绍Struts2是Struts的下一代产品,是在struts和WebWork的技术基础上进行了合并的全新的Struts2框架。其全新的Struts2的体系结构与Struts1的体系结构的差别巨大。Struts2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts2可以理解为WebWork的更新产品。2.5.2SQL语言介绍语言介绍SQL是高级的非过程化编程语言,是沟通数据库服务器和客户端的重要工具,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以,具有完全不同底层结构的不同数据库系统,可以使用相同的SQL语言作为数据输入与管理的接口。它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使它具有极大的灵活性和强大的功能,在多数情况下,在其他语言中需要一大段程序实现的功能只需要一个SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。SQL语言得到了广泛的应用。如今无论是像Oracle、Sybase、DB2、Inix、SQLServer这些大型的数据库管理系统,还是像VisualFoxpro、PowerBuilder这些PC上常用的数据库开发系统,都支持SQL语言作为查询语言。2.5.2html与与css网页编程语言网页编程语言(1)html语言的介绍:超文本标记语言,即HTML(HypertextMarkupLanguage),是用于描述网页文档的一种标记语言。在WWW上的一个超媒体文档称之为一个页面(page)。作为一个组织或个人在万维网上放置开始点的页面称为主页Homepage,或首页,主页中通常包括有指向其他相关页面或其他节点的指针(超级链接)。HTML是一种规范,一种标准,它通过标记符号来标记要显示的网页中的各个部分。HTML之所以称为超文本标记语言,是因为文本中包含了所谓“超级链接”点。所谓超级链接,就是一种URL指针,通过激活(点击)它,可使浏览器方便地获取新的网页。Html的主要特点如下:简易性、可扩展性、平台无关性。长春师范学院本科毕业论文(设计)8资料管理帖子管理会员管理是否登录是否进入后台后台首页退出登录管理员密码管理(2)CSS的介绍:CSS是英语CascadingStyleSheets(层叠样式表单)的缩写,它是一种用来表现HTML或XML等文件式样的计算机语言。CSS目前最新版本为CSS3能够真正做到网页表现与内容分离的一种样式设计语言。相对于传统HTML的表现而言,CSS能够对网页中的对象的位置排版进行像素级的精确控制,支持几乎所有的字体字号样式,拥有对网页对象盒模型的能力,并能够进行初步交互设计,是目前基于文本展示最优秀的表现设计语言。2.6系统流程图系统流程图1BBS论坛的系统后台流程图如图2.6.1所示:2BBS论坛的系统前台流程图如图2.6.2所示:浏览、查看帖子搜索需要的贴子查看主题内贴子查看帖子内容发表新帖子回复帖子发表主题删除帖子密码管理置为精华贴封除账号新用户注册是否登录是否登录提示无权操作一般用户访问管理员登陆是否否前台首页用户登录是修改个人信息回复帖子长春师范学院本科毕业论文(设计)92.7系统开发工具和运行环境系统开发工具和运行环境(1)开发环境操作系统:WindowsXP计算机硬件:Pentium2.4G、2G内存、80G硬盘开发语言:java编程语言网页设计器:Dreamweaver软件编译器:MyEclipse5.0以上均可Web服务器:Tomcat5.0以上均可Java开发包:JDK1.5以上均可数据库:MySQL浏览器:IE6.0以上均可分辨率:最佳效果为1024768像素(2)运行环境服务器端:操作系统:WindowsXPWeb服务器:Tomcat5.0以上均可数据库:MySQL浏览器:IE6.0以上均可分辨率:最佳效果为1024768像素客户端:浏览器:IE6.0以上均可分辨率:最佳效果为1024768像素2.8Mysql数据库数据库2.8.1JDBC技术技术数据库通信接口采用JDBC(JavaDatabaseConnectivity,Java数据库连接)。JDBC是一组API,定义了用来访问数据库源的标准JAVA类库,使用这种类库可以使用一种标准的方法、方便地访问数据库资源。JDBC是用于执行SQL语句的Java应用程序接口,由一组用Java语言编写的类与接口组成,在JSP中将使用JDBC来访长春师范学院本科毕业论文(设计)10问数据库。JDBC是一种规范,它让各数据库厂商为Java程序员提供标准的数据库访问类和接口,这样就使得独立于DBMS的Java应用程序的开发工具和产品成为可能。它的目标是使应用程序开发人员使用JDBC可以连接任何提供了JDBC驱动程序的数据库系统,这样就使得程序员无须对特定的数据库的特点有过多的了解,从而大大简化了和加快了开发过程。另外,JDBC对数据库的访问也具有平台无关性2.8.2mysql数据库介绍数据库介绍MySQL是现在流行的关系数据库中其中的一种,相比其它的数据库管理系统(DBMS)来说,MySQL具有小巧、功能齐全、查询迅捷等优点,关键的是它是免费的,对于一般中小型,甚至大型应用都能够胜任。MySQL具有以下特点:(1)速度。毋庸置疑,对于MySQL来说处理数据的速度优势是它之所以在如今的IT市场上站住脚的原因之一。(2)MySQL更适宜在Windows环境下运行。MySQL作为一个本地的Windows应用程序运行(在NTWin2000WinXP下,是一个服务),在Windows运行中MySQL更加的稳定。(3)MySQL使用了线程在不同线程之间的环境转换和访问公用的存储区域显然要比在不同的进程之间要快得多。(4)MySQL可以适应247运行。在绝大多数情况下,你不需要为MySQL运行任何清除程序。(5)MySQL在权限系统上更为完善。MySQL允许你定义一整套的不同的数据级、表级和列级的权限。(6)由于MySQL4.0.2-alpha开始支持事务的概念,因此事务对于MySQL不再仅仅成为劣势。相反,因为MySQL保留无事务的表类型。这就为用户提供了更多的选择。(7)MySQL的MERGE表提供了一个独特管理多个表的方法。(8)MySQL的myisampack可以对只读表进行压缩,此后仍然可以直接访问该表中的行。长春师范学院本科毕业论文(设计)11第三章第三章数据库设计数据库设计.1关系型数据库与关系型数据库与E-RE-R图图数据库的设计数据库的设计,在程序的开发中起着非常重要的作用,它往往决定了在以后的开发工作中怎样进行程序编码。一个合理、完整、到位的数据库设计可降低程序的复杂性,使程序开发的过程更容易,思路更清晰,以后维护更简便。本论坛系统是一个中小型的信息网站,若考虑开发成本、用户信息量、客户需求等问题,采用MySQL作为项目中的数据库。MySQL是一种客户服务器模式的关系型数据库,它具有很比较强大的数据完整性、可编程性、可伸缩性、可管理性等,还具有完备的功能。MySQL数据库可以存储大量的数据,并对数据进行合理地逻辑布局,应用数据库对象可以对数据进行复杂地操作。同时它也提供了JDBC编程接口,这样可以很方便地应用Java编程语言来操作数据库。E-R模型的基本概念E-R模型是对现实世界的一种抽象。ER图概念化地构建实体间关系的模型,这使得它们区别于数据库模型图。ER图的讲求的理念是项目所有参与者能理解ER图。E-R图的组成:(1)实体:现实世界中的事物;(2)属性:事物的特性;(3)联系:现实世界中事物间的关系。实体集的关系有一对一、一对多、多对多的联系。本BBS论坛系统的ER图:论坛主题所属回复帖子对应帖子n1m1用户管理员浏览管理mnm1长春师范学院本科毕业论文(设计)123.1.2数据库表及关系建立数据库表及关系建立现在依次建立表的结构:1.会员基本资料表2.会员密码信息表3.论坛主题表4.论坛帖子表对应关系:(1)会员信息表和论坛主题表是一对多的关系即一个用户可以发表多篇文章主题和回复。(2)论坛主题表和论坛帖子表是一对多的关系在一个主题下可以有多个帖子回复。3.1.3详细数据库及表结构设计详细数据库及表结构设计(1)会员基本信息表:会员基本资料表中存放的是会员注册或者登陆时所需要或者记录用户的基本信息如登陆名、密码等。会员基本信息表的建立主要是记录用户最常用的一些信息和会员、管理员之间权限控制等数据。表3.1user表的结构字段名数据类型是否为空是否主键默认值描述user_idint(100)NoYes会员ID(自动编号)userCodevarchar(50)NoNULL会员账号userNamevarchar(50)YesNULL会员称呼userpassvarchar(50)NONULL会员密码sexvarchar(10)YesNULL会员性别emailvarchar(40)YesNULL会员邮箱identityint(10)YesNULL会员身份(识别封号)anthonyInt(4)YesNULL会员权限(区别管理员)长春师范学院本科毕业论文(设计)13(2)会员密码信息表会员密码信息表中存放的是会员的密码相关的信息,如生日、邮箱等,建立此表的目的是当会员忘记密码是完整的找回密码。表3.2pass表的结构字段名数据类型是否为空是否主键默认值描述pass_idint(10)NoYesID(自动编号)userCodevarchar(50)YesNULL会员登录账号userpassvarchar(50)YesNULL会员登录密码birthdayvarchar(50)YesNULL会员生日emialvarchar(50)YesNULL会员邮箱(3)论坛主题表:论坛主题表存放的是会员所发表的主题信息包括主题名称、内容,也包括发表时间等数据。表3.3title表的结构字段名数据类型是否为空是否主键默认值描述title_idint(2)NoYes主题ID(自动编号)titleNamevarchar(100)YesNULL主题名称textmediumtextYesNULL主题内容use_idInt(40)YesNULL会员idtimevarchar(30)YesNULL发表时间(4)论坛帖子表:论坛帖子表是存放的是论坛中对主题回复的信息。其内容包括帖子内容、回复时间等数据。表3.4paste表的结构字段名数据类型是否为空是否主键默认值描述Paste_idint(2)NoYes帖子ID(自动编号)ptextmediumtextYesNULL帖子内容userCodevarchar(40)YesNULL会员账号(便于显示)title_idInt(40)YesNULL主题idtimevarchar(30)YesNULL回复时间长春师范学院本科毕业论文(设计)14数据库各个表主键、外键之间的关系与联系如图所示:passPKpass_idFKuserCodeuserpassbirthdayemailuserPKuser_idFK1userCodeusernameuserpasssmailidentityanthoritypastePKpaste_idptextFK1userCodeFK2title_idtimetitlePKtitle_idtitleNametextFK1user_idtime长春师范学院本科毕业论文(设计)15第四章第四章系统的详细设计与实现系统的详细设计与实现3.1.2系统界面设计系统界面设计对于论坛这类以传递信息为主,兼容聊天功能的交流系统来说,用户界面设计起着非常重要的作用,因为一个交互良好的界面能够加深浏览者的印象,并且吸引他们的眼球。页面的设计和制作就是用Dreamweaver软件进行,用html语言搭好基本的框架,然后用CSS完成页面的美工效果。当然,在网页上加入图片也是一个重要的方法,无论是动态图片还是静态绚烂的图片都能使页面做的引人入胜,散发出魅力。无论使用何种方法对画面中的元素进行搭配,我总结了以下几个基本原则:1.统一,是指页面设计的整体性,一致性。设计作品的整体效果是至关重要的,切勿将部分孤立分散,那样会使画面呈现出一种纷杂凌乱的视图效果。2.联系,主要指页面和页面之间的相互关系。设计中应利用各组成部分在内容上的相互呼应,并注意整个页面与局部页面设计风格的一致性,以便实现视觉上的连贯效果,使整个页面和各个部分组合极为融洽,浑然天成,无缝连接。3.板块,将页面分成若干板块,各板块之间在视觉上又有不同,这样可以使观者不至于看的视觉疲惫。在信息量很多时,就要注意到将画面切割成有效的成分。分割不仅是表现形式的需要,从某种角度来讲,分割也被视为对于页面内容的一种分类。4.协调,是指整个页面符合美的法则,使页面有艺术感,使设计更加富有生气。如果一件视图设计仅仅是色彩、图形、线条等的随意混合,不讲求搭配的美感,那么最后给人呈现的不但没有“生命感”,而且也连基本需要传达给用户的信息也无法实现。和谐不仅要看整体结构形式,而且要看成品形成的视觉效果是否与用户进行一种互交,满足用户的视觉感受,改善用户体验,与之形成一种沟通,让用户乏而不累,乐在其中。在功能上,我主要提到分页处理机制,分页处理可以改善用户视觉体验。以上这些都是页面设计能否成功的关键。以下是几个主要的界面截图:长春师范学院本科毕业论文(设计)16主界面:登录界面:长春师范学院本科毕业论文(设计)17发帖页面:管理页面:长春师范学院本科毕业论文(设计)184.24.2前台设计前台设计.1普通用户浏览普通用户浏览普通用户浏览就是既不是本论坛的注册会员,又不是本论坛的管理员的其他“游客”前来访问则可以随意浏览本论坛内的任何主题和主题内的帖子,还可以搜索相关内容的帖子。这里的“游客”称作普通用户,他没有发新主题和回复帖子的权限,也就是说除了基本的浏览之外没有任何可使用的共能。.2新用户注册模块新用户注册模块没有会员帐号的普通用户可以通过此模块添加会员信息添加成功后便成为本论坛会员,那么下一步就可以登陆论坛使用会员特有的功能,如修改会员基本资料、申请密码保护机制,创建新主题,发表新帖子等。页面效果如图:长春师范学院本科毕业论文(设计)19注册部分设计原理:用户注册所使用的技术就是用Struts2框架所提供的前台页面的表单标签(形如格式)将用户填好的注册信息提交到后台于Struts2提供的Action类(后台数据处理类,也可以称作逻辑层),然后由Action的特有机制(经过Struts2底层封装后的类)结合dao类中的sql语句完成对提交数据存入数据库的操作。注意事项:用户对信息提交时候的数据格式校验(用javascript实现).3会员登录模块会员登录模块会员可以通过此模块对论坛进行登陆登陆后便可以使用所有的会员功能比如发帖回复等等。登录部分设计原理:会员登录过程就是用户将登录的信息,主要是登录账号和密码,从前台提交至后台的处理类(逻辑层),后台得到前台的数据后,将其作为参数并入sql语句被jdbc的Statement类的cute()函数执行在数据库中查询,将查询的结果由ResultSet类的对象传送至处理类,若查询结果和用户输入的数据匹配那么说明用户输入正确,用户进入会用版面,如果错误系统给予提示,然后返回登录页面等待用户下一步操作。注意事项:登录时提交时数据的格式校验(用javascript实现)核心代码举例(登录验证函数):publicbooleanchecklogin(StringuserCodeStringuserpassintidentity)throws长春师范学院本科毕业论文(设计)20SQLExceptionconnect()sql=selectfromuserwhereuserCode=+userCode+anduserpass=+userpass+andidentity=+identity+rs=stmt.cuteQuery(sql)if(rs.next()rs.close()conn.close()stmt.close()returntrueelsers.close()conn.close()stmt.close()returnfalse.4密码保护模块密码保护模块密码保护,就是防备用户如果忘记密码之后还可以吧密码找回的功能。这个功能现在广泛用于论坛系统之中,因为由于如今网络账号和密码众多,用户忘记密码也是常有之事。页面效果图:长春师范学院本科毕业论文(设计)21密码保护部分设计原理:密码保护申请就是把连同账号等信息一并提交至后台,然后又后台存入数据库中。找回密码的原理就是通过用户输入数据的正确性,逐步的与数据库中的会员信息匹配然后返回给用户所找的原始密码。注意事项:验证码的实现(用javascript提供的专门函数).5密码修改模块密码修改模块修改密码是很常用的功能,设计起来也很容易,即用户由于一些原因不使用原始密码而重新定义的新密码的过程。实现就是将原数据库里相对应的密码修改即可。.6会员资料修改会员资料修改对于已注册的会员在登陆后可以通过此模块对他们的基本资料如:会员名称、性别、邮箱等资料进行修改。这个模块也很容易实现,其原理基本与修改密码模块相似,都是根据会员账号然后将会员新输入准备修改的细信息传入后台类,然后再数据库中进行修改。.7会员发表新主题模块会员发表新主题模块对于已注册的会员在登陆后便可以会员的身份使用所有被提供的功能最主要的就是发表一个新主题然后滔滔不绝自己的大作发表成功后其他登录的会员便可以本论坛中看这个主题和主题下的内容并等待其他会员对其回复、评价等。发表新主题部分设计原理:发主题的设计其实也很简单,共分两个步骤:长春师范学院本科毕业论文(设计)221.用户在前台也面将自己写的主题和主题的内容提交给后台,后台将这些数据依次存入到数据库中。2.与此同时,页面跳转到主版面的时候后台对数据库的进行一次刷新,将刷新后的信息重新调到页面,显示给所以用户。效果页面图示:注意事项:刷新过程中重复提交(应用struts2的拦截器处理).8会员回帖模块会员回帖模块会员除了发表主题之后还可查看其他会员发表的相关文章并可以对任意帖子进行回复。帖子回复原理和发表新主题相似。4.34.3后台设计后台设计.1管理员登录管理员登录管理员登录部分的设计和会员登录过程的原理基本是一样的,代码编写过程也都是大同小异。注意事项:便于区分不同权限(管理员登录界面和会员登录界面不同)页面图示:长春师范学院本科毕业论文(设计)23点击“管理员”的超链接便可以进入登录界面.2会员资料管理会员资料管理会员资料管理就是管理员对所有注册的会员所有信息一览和相关的处理。这里有两个管理手段:1.将会员的注册信息全部删除,也就是该用户不再是本论坛的会员。2.对会员进行封号处理。封号处理的目的是:如果该会员经常发出内含非法内容的帖子,先封号对其进行警告,若再无非法举动责复原,但经发现情节继续严重者直接销毁其账号。被封号的会员只能浏览不能发表新主题,但是可以回复帖子,直到解封后才能回复正常。封号处理是对本论坛安全性和规范性的一个特殊的设计,这样可以约束会员对论坛的支持度。页面图示:注意事项:已被封号的会员不能再被封,正常会员不能做解封处理(标记处理).3密码保护管理密码保护管理密码保护管理就是取消会员对密码的保护申请,即从数据库中删除相对应的数据长春师范学院本科毕业论文(设计)24即可,实现起来很简

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论