J2EE论坛系统.doc_第1页
J2EE论坛系统.doc_第2页
J2EE论坛系统.doc_第3页
J2EE论坛系统.doc_第4页
J2EE论坛系统.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

课 程 设 计 课程设计题目 学 生 姓 名 : 学 号: 专 业: 2011年 12 月 29日一系统概述31.系统现状分析32.设计目标43.开发工具和运行环境的选择5二、系统分析71.需求分析7三.系统设计81 ,UML活动图82功能设计103界面设计114数据设计14四,系统实施151.功能解释、使用说明15五、总结161.开发难点与解决技巧162.收获和感受1617- -一系统概述1.系统现状分析BBS的每个用户都可以在上面书写,可发布信息或提出看法。大部分BBS由教育机构、研究机构或商业机构管理。像日常生活中的黑板报一样,电子公告牌按不同的主题分成很多个布告栏,布告栏的设立是以大多数BBS使用者的要求和喜好为依据的。 BBS站往往是由一些有志于此道的爱好者建立,对所有人都免费开放。而且,由于BBS的参与人众多,因此各方面的话题都不乏热心者。在这里,打破了交流的空间和时间限制,所有人都不用害怕暴露自己真实的社会身份,每个人都处于对等的位置,可以就任何问题进行讨论。 目前,通过BBS系统可随时取得国际最新的软件及信息,也可以通过BBS系统来和别人讨论计算机软件、硬件、Internet、多媒体、程序设计以及医学等等各种有趣的话题,更可以利用BBS系统来刊登一些“征友”、“廉价转让”及“公司产品”等启事,而且这个园地就在你我的身旁。只要您拥有1台计算机、1只调制解调器和1条电话线,就能够进入这个“超时代”的领域,进而去享用它无比的威力!因此, 在市场经济中,传播信息是商业化的重要组成部分,为了推动经济多元化,以及给更多创业的人带来商机,我们为何不考虑 ”求职创业从BBS开始 “ 呢?求职创业 不妨从BBS开始网上创业模式的出现让人眼前一亮,不需要太多的启动投入,没有太高的风险压力。虽然不一定是最好的模式,但是轻松上手的网上创业却给了众多踌躇中的年轻人以无限遐想,开办自己的个人BBS成为不少年轻人创业的首选。“起点低,只要租赁一个网络空间,程序都免费下载,靠自己的朋友圈子散布一下,基本一个论坛就能做起来了。”上海公园站长小余告诉记者,他当初考虑做论坛的目的就是觉得求职竞争太激烈,所以想自己做点什么,正好学过网站建设,于是就自己做了个论坛。”我的论坛以交友为主,定期举办一些交友活动,慢慢的人气起来了,而且还能拿到一些厂商的赞助,虽然赚的不多,但至少论坛步入了正轨,处于稳步上升阶段。”小余同时建议想创业的读者,很多论坛往往撑不过一年,就是因为太多抄袭,没有个性。不要模仿,不要大杂烩,要有一个清晰的定位,明确的发展方向。这样才有可能做的出来。创业有风险,在各行各业都面临不同程度不同的挑战,但是对于刚刚进入社会的年轻人来说,网上创办BBS经历的收获并不少于求职路。多一条道路的选择,或许就是多了一种发展。当然,网上创办论坛眼下也稍嫌不足,与已有收获的小余不同,已经倒闭的“飞行器”论坛开发者gigi告诉记者,当初创业做论坛,想找一个特别的切入点,于是想到了做些关于模型器材,谁知道这一块受众太小,人气聚集不起来,大概经营了半年后,不得以关掉了。“我想建议准备通过论坛创业的朋友,选择论坛定位的时候一定要多征求下身边朋友的意见,因为我本身喜欢模型,所以就认为其他人也会喜欢,导致论坛没做起来。其实论坛是提供给大家的交流平台,关键的还是看网友的需求在哪里,这点很重要。准备创办BBS的朋友可千万不要再重蹈覆辙了。” CBI观点:30亿注册BBS用户,130万家BBS,风头正劲的BBS成为中国互联网市场的一面旗帜。然而,与传统渠道每天均有商家开业、关店一样,由于缺乏合适的商业模式,大多论坛仍然挣扎在温饱线上,论坛内容繁杂又过多的互相抄袭,缺乏个性,内容粗糙,无法继续运营,论坛倒闭的故事每天均有发生。但在其中,我们仍然欣喜的看到,一部分规模不大,但定位准确的论坛找到了切入点,一条清晰的盈利模式正在跃然而出。而对于当下竞争激烈的职场,网上开设BBS创业虽然不一定是最好的模式,但是轻松上手的网上创业却不失为年轻人的理想选择之一,尤其对于不少刚刚踏上社会的毕业生而言,成败得失或许并非是最重要的,能够通过求创业得到的历练,实践一些知识才是最有收获的-无论网上论坛是否成功。从这个角度上讲,网上创业的过程显得十分有价值。2.设计目标(1)系统运行集成化这是系统成功在技术解决方案方面最基本的表现。系统是对后台管理、前台会员、游客发布信息进行一体化管理的软件系统,为了达到预期设定的应用目标,最基本的要求是系统能够运行起来,实现集成化应用,建立合理的数据管理和数据共享机制。一般来说,如果用户只进入前台管理层,只会有前台会员的一些管理权限,进入后台则是进入管理员的权限.因此,同样也就会出现只要有管理员权限的人都可以对数据进行管理.我们希望可以达到以下目标:消灭各种后台漏洞;数据管理层次清晰; 代码重用率高; 减少系统bug等。这些目标能否真正达到,还要取决于开发人员的技术和良好习惯,以及测试人员的测试技术。(2)业务流程合理化这是系统成功在改善管理效率方面的体现。系统成功的前提是必须对数据进行及时的更新,因此,信息多元化的应用也就意味着系统流程趋于合理化,并实现了系统计划应用的以下几个最终目标:BBS系统用户增多; 获得社会各界成功人士的宝贵经验;客户满意度显著改善。(3)操作实践简单化在界面设计的过程中从用户的角度出发尽量使操作做到简单精练使用户体会到该系统的实用性和方便性。3.开发工具和运行环境的选择3.1 开发平台3.1.1 MyEclipseMyEclipse企业级工作平台(MyEclipse Enterprise Workbench,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。MyEclipse是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML、Struts,JSF,CSS,Javascript,Sql,Hibernate等技术。MyEclipse是Eclipse插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及排错。MyEclipse是一个专门为Eclipse设计的商业插件的完美结合,MyEclipse为Eclipse提供了一个大量私有和开源的java工具的集合,很大程度上解决了各种开源工具的不一致问题,并大大的提高了Java和JSP的开发效率。鉴于MyEclipse有众多优点,本系统选用MyEclipse作为集成开发环境,这给程序的开发带来了许多方便。3.1.2TomcatTomcat服务器是一个免费的开放源代码的Web应用服务器,可以和大部分主流HTTP服务器一起工作,它是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现。因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者得喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。Tomcat服务器不但支持运行Servlet和JSP,而且还具备了商业Java Web应用容器的特征,除了能够运行Servlet和JSP外,还具备了作为WEB服务器的特有功能。它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能,而且它还在不断的改进和完善中。本系统在部署应用的过程中选用了Tomcat作为WEB服务器。3.1.3JDKJDK是java的核心,包括了Java运行时环境(Java Runtime Envirnment),一堆Java工具和Java基础类库(rt.jar)。它是一个写Java程序的开发环境。本系统在开发的过程中选用的是JDK1.6版本。3.2主要技术3.2.1 JSPJSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。3.2.2 MVC模型MVC是三个单词的缩写,分别为: 模型(Model),视图(View)和控制Controller)。 MVC模式的目的就是实现Web系统的职能分工。 Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。 View层用于与用户的交互,通常用JSP来实现。 Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。3.2.3 Stutsstruts是开源软件。使用Struts的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。如果我们想混合使用Servlets和JSP的优点来建立可扩展的应用,struts是一个不错的选择。Struts最早是作为Apache Jakarta项目的组成部分,项目的创立者希望通过对该项目的研究,改进和提高JavaServer Pages 、Servlet、标签库以及面向对象的技术水准。Struts这个名字来源于在建筑和旧式飞机中使用的支持金属架。这个框架之所以叫Struts,是为了提醒我们记住那些支撑我们房屋,建筑,桥梁,甚至我们踩高跷时候的基础支撑。这也是一个解释Struts在开发Web应用程序中 所扮演的角色的精彩描述。当建立一个物理建筑时,建筑工程师使用支柱为建筑的每一层提供支持。同样,软件工程师使用Struts为业务应用的每一层提供支 持。它的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。我们仍然需要学习和应用该架构,不过它将可以完成其中一些繁重的工作。如果 想混合使用Servlets和JSP的优点来建立可扩展的应用,Struts是一个不错的选择。二、系统分析1.需求分析一个典型的网上论坛系统一般都应提供会员管理,论坛分类主题管理.论坛文章管理,论坛公告管理等功能.同时也应为论坛管理人员提供后台管理的功能.如删除一些文章,发布论坛公告等功能.下图为网上论坛系统用例,小人为该系统所涉及到的行为者.未注册用户会员查阅注册用户文章查阅发表文章版主论坛管理员会员管理论坛分类文章管理根据论坛的基本需求,本系统需要完成的具体任务如下:会员注册:提供新会员的注册功能,包括会员信息的录入界面,检查注册信息的有效性,并将注册会员信息保存到数据库的数据表中.文章查阅:对注册会员和未注册会员提供文章查询及阅读的功能.即提供对应文章的标题信息,以及查看详细内容及回复文章内容的超连接.发表文章:提供注册会员发表新文章的功能,未注册用户不允许使用该功能.会员管理:当网上论坛的会员注册完成后,系统会在数据库中加入会员的资料,包括会员的名称,密码,泥称,e-mail等相关信息.同时,按照会员的不同身份,可以将会员设置成版主,从而具备删除本讨论区中的文章的权限.管理员可以依据数据库中的注册的特殊身份登陆到页面中,进行论坛会员的信息的管理.论坛分类管理:根据不同的讨论内容,管理员将整个论坛划分成不同的区域,会员可以选择进入不同的讨论区,允许管理者对分类进行调整,同时提供不同讨论区中包括文章数量等的统计功能.论坛文章管理:管理员有权搜索并删除对应文章及相关回复文章. 三.系统设计本系统的设计是基于MVC三层模式予以实现的,模型层用于封装后台业务处理逻辑,即把数据库表中的信息封装在JavaBean中,以便在页面中统一调用.控制层采用Action予以实现,主要负责请求的转发视图层用来显示用户交互页面1 ,UML活动图下面是进入网上论坛BBS系统时具体可以进行的操作在具体实现的时,用户进入每一个模块时都会进行会员身份的验证及权限的检查,如果登陆用户不具备对该模块进行操作的权利,则系统将自动提出报警信息并阻止进入该模块进入论坛登录新用户注册显示论坛分类查阅论坛文章主题未注册未注册发表新文章查阅详细内容发表回复新贴回复以上是网上论坛前台UML活动关系图网上论坛系统后台管理模块具体的UML活动图:身份验证失败登录论坛分类管理论坛文章管理用户管理以上是网上论坛后台UML活动关系图2功能设计会员注册 该模块面向网上用户,实现会员的注册,登陆,会员信息的修改等功能.此子模块提供会员信息的基本数据库操作:添加,修改和删除.讨论区文章查询 显示讨论区中的文章的主题,内容,作者,发表时间,相关回复文章等操作;并提供简洁明了的按主题,发表时间,作者等条件进行检索,录入和修改的功能.发表文章 发表新文章,回复文章等.只有注册并登陆的合法用户才能进行该模块的操作.后台管理 对数据库中注册会员信息进行维护,论坛分类信息的增加,编辑,删除等功能,以及论坛公告的发布,修改,删除等功能.3界面设计主界面会员登陆界面主题界面:回复帖子:发表新帖子:后台管理界面后台登陆界面4数据设计根据需求分析,数据库参考表结构如下: 用户信息表(userinfo)字段名称数据类型字符描述UserNameVachar(20)用户登陆名称:主键PasswordVachar(20)用户密码NicknameVachar(20)昵称SexChar(2)性别BirthyearChar(4)年BirthmonthChar(2)月BirthdayChar(2)日EmailVachar(20)电子邮件MobileVachar(20)手机SignatureVachar(20)会员签名UsergradeVachar(20)用户登记Usersoredecimal用户积分 论坛分类表(type)字段名称数据类型字符描述IdInt论坛分类编号:主键TypenameVarchar(30)论坛讨论区名称masterVarchar(30)论坛讨论区版主论坛主题文章基本信息表(topic)字段名称数据类型字符描述IdInt帖子编号:主键TitleVarchar(100)标题AuthorVarchar(30)作者EmailVarchar(50)电子邮件ContentVarchar(1000)发表内容PubTimeDatetime发表时间Typeidint论坛分类编号论坛回复信息表(reply)字段名称数据类型字符描述IdInt帖子编号:主键TopicidInt原帖子编号:外键TitleVarchar(100)标题AuthorVarchar(30)作者EmailVarchar(50)电子邮件ContentVarchar(1000)内容PubTimedatetime时间四,系统实施1.功能解释、使用说明首先,普通的游客只有浏览系统中的别人发的帖子,如果游客也想发表一个帖子,就必须先注册,然后登陆系统才能对帖子进行回复, 会员是根据合法的用户名和密码进行登陆,同时系统会根据该用户的等级给予一定的操作权限带用户进入系统主界面。接着,用户根据主界相应的模块,选择地进入到相应的模块进行相关操作。管理员可以有搜索的功能.。 五、总结1.开发难点与解决技巧(1)界面设计考虑到数据在网页当中的定位,我们采用表格来进行大致的定位,然后采用css对表格以及表格中的数据进行优化设计.网页中的图片采用fireworks进行设计.(2)数据库设计为了方便字段的提取,在开始的数据库设计时我们将有关出生日期的字段类型设为birthyear,birthmonth,birthday。考虑到在bean中取数据,搞得太烦琐了。然后我们将三个字段合并为birth,类型为datetime。在会员发表一个新的帖子过后,我们将帖子的编号设置为自动递增的.这样我们也就在插入一个新主题的时候,不需要传递一个id了,让这个id在数据库中自动产生.(3)编码设计在编码设计中,我们考虑到一个会员肯定有等级和相应的积分.我们就计算会员的在线时间来获得会员的积分.那么我们如何获得会员的在线时间呢?也就是说在会员登陆时就开始计算时间,然后会员退出时又要记录一个时间.然后取差值.这就需要设置

温馨提示

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

评论

0/150

提交评论