




已阅读5页,还剩38页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
内容摘要在当下网络已比较发达的今天。各类BBS系统都比较的成熟。在此本人以学习的心态,以检验大学期间所学知识为目的,从实践出发设计本BBS系统。本系统是基于Java语言的B/S架构模式的动态1BBS论坛系统。并采用当下较为成熟的B/S框架,如Struts2(Web应用程序框架)、Hibernate(数据库连接框架)。考虑到本系统为学生系统,所以数据库选择体积小、功能强到的MySQL数据库。矚慫润厲钐瘗睞枥庑赖。本论文按软件生命周期法设计的。较详细的进行系统可行分析、系统需求分析、总体设计、详细设计、系统实现、系统测试与维护的阐述。并通过文字、图形、表格的形式较为详细介绍本系统整体设计与架构。聞創沟燴鐺險爱氇谴净。关键字:BBS、java、JavaWeb、Web、Browser/Server模式目 录1.1 BBS论坛现况5残骛楼諍锩瀨濟溆塹籟。1.2研究本课题的意义5酽锕极額閉镇桧猪訣锥。2、系统可行性分析5彈贸摄尔霁毙攬砖卤庑。2.1技术可行性分析5謀荞抟箧飆鐸怼类蒋薔。2.2经济可行性分析5厦礴恳蹒骈時盡继價骚。2.3操作可行性分析6茕桢广鳓鯡选块网羈泪。3、本系统慨况6鹅娅尽損鹌惨歷茏鴛賴。3.1本系统的研究思路6籟丛妈羥为贍偾蛏练淨。3.2本系统技术路线6預頌圣鉉儐歲龈讶骅籴。3.3本系统的技术难度6渗釤呛俨匀谔鱉调硯錦。3.4本系统的开发环境6铙誅卧泻噦圣骋贶頂廡。4、需求分析7擁締凤袜备訊顎轮烂蔷。4.1系统需求分析7贓熱俣阃歲匱阊邺镓騷。4.2功能需求分析7坛摶乡囂忏蒌鍥铃氈淚。4.3实体-联系分析8蜡變黲癟報伥铉锚鈰赘。5、系统总体设计9買鲷鴯譖昙膚遙闫撷凄。5.1搜索模块设计9綾镝鯛駕櫬鹕踪韦辚糴。5.1.1高级搜索设计9驅踬髏彦浃绥譎饴憂锦。5.1.2主题搜索设计10猫虿驢绘燈鮒诛髅貺庑。5.2用户管理模块设计10锹籁饗迳琐筆襖鸥娅薔。5.2.1游客设计10構氽頑黉碩饨荠龈话骛。5.2.2普通会员设计11輒峄陽檉簖疖網儂號泶。5.2.3版主设计11尧侧閆繭絳闕绚勵蜆贅。5.2.4超级版主设计11识饒鎂錕缢灩筧嚌俨淒。5.2.5管理员设计11凍鈹鋨劳臘锴痫婦胫籴。5.3分类管理模块设计12恥諤銪灭萦欢煬鞏鹜錦。5.4版面管理模块设计12鯊腎鑰诎褳鉀沩懼統庫。5.5文章管理模块设计13硕癘鄴颃诌攆檸攜驤蔹。5.5.1主题管理模块设计13阌擻輳嬪諫迁择楨秘騖。5.5.2回复管理模块设计13氬嚕躑竄贸恳彈瀘颔澩。5.6权限管理模块设计14釷鹆資贏車贖孙滅獅赘。5.7对象模型设计14怂阐譜鯪迳導嘯畫長凉。5、系统详细设计14谚辞調担鈧谄动禪泻類。5.1数据库设计15嘰觐詿缧铴嗫偽純铪锩。5.2有关用户功能设计18熒绐譏钲鏌觶鷹緇機库。5.2.1用户注册18鶼渍螻偉阅劍鲰腎邏蘞。5.2.2用户登陆18纣忧蔣氳頑莶驅藥悯骛。5.3分类有关功能设计19颖刍莖蛺饽亿顿裊赔泷。5.3.2新增分类19濫驂膽閉驟羥闈詔寢賻。5.3.3编辑分类20銚銻縵哜鳗鸿锓謎諏涼。5.3.4删除分类20挤貼綬电麥结鈺贖哓类。5.3.5上移与下移分类20赔荊紳谘侖驟辽輩袜錈。5.3.6分类的超级版主操作21塤礙籟馐决穩賽釙冊庫。5.4版面有关功能设计21裊樣祕廬廂颤谚鍘羋蔺。5.4.1新增版面21仓嫗盤紲嘱珑詁鍬齊驁。5.4.2删除版面22绽萬璉轆娛閬蛏鬮绾瀧。5.4.3编辑版面22骁顾燁鶚巯瀆蕪領鲡赙。5.4.5上移与下移版面22瑣钋濺暧惲锟缟馭篩凉。5.4.6版面的版主操作22鎦诗涇艳损楼紲鯗餳類。5.5主题有关功能设计23栉缏歐锄棗鈕种鵑瑶锬。5.5.1发表主题23辔烨棟剛殓攬瑤丽阄应。5.5.2删除主题23峴扬斕滾澗辐滠兴渙藺。5.5.3编辑主题24詩叁撻訥烬忧毀厉鋨骜。5.5.4锁定/屏蔽/解锁/主题24则鯤愜韋瘓賈晖园栋泷。5.5.5搜索主题24胀鏝彈奥秘孫戶孪钇賻。5.6回复有关功能设计25鳃躋峽祷紉诵帮废掃減。5.6.1发表回复25稟虛嬪赈维哜妝扩踴粜。5.6.2删除回复26陽簍埡鲑罷規呜旧岿錟。6、系统实现26沩氣嘮戇苌鑿鑿槠谔應。6.1数据库连接26钡嵐縣緱虜荣产涛團蔺。6.2系统主要功能模块设计27懨俠劑鈍触乐鹇烬觶騮。6.2.1主页显示设计27謾饱兗争詣繚鮐癞别瀘。6.2.2发表主题模块设计28呙铉們欤谦鸪饺竞荡赚。6.2.3回复主题模块设计29莹谐龌蕲賞组靄绉嚴减。6.2.4 搜索主题操作设计29麸肃鹏镟轿騍镣缚縟糶。6.2.5用户注册操作设计30納畴鳗吶鄖禎銣腻鰲锬。6.2.6用户登陆操作设计31風撵鲔貓铁频钙蓟纠庙。6.3系统后台管理模块设计31灭嗳骇諗鋅猎輛觏馊藹。6.3.1版面管理31铹鸝饷飾镡閌赀诨癱骝。6.3.2用户管理32攙閿频嵘陣澇諗谴隴泸。七、系统测试与维护32趕輾雏纨颗锊讨跃满賺。7.1系统测试32夹覡闾辁駁档驀迁锬減。7.1.1系统测试方法33视絀镘鸸鲚鐘脑钧欖粝。7.1.2系统功能测试33偽澀锟攢鴛擋緬铹鈞錠。7.2系统维护33緦徑铫膾龋轿级镗挢廟。八、总结33騅憑钶銘侥张礫阵轸蔼。8.1该系统存在的不足33疠骐錾农剎貯狱颢幗騮。8.2致谢33镞锊过润启婭澗骆讕瀘。参考文献33榿贰轲誊壟该槛鲻垲赛。1、绪论1.1 BBS论坛现况当前BBS论坛已经较为成熟及普遍。存在于校园,目前大多数大学都建立有BBS论坛系统。应用于商业,作为产品宣传、产品推销、产品售前售后服务、消费者讨论等。应用于技术讨论,一方面用户可以将问题发表到论坛中,让其他人帮助解决,另一方面是帮别人解决问题,不管是解决还是被解决,从中都可以解决问题、扩展知识面,如CSDN论坛。BBS应用场景已经相当普遍。邁茑赚陉宾呗擷鹪讼凑。1.2研究本课题的意义虽然目前BBS系统在我国较为普遍与成熟,在用户体验、界面设计、技术应用等都达到了一定的高度。作为学生设计的BBS系统是无法比及当下已经在使用的系统的。那么作为学生的我研究本课题的意义在于将多面学习到的零散的技术进行整合开发,实现网站的动态交互效果。从而提升自己的技术水平与开发手段,也提升自己的开发经验。嵝硖贪塒廩袞悯倉華糲。2、系统可行性分析可行性分析主要目的确定一个新的系统开发价值与可行性。分析解决该系统的利弊。从而判断系统的规模与实现。最后分析系统完成后所带来的效益是否达到值的投资的开发的程度。可行性分析包括:系统可行性分析、经济可行性分析、操作可行性分析。该栎谖碼戆沖巋鳧薩锭。2.1技术可行性分析本系统使用Java开发语言的B/S模式系统。Java是具有开源、跨平台等特点。时下具备了完善、成熟的框架支持B/S模式的框架。其涉及的技术有:HTML、javaScript、ajax、JSP、Struct2、Hibernate、MySQL数据库。所以本系统在技术上可行的。劇妆诨貰攖苹埘呂仑庙。2.2经济可行性分析当前电脑已经非常的普遍,BBS系统作为一个应用型软件系统所需要的最基本开发工具其实早就具备。另一方面,在本系统中所使用的开发语言、开发平台、开发技术要么是开源的、要么可以破解。所以在开发本系统的经济需求是很少的。在经济上是可行。臠龍讹驄桠业變墊罗蘄。2.3操作可行性分析在进行用户需求分析的前提下,用户需求并不是很复杂。在以用户需求为出发点。界面设计较为简洁明了。功能设计也较为人性化,用户可按照提示能够快速的入手。所以本系统在操作上也是可行的。鰻順褛悦漚縫冁屜鸭骞。3、本系统慨况3.1本系统的研究思路确立系统的需求,确立系统的操作者(权限),确立系统的被操作对象(主题与回复),确定功能需求。设计数据库结构。设计系统架构。完成本系统。穑釓虚绺滟鳗絲懷紓泺。3.2本系统技术路线在多种动态网站开发技术中,各有优缺点。本系统选择jap动态网站开发技术。系统前台页面则使用html+javascript+ajax+css。后台数据数据库使用体积小,功能强大的MySQL数据即可。隶誆荧鉴獫纲鴣攣駘賽。3.3本系统的技术难度(1)技术的整合衔接(2)数据库连接方式(3)数据库设计(4)浏览器兼容性3.4本系统的开发环境(1)Web服务器:Tomcat 6.0(2)数据库服务器:MySQL5.5(3)开发工具:MyEclipse10.0(4)开发语言:Java(5)开发技术:HTML+javaScript+ajax+JSP+Struct2+Hibernate+MySQL浹繢腻叢着駕骠構砀湊。4、需求分析为了开发出真正满足用于需求的系统和为了减少日后工作带了不必要的麻烦。按照用户需求的需要,从以下几方面对系统进行如下几个方面的需要分析。如下图由用户需求而得的系统总层次方框图(4-1)鈀燭罚櫝箋礱颼畢韫粝。系统总层次方框图(4-1)4.1系统需求分析在对用户的初步调查与分析得知,该系统主要包含了如下的角色:(1) 游客:可以阅读贴子,注册会员(2) 普通会员:查看帖子,用户登录,管理个人的基本信息,查看自己发表了的主题,修改用户的一些基本信息(修改密码,系修改头像),发表主题(帖子),发表回复,删除与编辑主题(帖子)惬執缉蘿绅颀阳灣熗鍵。(3) 版主:实现会员的权限外,还可以对自己所属版面下的主题进行删除、锁定、解锁、屏蔽、解除屏蔽、设置精华的功能。还可以发表公告贴贞廈给鏌綞牵鎮獵鎦龐。(4) 超级版主可以实现版主的权限外。还可以对其下属的版面的版主进行编辑(删除版主,增加版主、编辑版主)(5) 管理员:可以实现除超级版主的权限外,分类管理、版面管理、会员管理。4.2功能需求分析由系统需要的分析可以得出:1. 系统前台展示模块系统前台展示模块包含主页、主题列表页、主题回复页、搜索、登陆与注册。2. 系统后台管理模块分类-版面管理:增加分类/版面、删除分类/版面、更新分类/版面、上下移动分类/版面。用户管理:删除用户、锁定用户、修改用户角色等功能。4.3实体-联系分析根据对本系统的需求及功能的分析,本系统涉及6个实体:角色、用户、分类、版面、主题、回复。上述的实体的E-R图如下:角色E-R图 主题E-R图用户E-R图 回复E-R图 分类E-R图 版面E-R图5、系统总体设计经过需求分析阶段的工作,对需求进行有了大致的了解。当下就是将用户的需求模型化、可见化的展现出了。即对本系统进行总体的设计。初步设计出系统的总体轮廓。如图5-1层次图。嚌鲭级厨胀鑲铟礦毁蕲。图(5-1)5.1搜索模块设计搜索模块设计的目的是为了让用户能够开始的得到自己感兴趣的文章,也是一中提升用户体验的方式。搜索分为高级搜索与主题搜索。薊镔竖牍熒浹醬籬铃騫。5.1.1高级搜索设计在高级搜索中提供了按主题搜索、按文章作者搜索、按文章所属分类搜索、按文章所属版面搜索、发表开始时间搜索、发表结束时间搜索,也可以任意多条件组合搜索。如下(5-1-1)层次图齡践砚语蜗铸转絹攤濼。图(5-1-1)5.1.2主题搜索设计主题搜索的设计目的是为给用户提供一个快速的、简单的主题查询,查询的条件为主题包含的关键字。5.2用户管理模块设计用户作为系统的使用者,不同的使用则拥有不同的操作权限。用户当权限允许才可以相应的操作,对于本系统的用户可以划分层:游客、普通会员、版主、超级版主、管理员五用户类型。绅薮疮颧訝标販繯轅赛。5.2.1游客设计作为游客拥有最低的用户权限,即查看论坛系统的公共版块,另外可以进行注册成员和登陆功能。如图(5-2-1)游客层次图饪箩狞屬诺釙诬苧径凛。图(5-2-1) 图(5-2-2)5.2.2普通会员设计普通会员除了拥有游客的权限外,还可以发表主题。对自己活别人发表的主题进行回复。可以进入个人中心,查询自己的会员信息,删除自己已发表的主题,修改自己已发表的主题,修改头像,修改密码等操作。如图(5-2-2)普通会员层次图烴毙潜籬賢擔視蠶贲粵。5.2.3版主设计版主除了拥有普通的会员权限外,还可以对版面进行部分操作的权限,比如对版主所在的版面删除主题,删除回复的操作,对应主题进行锁定,对主题进行屏蔽,对主题解锁/解除屏蔽的操作。对好的主题设置为推荐贴。如图(5-2-3)版主层次图鋝岂涛軌跃轮莳講嫗键。图(5-2-3) 图(5-2-4)5.2.4超级版主设计超级版主是对一个分类的进行管理的角色。除了具有版主的权限外,可以其的版面进行操作,如删除版面,添加版面,编辑版面,上下移动版面,更新版面的版主。可以分类下的主题/回复进行操作,类似于版主的操作。如图(5-2-4)层次图。撷伪氢鱧轍幂聹諛詼庞。5.2.5管理员设计管理员拥有最高用户权限,不仅可以管理用户,还可以分类和版。对用户管理包括:删除用户,锁定用户(锁定的拥有不能登陆)。对分类的操作包括:增加新的分类,删除分类,编辑分类,上下移动分类等。对版面的操作包括:增加新的版面,删除版面,编辑版面,上下移动版面等。如下图(5-2-5)管理员层次图。踪飯梦掺钓貞绫賁发蘄。图(5-2-5)5.3分类管理模块设计分类模块即是类似版面的集合。是为更有效的管理版面而设计,而且分类的设计使得本系统更具有层次感。在分类模块中包含:增加分类功能、删除分类功能、编辑分类功能、显示分类列表功能、上下分类功能、添加超级版主、删除超级版主功能、删除超级版主功能。如图(5-3)层次图婭鑠机职銦夾簣軒蚀骞。图(5-3) 图(5-4)5.4版面管理模块设计版面是包含主题的集合,版面的设计也是为便于管理主题,相类似的主题应放到同一的版面下。在版面管理模块中应包含增加版面功能、删除版面功能、编辑版面功能、显示版面列表功能、上下移动版面功能、增加版主功能、编辑版主功能、删除版主功能。如图(5-4)层次图。譽諶掺铒锭试监鄺儕泻。5.5文章管理模块设计文章包含主题(贴子)和回复,文章也是用户之间交流的实体,用户一方面通过发表主题提出讨论的话题。另一方面用户通过回复发表自己对某一个话题(主题)提出自己的见解。所以在文章管理模块中应包含主题管理模块与回复管理模块。俦聹执償閏号燴鈿膽賾。5.5.1主题管理模块设计主题也是用户操作的一个实体对象,也称为贴子,对于主题模块应该包含删除主题功能,发表主题功能(发表公告贴:一般为具有管理权限的用户发表的贴子,如管理员、版主等,发表置顶帖:该类型贴一般为用户较关心的时事贴,发表普通贴)、编辑主题功能、锁定主题功能(锁定的主题不回复)、解锁主题功能、屏蔽主题功能(屏蔽的主题只有在具有管理权限的用户才会显示,对应没有管理权限的用户是不显示的)、查询主题功能、将主题设为精华帖(具有管理权限的用户可以将某个好的贴设为精华)。如图(5-5-1)主题模板层次图。缜電怅淺靓蠐浅錒鵬凜。 图(5-5-1) 图(5-5-2)5.5.2回复管理模块设计回复页是用户操作的一个实体对象,用于参与主题讨论的载体对象。回复模块相对于主题模块并没有提供过多功能。但应该具备发表回复功能、删除回复功能、查询回复列表功能。如图(5-5-2)回复模块层次图。骥擯帜褸饜兗椏長绛粤。5.6权限管理模块设计由本系统的需求分析可得,本系统只有五种类型的用户:游客、普通会员、版主、超级版主、管理员。为了减少系统的操作量,本系统的权限以固化与权限表中。权限的级别分别为:普通会员、版主、超级版主、管理员。这几种权限的所具有的操作权限对应用户管理模块中的普通会员模块、版主模块、超级版主模块、管理员模块中所对应的功能操作。癱噴导閽骋艳捣靨骢鍵。5.7对象模型设计由需求分析的实体-联系分析得,而实体在java编程中映射成对象,即JavaBean对象。实体-联系映射到Java中的关系如下如图(5-7)类图鑣鸽夺圆鯢齙慫餞離龐。图(5-7)5、系统详细设计在该阶段的目标是确定应该怎么样具体的实现需求的系统,即在该阶段对目标系统进行精确的描述。对每一个模块的功能进行逻辑实现。榄阈团皱鹏緦寿驏頦蕴。在B/S模式下,客户端与服务器的交互,首先是通过用户在浏览器服务器URL请求给服务器端,有服务器处理用户请求后,在将请求结果返回给浏览器,显示给用户。这其实就是基于请求响应模式,用户每点击一次超链接,就是在向服务器端发送一个用户请求。服务器端在接收到用户请求后,经过服务器的处理后,将处理结果封装到超文本中,响应到客户端浏览器中。如图(5-0)事件跟踪图逊输吴贝义鲽國鳩犹騸。图(5-0)5.1数据库设计由系统需求分析的实体-联系分析可得,数据库的逻辑表包含有:权限表、用户表、分类表、版面表、主题表、回复表。在本系统中使用的数据库为MySQL数据库。这些表数据库表结构如下图所示。幘觇匮骇儺红卤齡镰瀉。版面表(bbs_forum)权限表(bbs_role)用户表(bbs_user)主题表(bbs_topic)回复表(bbs_reply)分类表(bbs_category)5.2有关用户功能设计有系统的总体设计的用户管理模板得到,有关用户功能包含有:用户注册、用户登录、用户注销、查看用户信息、查看用户发表的主题列表、查看用户发表的主题、修改用户密码、修改用户头像等功能。誦终决懷区馱倆侧澩赜。5.2.1用户注册用户注册首先在客户端对用户的输入信息进行校验。只有注册用户输入正确的信息后才提交到服务器端,而在服务器端在次对注册信息进行校验。在服务器验证成功的将用户保存到数据库中,若服务器端验证失败,则没有注册成功,并返回用户注册页面。将用户保存到数据库即注册成功。如图(5-2-1)用户注册状态图。医涤侣綃噲睞齒办銩凛。图(5-2-1)5.2.2用户登陆用户登录首先也需要在客户端验证登录信息格式是否正确,格式不正确的是不能够提交。在登录信息的格式正确的情况下,才提交到服务器端,判断登陆名与密码在数据的用户是否存在于数据库中,若有则登陆成功,若无则登陆失败。如图(5-2-2)用户登陆状态图。舻当为遙头韪鳍哕晕糞。图(5-2-2)5.3分类有关功能设计分类有关的功能包括:增加分类、删除分类、编辑分类、查看分类列表、上下移分类、编辑超级版主等。如图(5-3)分类有关功能状态图鸪凑鸛齏嶇烛罵奖选锯。图(5-3)5.3.2新增分类增加分类必须先在客户端对新增的分类进行验证。客户端成功还有以进行服务器端的验证。验证成功后才可以向数据库中增加新分类。新增分类后返回到分类列表。如图(5-3-2)新增分类状态图。筧驪鴨栌怀鏇颐嵘悅废。(5-3-2)5.3.3编辑分类编辑分类类似于新增分类。也得必须先在客户端对新增的分类进行验证。客户端成功还有以进行服务器端的验证。验证成功后才可以向数据库更新分类。编辑分类后返回到分类列表。韋鋯鯖荣擬滄閡悬贖蘊。5.3.4删除分类删除分类虽没有验证这道步骤。但当执行删除分类这个操作的同时,还有删除分类下的所有版面及其下的所有主题与回复。删除完分类后同样要返回到分类列表。涛貶騸锬晋铩锩揿宪骟。5.3.5上移与下移分类上下移动分类的目的是改变分类在页面上展示先后顺序。上下移动分类虽不需要验证。但在上下移动分类是必须判断分类是否是第一个分类与最后一个分类。因为第一个分类不能上移,最后一个分类不能下移。如图(5-3-5)上下移动分类状态图。钿蘇饌華檻杩鐵样说泻。图(5-3-5)5.3.6分类的超级版主操作分类的超级版主操作包含:新增超级版主、更新超级版主和删除超级版主。不管是那种操作,其实都是在更新分类。在新增超级版主与更新超级版主都必须先获取具有超级版主权限的用户,从而选择指定的用户作为当前分类的超级版主。戧礱風熗浇鄖适泞嚀贗。5.4版面有关功能设计在版面主要功能包括:新增版面、删除版面、编辑版面、上下移动版面。5.4.1新增版面新增版面如新增分类一样。必须先通过客户端的验证,然后再通过服务器验证。对符合验证规则的版面才对其进行数据库的插入操作,完成新增版面的功能需求。而且在新增版面时必须要确定新增的版面所属的分类。在完成新增版面操作后返回分类列表(在分类列表中包含有版面列表)。如图(5-4-1)新增版面状态图。購櫛頁詩燦戶踐澜襯鳳。图(5-4-1)5.4.2删除版面版面是相似主题的存储集合。那么在删除版面的同时,必须也要删除版面下的所有主题。主题关联着回复,所以还要删除下属主题的所有回复。删除完版面返回到分类列表。嗫奐闃頜瑷踯谫瓒兽粪。5.4.3编辑版面编辑版面操作,其实就是更新版面的信息,如版面名称以及版面描述。所以在编辑版面时,必须进行客户端验证和服务器端验证。只有符合版面名称规则和版面描述规则才对其进行数据库的更新操作。如图(5-4-3)编辑版面状态图。虚龉鐮宠確嵝誄祷舻鋸。图(5-4-3)5.4.5上移与下移版面版面上下移动功能,其目的是改变版面在页面中的显示顺序。从而可以突出版面之间轻重之分、突出重点。版面上下移动的范围是在同一个分类下进行。而且最上的版面不能上移,最下的版面不能下移。上下移动版面后返回到分类列表。與顶鍔笋类謾蝾纪黾廢。5.4.6版面的版主操作版面的版主操作包括:增加版主、更新版主、删除版主。这些操作其实是对版面进行更新操作。对应增加版主与更新版主之前必须先获取到具有版主权限所有用,然后再这些用户中选择用户作为版主,一个版面只有一个版主。在进行更新版面操作后返回到分类列表。結释鏈跄絞塒繭绽綹蕴。5.5主题有关功能设计主题作为一个论题的发起者。其功能模块应包括:发表主题、删除主题、编辑主题等功能。为了便于用户快速的查询相应的主题,所以还应提供一些查询操作,查询公告贴、查询置顶帖、查询精华帖、查询推荐贴和搜索功能。对于主题还应提供一些制约功能,如锁定、屏蔽等操作。餑诎鉈鲻缥评缯肃鮮驃。5.5.1发表主题发表主题需要先进行客户端验证,确定发表的主题所属的版面,主题标题不能为空,主题的内容不能为空。然在进行服务器验证。并且还要验证用户是否登陆,只有登陆的用户才可以发表主题。在经过一系列的验证过后才主题进行插入操作。完成发表主题后转发到主题-回复列表。如图(5-5-1)发表主题状态图。爷缆鉅摯騰厕綁荩笺潑。图(5-5-1)5.5.2删除主题删除主题只有管理员、主题所属版主、主题所属的超级版主和发表主题的作者才具备的权限。所以验证登录用户权限。同时在删除主题的同时,删除主题下是回复,并修改版面中的主题数与文章数。如图(5-5-2)删除主题状态图。锞炽邐繒萨蝦窦补飙赝。图(5-5-2)5.5.3编辑主题编辑主题要进行客户端与服务器的验证。同时要判断用户是否登陆。用户只要在登陆的状态才对自己发表的主题进行编辑。曠戗輔鑽襉倆瘋诌琿凤。 5.5.4锁定/屏蔽/解锁/主题锁定/屏蔽主题是限制用户对主题操作的一种手段。如锁定的主题不能回复,屏蔽的主题非权限允许不显示。锁定/屏蔽/解锁/为所属的版主、超级版主、管轉厍蹺佥诎脚濒谘閥糞。理员才具有的操作。所以要进行登录用户验证。完成操作后返回到主题列表。5.5.5搜索主题搜索主题功能的设计为了用户能快速的查找到自己想要看的主题。搜索主题模块包含了单条件主题搜索和组合条件主题搜索。嬷鯀賊沣謁麩溝赉涞锯。1、 单条件主题搜索单条件主题搜索的搜索对象为主题的标题,若主题标题中包含有用户输入的关键,则该主题被查询出来。2、 组合条件主题搜索组合条件搜索可以按主题标题搜索,可以按主题作者进行搜索。可以搜索指定分类、指定版面下搜索主题,可以按发表开始时间、结束时间搜索主题。当然也可以任意组合搜索主题。如图(5-5-5-2)组合条件主题搜索状态图。讯鎬謾蝈贺綜枢辄锁廪。图(5-5-5-2)5.6回复有关功能设计回复作为参与论题讨论的一个实体。包含有发表回复和删除回复等功能。 5.6.1发表回复用户发表回复必须在登录状态下才可以进行。还有回复的内容不能为空。所以需要在客户端和服务器进行回复内容的验证。在发表回复的同时,需要更新主题回复数量和最后回复。另外还有更新版面的文章数(回复也是文章的一种形式),在完成这一系列的操作后,返回到主题回复列表。兒躉讀闶軒鲧擬钇標藪。1. 简单回复:在简单回复中,回复内容只能为文本内容,表情图片等,但插入外部图片等多媒体文件。2. 引用回复:引用回复引用他人回复的内容作为的自己的回复内容。3. 高级回复:在高级回复中,回复内容不仅可以为文本内容,表情图片等还可以插入外部图片等多媒体文件。在发表回复的时候要进行登录验繅藺詞嗇适篮异铜鑑骠。证和回复内容不为空验证。如图(5-6-1-3)高级回复状态图。图(5-6-1-3)5.6.2删除回复删除回复需要版主权限、超级版主权限、管理员权限才可以进行操作。所以需要进行登录验证。只有符合这些角色的用户才可以进行操作。另外删除回复的同时,需要更新主题的回复数(回复数-1),更新版面的文章数(文章数-1)。删除完回复后转发到主题回复列表。鮒簡觸癘鈄餒嬋锵户泼。6、系统实现本系统使用基于Java的M(模型:JavaBean)V(试图:JSP)C(控制:Struts2)框架设计模式,实现业务逻辑、数据、界面显示分离。眯毆蠐謝银癩唠阁跷贗。6.1数据库连接在数据库连接使用Hibernate框架,对于Hibernate底层使用的是JDBC技术,从而实现数据库的建立连接,发送操作数据库的语句并处理结果。闵屢螢馳鑷隽劍颂崗鳳。数据库连接配置文件(hibernate.cfg.xml):数据库连接语句:数据库的增、删、改、查,都先得到Session对象,然后通过该对象进行操作。6.2系统主要功能模块设计6.2.1主页显示设计在主页中包含有各类主题列表和分类-版面列表。如图(6-2-1)主题效果图。图(6-2-1)6.2.2发表主题模块设计在发表主题模块中,包含有登陆验证、分类验证、版面验证、主题标题验证、主题内容验证。如图(6-2-2)图(6-2-2)部分关键代码:6.2.3回复主题模块设计回复模块提供三种回复方式:简单、应用、高级回复。如图(6-3-5)为简单回复页面图(6-3-5)部分关键代码:6.2.4 搜索主题操作设计搜索提供两种搜索方式。简单搜索和高级搜索两种搜索方式。如图(6.2.4-2)为高级搜索界面。图(6.2.4-2)6.2.5用户注册操作设计用户注册页面中包含有一系列的客
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论