版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
-PAGEII-成都电子科大软件学院高校社团管理系统摘要本文采用自顶向下的结构化的系统分析方法,阐述了一个功能全面的学生社团管理系统网站设计与实现的开发过程、操作流程及其一些核心的技术。本文首先进行了项目概述,简单介绍了项目开发的背景、项目开发的目的和项目开发的意义;接下来是系统规划阶段,通过实际的业务流程调研,分析了系统的组织结构,具体完成了学生社团管理系统设计与实现的需求分析、可行性分析、现行业务流程分析,并通过对现行业务流程的优化,得出了系统的业务流程;之后是系统分析,具体完成了数据流分析和数据字典;系统设计阶段主要完成了功能模块的划分、数据库的设计和系统界面设计。该阶段对各个模块的功能进行了详细设计,形成了本系统的功能模块图,在此基础上选择了合适的开发模式;数据库的设计先进行了概念结构设计,之后进行了逻辑结构设计,最后完成了数据库表的设计。根据前几个阶段的分析和设计,本系统使用JSP语言进行基本页面的设计与功能实现,后台数据库选用SQL2005数据库,系统在设计上采用B/S模式,为社团网站提供了良好的基础。关键词:学生社区管理系统;结构化分析;系统UniversityAssociationManagement
SystemAbstractSystemanalysismethodofthispaperusestop-downstructured,describesacomprehensivefunctionsofthestudentcommunitymanagementsystemdesignandRealizationofwebsitedevelopmentprocess,operationalprocessesandsomeofitscoretechnology.Thispapercarriedouttheprojectoverview,introducesthedevelopmentbackground,projectdevelopmentandprojectdevelopmentobjectiveofthesignificance;nextisthesystemplanning,businessprocessthroughtheactualresearch,theanalysisofsystemstructure,completethedesignandimplementationofthesystemneedsanalysis,feasibilityanalysis,businessprocessanalysisofcurrentstudentorganizations,andthroughtothecurrentbusinessprocessoptimization,thesystemofbusinessprocess;thenisthesystemanalysis,includingthedataflowanalysisanddatadictionary;thesystemdesignphasemainlytocompletethedesignandsysteminterfacedesign,functionmoduleofdatabasepartition.Onthephasefunctionofeachmoduleindetailthedesign,formingafunctionalblockdiagramofthesystem,selectedonthebasisoftheappropriatedevelopmentmodel;databasedesignfirstfortheconceptdesign,thelogicstructuredesign,finallycompletedthedesignofthedatabasetable.Accordingtothepreviousanalysisanddesignphase,designandfunctionsofthesystem,usingJSPlanguagetoachievethebasicpage,backgrounddatabaseuseSQL2005database,thesystemadoptsB/Smodeinthedesign,providingagoodfoundationforenterprisewebsite.Keywords:Thestudentcommunitymanagementsystem;Structuredanalysis;Thesystem成都电子科大软件学院目录TOC\o"1-3"\h\u109131引言 1213891.1项目开发的背景 1290701.2项目开发的意义 165061.3国内外发展状况 1306301.4本章小结 323562关键技术介绍 417202.1JSP技术 448212.2JAVA语言 4202122.3servlet简介 6281352.4SQL2005技术 7309892.5系统设计模式 8147932.6本章小结 9170223系统分析 10131453.1系统可行性分析 10155603.1.1技术可行性 10219283.1.2经济可行性 10204613.1.3社会可行性 1095054系统设计 12249444.1系统功能设计 1284314.2系统数据库设计 12196154.2.1概念结构设计 13298754.2.2数据库表设计 16322524.3本章小结 1953165系统实现 20212325.1登录模块 20成都电子科大软件学院3995.2网站首页界面 21102995.3查看站内新闻界面 2148155.4查看活动信息界面 2253055.5社团详情页面 23291125.6留言界面 24316035.7社团申请以及退出社团 25249075.8资讯信息管理界面 25141035.9社团管理界面 27118805.10在线互动管理界面 28292575.11网站信息管理界面 29116135.12社长管理功能 3070226系统测试与分析 3164026.1系统测试的重要性 3161126.2测试实例的研究与选择 3119566.3测试环境与测试条件 32147656.4系统运行情况 3331446.5本章小结 33215737结论 343857参考文献 3528627致谢 37PAGE2成都电子科大软件学院1引言1.1项目开发的背景随着Internet国际互联网的发展,越来越多的学校开始注重信息化对内部管理及办事效率发展的有利作用,和对学校管理起到的至关重要性。基于Internet的信息服务,已经成为现代学校一项不可缺少的内容。很多学校都已不满足于纸制化办公及庸散的管理方式。学校需要的是一个功能强大的,能提供完善的管理方式、高速的信息传达速度及精确的信息的信息管理系统。随着科技发展和社会进步,尤其是计算机大范围的普及,计算机应用逐渐由海量数据处理转向大规模的事务处理和对工作流的管理,这就产生了以台式计算机为核心,以数据库管理系统为开发环境的管理信息系统,以及在大规模的事务处理和对工作流的管理等方面的应用。开发学生社团管理系统能够使学校对校内社团的管理更加规范化、合理化。能够有效的快速记录大量的学生的信息,并能对其进行修改使学生用户能够运用简便的方法能够快速的查到他们所在社团的信息,并且能够在线对社团进行全方位的科学调控和管理。1.2项目开发的意义本课题设计一个学校社团管理系统,建设一个社团管理系统对学样管理社团提供更有效的手段,现今学校社团琳琅满目,学校对社团的监管手段落后,以致于对社团的情况和其活动开展内容不了解,导致校内社团不能健康分展,而本系统的开发为学校提供了一个监管社团的平台,为社团提供了一个在线吸纳社员的平台,为学生提供了一个在线选择社团的平台,系统面向三种用户,为每种用户提供了全面而又贴心的服务功能。1.3国内外发展状况伴随着高等教育社会化趋势的深入发展,高校人才培养目标进一步与社会需求接轨,越来越多的大学生认识到,在校期间参加学生社团,可以积累一定的社会阅历,对于将来尽快适应社会非常重要。所以,大学生参加社团动因要从纯粹的兴趣向“兴趣+务实”转变。社团发展取向日趋多元化。当代大学生的主体已经是“80后”和“90后”,他们是在改革开放的大环境中和社会多元化的条件下成长起来的。社会经济成分、组织形式、就业方式、利益关系和分配方式日益多样化,还有社会阶层出现多样性,加之农村进城务工人员的增加和社会流动的加快,这些因素决定了当代大学生成长背景的多元化。随着高校成本分担制的实施,高校中经济困难学生增加。在学生社团发展取向日趋多元化的情况下,学生社团的类型日益丰富。文艺、体育等传统意义上的社团依然是学生关注的重点,近年来尤其以文学艺术类社团增加较快。而一些有较强专业知识背景的学术科技类社团和志愿服务、环保等社会公益类团正为越来越多的学生所关注。一份关于浙江省高校学生社团的调查报告显示:“有91%的大学生认为,发展社团尤为重要,学生对参与社团的认识正体现了素教育所强调的‘充分发挥个人的主观能动性,在可能的发展水平内充分、由发展’的教育理念”,“学生参与社团的目的主要有以下两类:中心目的,如相互交流学习,锻炼处世能力,结交对自己有益的朋友和休闲娱乐;边缘目的,如展示才华,寻求精神寄托,提高自己的声誉和地位等。”嘲在新兴的学生社团中,出现了很多在内容和形式上都有别于传统社团的“新面孔”:新小康协会、社会交际创造协会IT社团联盟、大学生信用自律协会、太空俱乐部、素食文化协会、性医学会等。由于高校学生社团活动经费普遍缺乏,在一定程度上限制了社团的健康发展。为了解决社团资金的困扰,许多社团走出校门以自身的活动魅力吸引社会资金的投入,为社团与社会联系创造良好条件,促进了社团自身的社会化。越来越多的社团正在尝试积极利用社会资源,逐渐由单靠学校划拨资金发展为多渠道筹集资金,包括与社会企业联合开展活动。得到企业的经费支持,社团活动可以在更大范围内和更高层次上开展。目前,一些文艺类、体育类、学术科技类社团由于具有这方面较强的优势,已经率先在尝试将这种方式固化为社团资金来源的经常渠道。尤其是一些科技类社团,在积极争取社会资源的同时,也找到了将自己的科技成果产业化的有效途径。社团和企业双向受益,形成良性循环。此外,大学生对新鲜事物的关注力度大,对不同领域思想的渴求程度强,接受各种新鲜事物的速度和热情都很高。他们比其他社会成员更快、更多地形成了与改革开放和社会主义市场经济相适应的思想观念和行为方式,对越来越多的社会成员摆脱传统观念的束缚,形成与现代社会发展相适应的思想观念和行为方式具有重要的反哺功能。公益类社团的不断涌现,就是文化反哺的重要体现。1.4本章小结本章主要从两方面进行介绍,第一方面是系统开发的背景,第二方面是系统开发的意义。2关键技术介绍2.1JSP技术JavaServerPage或简称为JSP是由Sun公司在Java语言上开发出来的一种动态网页制作技术,它提供了一种建立动态网页的简单方法,并为开发人员提供了一个Server端框架,基于这个框架,开发人员可以综合使用HTML,XML,JAVA语言以及其他脚本语言,灵活,快速地创建和维护动态网页,特别是目前的商业系统。作为JavaTM技术的一部分,JSP能够快速的开发出基于所有Web服务器和应用服务器环境,独立于平台的应用程序,而且具有非常强的可伸缩性。同时,JSP把用户界面从系统内容中分离开来,使得设计人员能够在不改变底层动态内容的前提下改变网页布局。JSP编程技术的优势在于:(1)一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是显而易见的。(3)强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。(4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。2.2JAVA语言Java是一种简单的,面象对象的,分布式的,解释的,健壮的安全的,结构的中立的,可移植的,性能很优异的多线程的,动态的语言。它有以下特点:2.2.1平台无关性平台无关性是指Java能运行于不同的平台。Java引进虚拟机原理,并运行于虚拟机,实现不同平台的Java接口之间。使用Java编写的程序能在世界范围内共享。Java的数据类型与机器无关,Java虚拟机(JavaVirtualMachine)是建立在硬件和操作系统之上,实现Java二进制代码的解释执行功能,提供于不同平台的接口的。2.2.2安全性Java的编程类似C++,学习过C++的读者将很快掌握Java的精髓。Java舍弃了C++的指针对存储器地址的直接操作,程序运行时,内存由操作系统分配,这样可以避免病毒通过指针侵入系统。Java对程序提供了安全管理器,防止程序的非法访问。2.2.3面向对象Java吸取了C++面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。程序员只需把主要精力用在类和接口的设计和应用上。Java提供了众多的一般对象的类,通过继承即可使用父类的方法。在Java中,类的继承关系是单一的非多重的,一个子类只有一个父类,子类的父类又有一个父类。Java提供的Object类及其子类的继承关系如同一棵倒立的树形,根类为Object类,Object类功能强大,经常会使用到它及其它派生的子类。2.2.4分布式Java建立在扩展TCP/IP网络平台上。库函数提供了用HTTP和FTP协议传送和接受信息的方法。这使得程序员使用网络上的文件和使用本机文件一样容易。2.2.5键壮性Java致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发早期出现的错误。Java自己操纵内存减少了内存出错的可能性。Java还实现了真数组,避免了覆盖数据的可能。这些功能特征大大提高了开发Java应用程序的周期。Java提供:Null指针检测、数组边界检测、异常出口、Bytecode校验。2.3servlet简介Servlet是Java编写的服务器端程序,是由服务器端执行和调用的Java类。Servlet是采用Java技术来实现CGI功能的一种技术,能够像CGI一样动态地扩展Web服务器的功能,并采用请求——响应模式提供Web服务。Servlet和CGI一样都是运行在Web服务器上,用来生成Web页面。Servlet的主要功能在于交互式地浏览和修改数据,生成动态Web内容。其工作流程图如图2.1所示。图2.1Servlet工作流程图Servlet工作流程:(1)客户端发送请求信息至服务器。(2)服务器将请求信息发送至Servlet。(3)Servlet生成响应内容并将其传给Servlet。响应内容动态生成,通常取决于客户端的请求。(4)服务器将响应信息返回至客户端。
2.4SQL2005技术SQLServer2005是Microsoft公司推出的SQLServer数据库管理系统的最新版本。它的特性包括:1.Internet集成。SQLServer2005数据库引擎提供完整的XML支持。它还具有构成最大的Web站点的数据存储组件所需的可伸缩性、可用性和安全功能。SQLServer2005程序设计模型与WindowsDNA构架集成,用以开发Web应用程序,并且SQLServer2005支持EnglishQuery和Microsoft搜索服务等功能,在Web应用程序中包含了用户友好的查询和强大的搜索功能。2.可伸缩性和可用性。同一个数据库引擎可以在不同的平台上使用,从运行MicrosoftWindows®98的便携式电脑,到运行MicrosoftWindows2005数据中心版的大型多处理器服务器。SQLServer2005企业版支持联合服务器、索引视图和大型内存支持等功能,使其得以升级到最大Web站点所需的性能级别。3.企业级数据库功能。SQLServer2005关系数据库引擎支持当今苛刻的数据处理环境所需的功能。数据库引擎充分保护数据完整性,同时将管理上千个并发修改数据库的用户的开销减到最小。SQLServer2005分布式查询使您得以引用来自不同数据源的数据,就好象这些数据是SQLServer2005数据库的一部分,同时分布式事务支持充分保护任何分布式数据更新的完整性。复制同样使您得以维护多个数据复本,同时确保单独的数据复本保持同步。可将一组数据复制到多个移动的脱接用户,使这些用户自主地工作,然后将他们所做的修改合并回发布服务器。4.易于安装、部署和使用。SQLServer2005中包括一系列管理和开发工具,这些工具可改进在多个站点上安装、部署、管理和使用SQLServer的过程。SQLServer2005还支持基于标准的、与WindowsDNA集成的程序设计模型,使SQLServer数据库和数据仓库的使用成为生成强大的可伸缩系统的无缝部分。这些功能使您得以快速交付SQLServer应用程序,使客户只需最少的安装和管理开销即可实现这些应用程序。2.5系统设计模式B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier结构。B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语言(VBScript、JavaScript…)和ActiveX技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。随着Windows98/Windows2000将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。显然B/S结构应用程序相对于传统的C/S结构应用程序将是巨大的进步。B/S结构采用星形拓扑结构建立企业内部通信网络或利用Internet虚拟专网(VPN)。前者的特点是安全、快捷、准确。后者则具有节省投资、跨地域广的优点。须视企业规模和地理分布确定。企业内部通过防火墙接入Internet,再整个网络采TCP/IP协议。C/S与B/S区别:Client/Server是建立在局域网的基础上的.Browser/Server是建立在广域网的基础上的。1.硬件环境不同:C/S一般建立在专用的网络上,小范围里的网络环境,局域网之间再通过专门服务器提供连接和数据交换服务.B/S建立在广域网之上的,不必是专门的网络硬件环境,例与电话上网,租用设备.信息自己管理.有比C/S更强的适应范围,一般只要有操作系统和浏览器就行2.对安全要求不同C/S一般面向相对固定的用户群,对信息安全的控制能力很强.一般高度机密的信息系统采用C/S结构适宜.可以通过B/S发布部分可公开信息.B/S建立在广域网之上,对安全的控制能力相对弱,面向是不可知的用户群。3.对程序架构不同C/S程序可以更加注重流程,可以对权限多层次校验,对系统运行速度可以较少考虑.B/S对安全以及访问速度的多重的考虑,建立在需要更加优化的基础之上.比C/S有更高的要求B/S结构的程序架构是发展的趋势,从MS的.Net系列的BizTalk2000Exchange2000等,全面支持网络的构件搭建的系统。SUN和IBM推的JavaBean构件技术等,使B/S更加成熟。4.软件重用不同C/S程序可以不可避免的整体性考虑,构件的重用性不如在B/S要求下的构件的重用性好.B/S对的多重结构,要求构件相对独立的功能。能够相对较好的重用.就入买来的餐桌可以再利用,而不是做在墙上的石头桌子5.系统维护不同系统维护是软件生存周期中,开销大,重要C/S程序由于整体性,必须整体考察,处理出现的问题以及系统升级.升级难.可能是再做一个全新的系统B/S构件组成,方面构件个别的更换,实现系统的无缝升级。系统维护开销减到最小.用户从网上自己下载安装就可以实现升级。6.处理问题不同C/S程序可以处理用户面固定,并且在相同区域,安全要求高需求,与操作系统相关。应该都是相同的系统B/S建立在广域网上,面向不同的用户群,分散地域,这是C/S无法作到的.与操作系统平台关系最小.7.用户接口不同C/S多是建立的Window平台上,表现方法有限,对程序员普遍要求较高B/S建立在浏览器上,有更加丰富和生动的表现方式与用户交流.并且大部分难度减低,减低开发成本。8.信息流不同C/S程序一般是典型的中央集权的机械式处理,交互性相对低B/S信息流向可变化,B-BB-CB-G等信息、流向的变化,更像交易中心。2.6本章小结本章主要对系统采用的关键技术进行介绍。3系统分析3.1系统可行性分析为避免投资失误,保证新系统的成功开发和运行,从技术、经济和社会三方面对本系统的可行性进行了分析和研究。3.1.1技术可行性该系统拟采用成熟的数据库技术与系统开发技术,使用MicrosoftSQL2008和JSP技术.本系统对用户的要求,除了需要具备在MicrosoftWindows平台上使用个人电脑的知识外,并不需要特别的技术能力。使用系统的管理员,在投入使用前,无需对操作系统的人员进行培训。这样既减少投入成本又简化了操作环节。因此,开发该系统具有技术可行性。3.1.2经济可行性经济可行性分析要估计项目的成本和效益,分析项目经济上是否合理。即进行成本效益分析,评估项目的开发成本,计算开发成本是否会保证项目预期的全部利润[6]。系统的开发基于本人对程序开发的实践学习而来,无需资金投入,并且系统开发过程投入的成本不高,因此开发经费完全可以接受。因此,学校社团管理系统设计与实现在经济上是可行的。3.1.3社会可行性本系统的社会可行性主要从法律因素、用户使用可行性两方面进行研究。(1)法律因素本系统是根据学校社团管理系统设计与实现的实际情况开发研制的,是通过大量的调研得出的,系统的系统设计是在独立的环境下完成的,无可供抄袭的系统产品。(2)用户使用可行性本系统对用户的要求,除了需要具备在MicrosoftWindows平台上使用个人电脑的知识外,并不需要特别的技术能力。使用系统的管理员,,在投入使用前,无需对操作系统的人员进行培训。这样既减少投入成本又简化了操作环节。由以上分析可知,本系统具有社会可行性。4系统设计4.1系统功能设计系统设计是一个把系统需求转换成用系统表示的过程[9]。通过对目标系统的分析和研究,做出了学校社团管理系统设计与实现的总体规划,这是全面开发系统的重要基础。在对学校社团管理系统设计与实现全面分析调查的基础上,制定出学校社团管理系统设计与实现的总体规划。系统设计包括系统总体设计、系统详细设计、系统数据库设计、系统开发工具、开发技术和开发模式等。从数据流图出发,对数据流图进行分析,得出的层次化的模块结构图.学校社团管理系统设计与实现-系统管理员功能模块图如图4.1所示:图4.1网站功能模块图4.2系统数据库设计数据库是本系统的核心和基础[10]。它设计的好坏直接影响着整个系统的质量。数据是一切系统设计的基础,通俗地说,数据库设计就像高楼大厦的根基一样,如果设计的不合理、不完善,将在系统开发过程中,甚至到后期的系统维护、功能变更和功能扩充时,引起较多问题,严重时甚至要重新设计,重做大量已完成工作。4.2.1概念结构设计从数据需求分析中得出系统的实体属性图。系统用户实体属性图如图4.2所示:图4.2系统用户实体属性图社团实体属性图如图4.3所示:图4.3社团实体属性图留言实体属性图如图4.4所示:图4.4留言实体属性图社团类别实体属性图如图4.5所示:图4.5社团类别实体属性图网站简介属性图如图4.6所示:图4.6网站简介实体属性图站内新闻实体属性图如图4.7所示:图4.7站内新闻实体属性图社团活动信息实体属性图如图4.8所示:图4.8社团活动实体属性图社团参与实体属性图如图4.9所示:图4.9社团参与实体属性图E-R模型的组成元素有:实体、属性、联系。E-R模型用E-R图表示。实体是用户工作环境中所涉及的事务,属性是对实体特征的描述[11]。(1)模型中的实体相当于实体集、一个表,而不是单个实体或表中的一行。实体用矩形框表示,实体名称标注在矩形框内。用菱形表示实体间的联系,菱形框内写上联系名,用无向边把菱形分别与有关实体相连接,在无向边旁标上联系的类型[12]。(2)属性是实体的性质。用椭圆框表示,与实体之间用一条线相连表的主码是关键属性,关键属性项加下划线。(3)各系统模块中主键相同的字段之间存在着相互关联的关系。(4)在程序中实现对他们的完整性和一致性控制。从数据需求分析中得出系统的实体属性图,遵循三范式原则,对实体之间的依赖关系进行了整合,得出系统E-R图,如图4.10所示:图系统E-R图说明:图中用矩形表示实体。实体之间的关系用菱形表示,用无向边把菱形与有关实体连接,在边上标明联系的类型。实体的属性用椭圆表示,并用无向边把实体与属性联系起来。4.2.2数据库表设计表4.1系统用户信息表序号字段名类型长度精度小数位数默认值允许空主键说明1idint4√2unamevarchar50√用户名3upassvarchar50√密码4tnamevarchar50姓名5bjvarchar50班级6telvarchar50电话7utypevarchar50用户类型8delstatusvarchar50删除状态9stvarchar50所属社团表4.2网站介绍表序号字段名类型长度精度小数位数默认值允许空主键说明1idint4√2companyjjtext√简介内容表4.3社团表序号字段名类型长度精度小数位数默认值允许空主键说明1idint4√2pnovarchar50√社团编号3pnamevarchar50√社团名称4typevarchar50√社团类型5imgvarchar50√图片6pinfotext√详情表4.4社团类别表序号字段名类型长度精度小数位数默认值允许空主键说明1idint4√2typenamevarchar50√类别名称3delstatusvarchar50√删除状态表4.5留言表序号字段名类型长度精度小数位数默认值允许空主键说明1idint4√2titlevarchar50√留言标题3contenttext√内容4tnamevarchar50√姓名5replytext√回复内容6savetimevarchar50√留言日期表4.6资讯信息表序号字段名类型长度精度小数位数默认值允许空主键说明1idvarchar502titlevarchar50√标题3contenttext√内容4savetimevarchar50√创建日期5typevarchar50类型6imgvarchar50图片表4.7社团活动信息表序号字段名类型长度精度小数位数默认值允许空主键说明1idvarchar502titlevarchar50√标题3contenttext√内容4savetimevarchar50√创建日期5stvarchar50发布社团表4.8人员参与信息表序号字段名类型长度精度小数位数默认值允许空主键说明1idvarchar502stidvarchar50√社团ID3studentidtext√学生ID4jointimevarchar50√申请日期5shstatusvarchar50审核状态4.3本章小结本章主要先给出了系统的功能结构图,其次给出了系统的数据库的概念结构设计和数据库的表的设计。5系统实现5.1登录模块此模块的主要功能是通过用户输入用户名和密码来判断该用户是否是本系统用户和判断用户权限的级别。系统会按照使用者提供的用户名和密码与数据库读出的数据来判断用户。若数据不匹配则会弹出输入错误提示框。如下图5.1所示:图5.1登录
5.2网站首页界面用户输入网站网址后,可以查看网站首页信息,如下图5.2所示:图5.2系网站首页界面 网站首页由社团类别列表、站内新闻、新闻图片轮播模块、社团滚动展示四个模块组成,页面的布局美观且简洁,顾客进入首页即可对公司的状况一目了然,再通过各自的链接可以进入对应的详情页。5.3查看站内新闻界面用户打开网站后,可以查看站内新闻信息。如下图5.3所示:图5.3查看站内新闻界面用户点击新闻标题链接,可以进入新闻详情页,新闻包含了行业新闻和公司新闻,用户可以从新闻获取学校社团的近况和社团动态信息,新闻查询的代码分析如下:<%Stringsql="select*frominfowheretype='1'orderbysavetimedesc";Stringurl="/webstie/notice.jsp?1=1";PageManagerpageManager=PageManager.getPage(url,10,request);pageManager.doList(sql);PageManagerbean=(PageManager)request.getAttribute("page");ArrayList<HashMap>noticelist=(ArrayList)bean.getCollection();for(HashMapm:noticelist){%><TR><TDclass=ddheight=30vAlign=centerwidth="79%"align=left>¡¤<Atitle=<%=m.get("title")%>href="infox.jsp?id=<%=m.get("id")%>"target=""><%=m.get("title")%></A></TD><TDclass=ddheight=30vAlign=centerwidth="21%"align=left><SPAN><%=m.get("savetime").toString()%></SPAN></TD></TR><%}%>通过sql查询新闻列表数据,用PageManager来对数据进行分页显示,getPage(url,10,request)为设置每页显示10条记录,然后对数据集noticelist通过遍历来一一获取其属性,获取属性的方法为如标题m.get("title"),title则为表字段。新闻详情页的查询代码如下:<%Stringid=request.getParameter("id");HashMapinfo=dao.select("select*frominfowhereid="+id).get(0);%>通过request获取新闻ID,再按ID查询新闻实体,通过HASHMAP的get映像方法来对其详情进行展示。5.4查看活动信息界面学生登陆后可以点击功能栏的社团活动,即可查看自己加入的社团的活动信息。如下图5.4所示:图5.4查看活动信息界面 用户点击活动信息进入活动信息详情页,活动信息与新闻共用一张表,通过type来区分,sql为Stringsql="select*frominfowheretype='2'orderbysavetimedesc";其它代码与新闻详情一致。5.5社团详情页面用户打开本系统后,可以查看社团展示信息。如下图5.5所示:图5.5社团详情界面 用户点击社团图片,可以进入社团详情页,社团详情的查询代码为:<%Stringid=request.getParameter("id");HashMapproduct=dao.select("select*fromproductwhereid="+id).get(0);%>,当点击图片时,将社团ID通过REQUEST传值给productx.jsp,再通过此ID查询对应的社团信息;再通过map.get(“”)方法取到社团的各项信息显示在页面。5.6留言界面用户可以输入留言信息提交留言和查看其它人的留言信息。如下图所示:图5.6提交留言图5.6留言界面 用户填写留言信息提交,通过以方法获取表单数据并保存到msg表if(ac.equals("addmsg")){ Stringtitle=request.getParameter("title"); Stringtname=request.getParameter("tname"); Stringcontent=request.getParameter("content"); Stringreply=""; Stringsavetime=Info.getDateStr(); Stringsql="insertintomsg(title,content,tname,reply,savetime)values('"+title+"','"+content+"','"+tname+"','"+reply+"','"+savetime+"')"; mOper(sql); request.setAttribute("suc",""); go("/chat.jsp",request,response); }保存成功后,返回成功到chat.jsp页面。5.7社团申请以及退出社团 学生注册后可以浏览社团并申请加入,对已加入的社团可以在我的社团中查看,学生与社团的关系是一对多的关系,即一个学生可以加入多个社团,学生登陆后,可以在活动界面查询自己所加入的所有社团的活动信息。 学生可以从现已加的社团中退出。图5.7退出社团及申请5.8资讯信息管理界面管理员登录本系统后,可以管理新闻信息。如下图5.8所示:图5.8新闻管理界面添加新闻的代码如下:if(ac.equals("addnotice")){ try{ Stringtitle=""; Stringmt=""; Stringfilename=""; request.setCharacterEncoding("utf-8"); RequestContextrequestContext=newServletRequestContext(request); if(FileUpload.isMultipartContent(requestContext)){ DiskFileItemFactoryfactory=newDiskFileItemFactory(); factory.setRepository(newFile(request.getRealPath("/upfile/")+"/")); ServletFileUploadupload=newServletFileUpload(factory); upload.setSizeMax(100*1024*1024); Listitems=newArrayList(); items=upload.parseRequest(request); title=((FileItem)items.get(0)).getString(); title=Info.getUTFStr(title); mt=((FileItem)items.get(2)).getString(); mt=Info.getUTFStr(mt); FileItemfileItem=(FileItem)items.get(1); if(fileItem.getName()!=null&&fileItem.getSize()!=0){ FilefullFile=newFile(fileItem.getName()); filename=Info.generalFileName(fullFile.getName()); FilenewFile=newFile(request.getRealPath("/upfile/")+"/"+filename); try{ fileItem.write(newFile); }catch(Exceptione){ e.printStackTrace(); } }else{ } } Stringsql="insertintoinfo(title,content,type,savetime,img)values('"+title+"','"+mt+"','1','"+Info.getDateStr()+"','"+filename+"')"; mOper(sql); request.setAttribute("suc",""); go("/admin/n-noticeadd.jsp",request,response); }catch(Exceptione1){ e1.printStackTrace(); request.setAttribute("error",""); request.getRequestDispatcher("/admin/n-noticeadd.jsp").forward(request,response); } }带图片的新闻保存是通过文件流来实现的,图片文件保存于工程下的upfile文件夹下,表info的img字段保存的图片的名字,在显示图片时是通过upfile/图片名称来实现;5.9社团管理界面管理员登录本系统后,可以管理社团信息。如下图5.9所示:图5.9社团管理界面社团管理功能中的添加方法代码实现同图片新闻的实现方式,操作的数据库表为product。管理员在社长管理界面可以为每个社团添加社长用户图5.9添加社长5.10在线互动管理界面管理登陆本系统可以回复顾客的留言图5.10回复留言管理回复留言的实现代码如下://留言回复 if(ac.equals("msghf")){ Stringid=request.getParameter("id"); Stringreply=request.getParameter("mt"); Stringsql="updatemsgsetreply='"+reply+"'whereid="+id; mOper(sql); request.setAttribute("suc",""); go("/admin/n-chathf.jsp",request,response); }后台获取表单提交的留言ID,回复内容,通过更新MSG表数据来完成。5.11网站信息管理界面管理员登录本系统后,可以管理网站简介、联系我们等信息。如下图5.11所示:图5.11网站信息管理界面 公司简介与联系我们共用companyjj,由于此信息各只有一条,所以只需要编辑,故通过ID为区别此类信息,1为公司简介,2为联系我们,它们的实现代码也相同上,具体代码如下://编辑联系我们 if(ac.equals("editcontact")){ Stringcontent=request.getParameter("mt"); Stringsql="updatecompanyjjsetcontent='"+content+"'whereid=2"; mOper(sql); request.setAttribute("suc",""); go("/admin/n-contact.jsp",request,response); } //编辑公司简介 if(ac.equals("editcompanyjj")){ Stringcontent=request.getParameter("mt"); Stringsql="updatecompanyjjsetcontent='"+content+"'whereid=1"; mOper(sql); request.setAttribute("suc",""); go("/admin/n-companyjj.jsp",request,response); }5.12社长管理功能被管理员指定的社长可以管理自己社团的一切事务,如编辑社团简介,发布社团活动,审核加入申请,管理社员等功能图5.12社长管理社长在活动管理中可以维护社团活动信息,可以审批学生提交的加入申请信息,审核通过的学生即成为社团成员,即可接受到社团发布的一切活动信息。6系统测试与分析测试是开发时期最后一个阶段,是保证系统质量的重要手段。系统测试就是在受控制的条件下对系统或应用程序进行操作并评价操作结果的过程,所谓控制条件应包括正常条件与非正常条件。系统测试过程中应该故意地去促使错误的发生,也就是事情在不该出现的时候出现或者在应该出现的时候没有出现。从本质上说,系统测试是"探测",在“探测”中发现系统的毛病。6.1系统测试的重要性系统测试在系统生命周期中占据重要的地位,在传统的瀑布模型中,系统测试学仅处于运行维护阶段之前,是系统产品交付用户使用之前保证系统质量的重要手段。近来,系统工程界趋向于一种新的观点,即认为系统生命周期每一阶段中都应包含测试,从而检验本阶段的成果是否接近预期的目标,尽可能早的发现错误并加以修正,如果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难。事实上,对于系统来讲,不论采用什么技术和什么方法,系统中仍然会有错。采用新的语言、先进的开发方式、完善的开发过程,可以减少错误的引入,但是不可能完全杜绝系统中的错误,这些引入的错误需要测试来找出,系统中的错误密度也需要测试来进行估计。测试是所有工程学科的基本组成单元,是系统开发的重要部分。自有程序设计的那天起测试就一直伴随着。统计表明,在典型的系统开发项目中,系统测试工作量往往占系统开发总工作量的40%以上。而在系统开发的总成本中,用在测试上的开销要占30%到50%。如果把维护阶段也考虑在内,讨论整个系统生存期时,测试的成本比例也许会有所降低,但实际上维护工作相当于二次开发,乃至多次开发,其中必定还包含有许多测试工作。6.2测试实例的研究与选择程序测试的主要方法分为两大类,白盒测试和黑盒测试。白盒测试:一种是以程序的内部逻辑结构为依据而设计测试用例的方法,因而又称结构测试或玻璃盒测试,将系统看成一个透明的白盒子,按照程序的内部结构和处理逻辑来选定测试用例,对系统的逻辑路径及过程进行测试,检查它与设计是否相符[17]。白盒测试就是要选取足够的测试用例,对源代码实行比较充分的覆盖,以便尽可能多地
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024集成电路设计及知识产权保护合同
- 2024年石材幕墙系统工程承揽协议样本版B版
- 2024年环保设备销售与维修合同范本(共3个责任)3篇
- 2024电子竞技赛事组织与运营委托合同
- 2024年集装箱堆场操作合同
- 2024版城市轨道交通建设服务合同
- 2024年通信基础设施建设项目投资合作合同3篇
- 2025年度节日促销活动广告物料制作服务合同2篇
- 2024年精简版服装交易协议范例版
- 2024年职工食堂冷链物流承包经营合同3篇
- 安徽省芜湖市2023-2024学年高一上学期期末考试 生物 含解析
- 通用电子嘉宾礼薄
- GB/T 3280-2015不锈钢冷轧钢板和钢带
- 哈尔滨市城市规划管理技术规定
- 加拿大——文化ppt
- 100以内不进位不退位加减法200道
- 小学期末班级颁奖典礼动态课件PPT
- 开展创新型课题QC小组活动实施指导意见
- 皮具工艺生产流程(共6页)
- 钢结构施工方案(中英文对照)
- 中石油新员工入职登记表格模板
评论
0/150
提交评论