高校社团管理系统_学位论文.doc

高校社团管理系统_学位论文.doc

ID:14382428

大小:2.97 MB

页数:40页

时间:2018-07-28

上传者:zhaojunhui
高校社团管理系统_学位论文.doc_第1页
高校社团管理系统_学位论文.doc_第2页
高校社团管理系统_学位论文.doc_第3页
高校社团管理系统_学位论文.doc_第4页
高校社团管理系统_学位论文.doc_第5页
资源描述:

《高校社团管理系统_学位论文.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

高校社团管理系统摘要本文采用自顶向下的结构化的系统分析方法,阐述了一个功能全面的学生社团管理系统网站设计与实现的开发过程、操作流程及其一些核心的技术。本文首先进行了项目概述,简单介绍了项目开发的背景、项目开发的目的和项目开发的意义;接下来是系统规划阶段,通过实际的业务流程调研,分析了系统的组织结构,具体完成了学生社团管理系统设计与实现的需求分析、可行性分析、现行业务流程分析,并通过对现行业务流程的优化,得出了系统的业务流程;之后是系统分析,具体完成了数据流分析和数据字典;系统设计阶段主要完成了功能模块的划分、数据库的设计和系统界面设计。该阶段对各个模块的功能进行了详细设计,形成了本系统的功能模块图,在此基础上选择了合适的开发模式;数据库的设计先进行了概念结构设计,之后进行了逻辑结构设计,最后完成了数据库表的设计。根据前几个阶段的分析和设计,本系统使用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 目录1引言11.1项目开发的背景11.2项目开发的意义11.3国内外发展状况11.4本章小结32关键技术介绍42.1JSP技术42.2JAVA语言42.3servlet简介62.4SQL2005技术72.5系统设计模式82.6本章小结93系统分析103.1系统可行性分析103.1.1技术可行性103.1.2经济可行性103.1.3社会可行性104系统设计124.1系统功能设计124.2系统数据库设计124.2.1概念结构设计134.2.2数据库表设计164.3本章小结195系统实现205.1登录模块20第Ⅰ页共Ⅱ页第Ⅰ页共Ⅱ页 5.2网站首页界面215.3查看站内新闻界面215.4查看活动信息界面225.5社团详情页面235.6留言界面245.7社团申请以及退出社团255.8资讯信息管理界面255.9社团管理界面275.10在线互动管理界面285.11网站信息管理界面295.12社长管理功能306系统测试与分析316.1系统测试的重要性316.2测试实例的研究与选择316.3测试环境与测试条件326.4系统运行情况336.5本章小结337结论34参考文献35致谢37第Ⅱ页共Ⅱ页第Ⅰ页共Ⅱ页 1引言1.1项目开发的背景随着Internet国际互联网的发展,越来越多的学校开始注重信息化对内部管理及办事效率发展的有利作用,和对学校管理起到的至关重要性。基于Internet的信息服务,已经成为现代学校一项不可缺少的内容。很多学校都已不满足于纸制化办公及庸散的管理方式。学校需要的是一个功能强大的,能提供完善的管理方式、高速的信息传达速度及精确的信息的信息管理系统。随着科技发展和社会进步,尤其是计算机大范围的普及,计算机应用逐渐由海量数据处理转向大规模的事务处理和对工作流的管理,这就产生了以台式计算机为核心,以数据库管理系统为开发环境的管理信息系统,以及在大规模的事务处理和对工作流的管理等方面的应用。开发学生社团管理系统能够使学校对校内社团的管理更加规范化、合理化。能够有效的快速记录大量的学生的信息,并能对其进行修改使学生用户能够运用简便的方法能够快速的查到他们所在社团的信息,并且能够在线对社团进行全方位的科学调控和管理。1.2项目开发的意义本课题设计一个学校社团管理系统,建设一个社团管理系统对学样管理社团提供更有效的手段,现今学校社团琳琅满目,学校对社团的监管手段落后,以致于对社团的情况和其活动开展内容不了解,导致校内社团不能健康分展,而本系统的开发为学校提供了一个监管社团的平台,为社团提供了一个在线吸纳社员的平台,为学生提供了一个在线选择社团的平台,系统面向三种用户,为每种用户提供了全面而又贴心的服务功能。1.3国内外发展状况第36页共37页 伴随着高等教育社会化趋势的深入发展,高校人才培养目标进一步与社会需求接轨,越来越多的大学生认识到,在校期间参加学生社团,可以积累一定的社会阅历,对于将来尽快适应社会非常重要。所以,大学生参加社团动因要从纯粹的兴趣向“兴趣+务实”转变。社团发展取向日趋多元化。当代大学生的主体已经是“80后”和“90后”,他们是在改革开放的大环境中和社会多元化的条件下成长起来的。社会经济成分、组织形式、就业方式、利益关系和分配方式日益多样化,还有社会阶层出现多样性,加之农村进城务工人员的增加和社会流动的加快,这些因素决定了当代大学生成长背景的多元化。随着高校成本分担制的实施,高校中经济困难学生增加。在学生社团发展取向日趋多元化的情况下,学生社团的类型日益丰富。文艺、体育等传统意义上的社团依然是学生关注的重点,近年来尤其以文学艺术类社团增加较快。而一些有较强专业知识背景的学术科技类社团和志愿服务、环保等社会公益类团正为越来越多的学生所关注。一份关于浙江省高校学生社团的调查报告显示:“有91%的大学生认为,发展社团尤为重要,学生对参与社团的认识正体现了素教育所强调的‘充分发挥个人的主观能动性,在可能的发展水平内充分、由发展’的教育理念”,“学生参与社团的目的主要有以下两类:中心目的,如相互交流学习,锻炼处世能力,结交对自己有益的朋友和休闲娱乐;边缘目的,如展示才华,寻求精神寄托,提高自己的声誉和地位等。”嘲在新兴的学生社团中,出现了很多在内容和形式上都有别于传统社团的“新面孔”:新小康协会、社会交际创造协会IT社团联盟、大学生信用自律协会、太空俱乐部、素食文化协会、性医学会等。第36页共37页 由于高校学生社团活动经费普遍缺乏,在一定程度上限制了社团的健康发展。为了解决社团资金的困扰,许多社团走出校门以自身的活动魅力吸引社会资金的投入,为社团与社会联系创造良好条件,促进了社团自身的社会化。越来越多的社团正在尝试积极利用社会资源,逐渐由单靠学校划拨资金发展为多渠道筹集资金,包括与社会企业联合开展活动。得到企业的经费支持,社团活动可以在更大范围内和更高层次上开展。目前,一些文艺类、体育类、学术科技类社团由于具有这方面较强的优势,已经率先在尝试将这种方式固化为社团资金来源的经常渠道。尤其是一些科技类社团,在积极争取社会资源的同时,也找到了将自己的科技成果产业化的有效途径。社团和企业双向受益,形成良性循环。此外,大学生对新鲜事物的关注力度大,对不同领域思想的渴求程度强,接受各种新鲜事物的速度和热情都很高。他们比其他社会成员更快、更多地形成了与改革开放和社会主义市场经济相适应的思想观念和行为方式,对越来越多的社会成员摆脱传统观念的束缚,形成与现代社会发展相适应的思想观念和行为方式具有重要的反哺功能。公益类社团的不断涌现,就是文化反哺的重要体现。1.4本章小结本章主要从两方面进行介绍,第一方面是系统开发的背景,第二方面是系统开发的意义。第36页共37页 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是一种简单的,面象对象的,分布式的,解释的,健壮的安全的,结构的中立的,可移植的,性能很优异的多线程的,动态的语言。它有以下特点:第36页共37页 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键壮性第36页共37页 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)服务器将响应信息返回至客户端。 第36页共37页 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应用程序,使客户只需最少的安装和管理开销即可实现这些应用程序。第36页共37页 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系列的BizTalk2000Exchange第36页共37页 2000等,全面支持网络的构件搭建的系统。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系统可行性分析为避免投资失误,保证新系统的成功开发和运行,从技术、经济和社会三方面对本系统的可行性进行了分析和研究。第36页共37页 3.1.1技术可行性该系统拟采用成熟的数据库技术与系统开发技术,使用MicrosoftSQL2008和JSP技术.本系统对用户的要求,除了需要具备在MicrosoftWindows平台上使用个人电脑的知识外,并不需要特别的技术能力。使用系统的管理员,在投入使用前,无需对操作系统的人员进行培训。这样既减少投入成本又简化了操作环节。因此,开发该系统具有技术可行性。3.1.2经济可行性经济可行性分析要估计项目的成本和效益,分析项目经济上是否合理。即进行成本效益分析,评估项目的开发成本,计算开发成本是否会保证项目预期的全部利润[6]。系统的开发基于本人对程序开发的实践学习而来,无需资金投入,并且系统开发过程投入的成本不高,因此开发经费完全可以接受。因此,学校社团管理系统设计与实现在经济上是可行的。3.1.3社会可行性本系统的社会可行性主要从法律因素、用户使用可行性两方面进行研究。(1)法律因素本系统是根据学校社团管理系统设计与实现的实际情况开发研制的,是通过大量的调研得出的,系统的系统设计是在独立的环境下完成的,无可供抄袭的系统产品。(2)用户使用可行性本系统对用户的要求,除了需要具备在MicrosoftWindows平台上使用个人电脑的知识外,并不需要特别的技术能力。使用系统的管理员,,在投入使用前,无需对操作系统的人员进行培训。这样既减少投入成本又简化了操作环节。由以上分析可知,本系统具有社会可行性。第36页共37页 4系统设计4.1系统功能设计系统设计是一个把系统需求转换成用系统表示的过程[9]。通过对目标系统的分析和研究,做出了学校社团管理系统设计与实现的总体规划,这是全面开发系统的重要基础。在对学校社团管理系统设计与实现全面分析调查的基础上,制定出学校社团管理系统设计与实现的总体规划。系统设计包括系统总体设计、系统详细设计、系统数据库设计、系统开发工具、开发技术和开发模式等。从数据流图出发,对数据流图进行分析,得出的层次化的模块结构图.学校社团管理系统设计与实现-系统管理员功能模块图如图4.1所示:第36页共37页 图4.1网站功能模块图4.2系统数据库设计数据库是本系统的核心和基础[10]。它设计的好坏直接影响着整个系统的质量。数据是一切系统设计的基础,通俗地说,数据库设计就像高楼大厦的根基一样,如果设计的不合理、不完善,将在系统开发过程中,甚至到后期的系统维护、功能变更和功能扩充时,引起较多问题,严重时甚至要重新设计,重做大量已完成工作。4.2.1概念结构设计从数据需求分析中得出系统的实体属性图。系统用户实体属性图如图4.2所示:图4.2系统用户实体属性图社团实体属性图如图4.3所示:第36页共37页 图4.3社团实体属性图留言实体属性图如图4.4所示:图4.4留言实体属性图社团类别实体属性图如图4.5所示:图4.5社团类别实体属性图网站简介属性图如图4.6所示:第36页共37页 图4.6网站简介实体属性图站内新闻实体属性图如图4.7所示:图4.7站内新闻实体属性图社团活动信息实体属性图如图4.8所示:图4.8社团活动实体属性图社团参与实体属性图如图4.9所示:图4.9社团参与实体属性图第36页共37页 E-R模型的组成元素有:实体、属性、联系。E-R模型用E-R图表示。实体是用户工作环境中所涉及的事务,属性是对实体特征的描述[11]。(1)模型中的实体相当于实体集、一个表,而不是单个实体或表中的一行。实体用矩形框表示,实体名称标注在矩形框内。用菱形表示实体间的联系,菱形框内写上联系名,用无向边把菱形分别与有关实体相连接,在无向边旁标上联系的类型[12]。(2)属性是实体的性质。用椭圆框表示,与实体之间用一条线相连表的主码是关键属性,关键属性项加下划线。(3)各系统模块中主键相同的字段之间存在着相互关联的关系。(4)在程序中实现对他们的完整性和一致性控制。从数据需求分析中得出系统的实体属性图,遵循三范式原则,对实体之间的依赖关系进行了整合,得出系统E-R图,如图4.10所示:第36页共37页 图4.10系统E-R图说明:图中用矩形表示实体。实体之间的关系用菱形表示,用无向边把菱形与有关实体连接,在边上标明联系的类型。实体的属性用椭圆表示,并用无向边把实体与属性联系起来。4.2.2数据库表设计表4.1系统用户信息表序号字段名类型长度精度小数位数默认值允许空主键说明1idint4√2unamevarchar50√用户名3upassvarchar50√密码4tnamevarchar50姓名5bjvarchar50班级6telvarchar50电话7utypevarchar50用户类型8delstatusvarchar50删除状态9stvarchar50所属社团表4.2网站介绍表序号字段名类型长度精度小数位数默认值允许空主键说明第36页共37页 1idint4√2companyjjtext√简介内容表4.3社团表序号字段名类型长度精度小数位数默认值允许空主键说明1idint4√2pnovarchar50√社团编号3pnamevarchar50√社团名称4typevarchar50√社团类型5imgvarchar50√图片6pinfotext√详情表4.4社团类别表序号字段名类型长度精度小数位数默认值允许空主键说明1idint4√2typenamevarchar50√类别名称3delstatusvarchar50√删除状态表4.5留言表序号字段名类型长度精度小数位数默认值允许空主键说明1idint4√2titlevarchar50√留言标题3contenttext√内容4tnamevarchar50√姓名5replytext√回复内容6savetimevarchar50√留言日期第36页共37页 表4.6资讯信息表序号字段名类型长度精度小数位数默认值允许空主键说明1idvarchar502titlevarchar50√标题3contenttext√内容4savetimevarchar50√创建日期5typevarchar50类型6imgvarchar50图片表4.7社团活动信息表序号字段名类型长度精度小数位数默认值允许空主键说明1idvarchar502titlevarchar50√标题3contenttext√内容4savetimevarchar50√创建日期5stvarchar50发布社团表4.8人员参与信息表序号字段名类型长度精度小数位数默认值允许空主键说明1idvarchar502stidvarchar50√社团ID3studentidtext√学生ID4jointimevarchar50√申请日期5shstatusvarchar50审核状态第36页共37页 4.3本章小结本章主要先给出了系统的功能结构图,其次给出了系统的数据库的概念结构设计和数据库的表的设计。5系统实现5.1登录模块此模块的主要功能是通过用户输入用户名和密码来判断该用户是否是本系统用户和判断用户权限的级别。系统会按照使用者提供的用户名和密码与数据库读出的数据来判断用户。若数据不匹配则会弹出输入错误提示框。如下图5.1所示:图5.1登录第36页共37页 5.2网站首页界面用户输入网站网址后,可以查看网站首页信息,如下图5.2所示:图5.2系网站首页界面网站首页由社团类别列表、站内新闻、新闻图片轮播模块、社团滚动展示四个模块组成,页面的布局美观且简洁,顾客进入首页即可对公司的状况一目了然,再通过各自的链接可以进入对应的详情页。5.3查看站内新闻界面用户打开网站后,可以查看站内新闻信息。如下图5.3所示:图5.3查看站内新闻界面用户点击新闻标题链接,可以进入新闻详情页,新闻包含了行业新闻和公司新闻,用户可以从新闻获取学校社团的近况和社团动态信息,新闻查询的代码分析如下:第36页共37页 <%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");ArrayListnoticelist=(ArrayList)bean.getCollection();for(HashMapm:noticelist){%>¡¤href="infox.jsp?id=<%=m.get("id")%>"target=""><%=m.get("title")%><%=m.get("savetime").toString()%><%}%>通过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所示:第36页共37页 图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(“”)方法取到社团的各项信息显示在页面。第36页共37页 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+"')";dao.commOper(sql);request.setAttribute("suc","");第36页共37页 go("/chat.jsp",request,response);}保存成功后,返回成功到chat.jsp页面。5.7社团申请以及退出社团学生注册后可以浏览社团并申请加入,对已加入的社团可以在我的社团中查看,学生与社团的关系是一对多的关系,即一个学生可以加入多个社团,学生登陆后,可以在活动界面查询自己所加入的所有社团的活动信息。学生可以从现已加的社团中退出。图5.7退出社团及申请5.8资讯信息管理界面管理员登录本系统后,可以管理新闻信息。如下图5.8所示:图5.8新闻管理界面第36页共37页 添加新闻的代码如下: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{第36页共37页 }}Stringsql="insertintoinfo(title,content,type,savetime,img)values('"+title+"','"+mt+"','1','"+Info.getDateStr()+"','"+filename+"')";dao.commOper(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社团管理界面第36页共37页 社团管理功能中的添加方法代码实现同图片新闻的实现方式,操作的数据库表为product。管理员在社长管理界面可以为每个社团添加社长用户图5.9添加社长5.10在线互动管理界面管理登陆本系统可以回复顾客的留言图5.10回复留言管理回复留言的实现代码如下://留言回复if(ac.equals("msghf")){Stringid=request.getParameter("id");Stringreply=request.getParameter("mt");Stringsql="updatemsgsetreply='"+reply+"'whereid="+id;dao.commOper(sql);第36页共37页 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";dao.commOper(sql);request.setAttribute("suc","");go("/admin/n-contact.jsp",request,response);}//编辑公司简介if(ac.equals("editcompanyjj")){Stringcontent=request.getParameter("mt");第36页共37页 Stringsql="updatecompanyjjsetcontent='"+content+"'whereid=1";dao.commOper(sql);request.setAttribute("suc","");go("/admin/n-companyjj.jsp",request,response);}5.12社长管理功能被管理员指定的社长可以管理自己社团的一切事务,如编辑社团简介,发布社团活动,审核加入申请,管理社员等功能图5.12社长管理社长在活动管理中可以维护社团活动信息,可以审批学生提交的加入申请信息,审核通过的学生即成为社团成员,即可接受到社团发布的一切活动信息。第36页共37页 6系统测试与分析测试是开发时期最后一个阶段,是保证系统质量的重要手段。系统测试就是在受控制的条件下对系统或应用程序进行操作并评价操作结果的过程,所谓控制条件应包括正常条件与非正常条件。系统测试过程中应该故意地去促使错误的发生,也就是事情在不该出现的时候出现或者在应该出现的时候没有出现。从本质上说,系统测试是"探测",在“探测”中发现系统的毛病。6.1系统测试的重要性系统测试在系统生命周期中占据重要的地位,在传统的瀑布模型中,系统测试学仅处于运行维护阶段之前,是系统产品交付用户使用之前保证系统质量的重要手段。近来,系统工程界趋向于一种新的观点,即认为系统生命周期每一阶段中都应包含测试,从而检验本阶段的成果是否接近预期的目标,尽可能早的发现错误并加以修正,如果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难。事实上,对于系统来讲,不论采用什么技术和什么方法,系统中仍然会有错。采用新的语言、先进的开发方式、完善的开发过程,可以减少错误的引入,但是不可能完全杜绝系统中的错误,这些引入的错误需要测试来找出,系统中的错误密度也需要测试来进行估计。测试是所有工程学科的基本组成单元,是系统开发的重要部分。自有程序设计的那天起测试就一直伴随着。统计表明,在典型的系统开发项目中,系统测试工作量往往占系统开发总工作量的40%以上。而在系统开发的总成本中,用在测试上的开销要占30%到50%。如果把维护阶段也考虑在内,讨论整个系统生存期时,测试的成本比例也许会有所降低,但实际上维护工作相当于二次开发,乃至多次开发,其中必定还包含有许多测试工作。6.2测试实例的研究与选择程序测试的主要方法分为两大类,白盒测试和黑盒测试。第36页共37页 白盒测试:一种是以程序的内部逻辑结构为依据而设计测试用例的方法,因而又称结构测试或玻璃盒测试,将系统看成一个透明的白盒子,按照程序的内部结构和处理逻辑来选定测试用例,对系统的逻辑路径及过程进行测试,检查它与设计是否相符[17]。白盒测试就是要选取足够的测试用例,对源代码实行比较充分的覆盖,以便尽可能多地发现程序中的错误。主要有两种方法:一种称为逻辑覆盖法,另一种称为路径覆盖法。黑盒测试:也称功能测试,数据驱动测试等,它将待测对象堪称是一个黑盒子,在完全不考虑程序的内部结构和特性的情况下,只依据规格说明书检查程序的功能是否能正常使用。黑盒测试主要是根据输入条件和输出条件的确定测试数据,来检查程序是否能产生正确的输出。进行黑盒测试主要有下面几种方法:等价分类法、边界值分析法、猜错法、因果图法。本系统的测试综合了白盒测试、黑盒测试两种方法,但主要使用的是黑盒测试方法。在测试当中遵循了“尽早地和不断进行测试”,“保证测试用例的完整性和有效性”原则。通过测试达到以下测试目的:1.功能检查:检查功能是否争取,是否遗漏或实现不了应该实现的功能等。2接口检查:检查能否正确地接受信息或输出信息。3数据检查:检查数据结构或外部信息是否有(如数据文件)访问错误。4性能检查:检查性能需求能否得到满足。5初始化、终止检查:检查是否能进行正确地初始化或终止。6.3测试环境与测试条件处理器:Inter(R)Core(TM)2DuoT5750内存:2GB硬盘:250G操作系统:Windows7数据库:SQLServer2008第36页共37页 6.4系统运行情况通过对系统的全面测试,所有测试条目都已经通过,实现了基本要求,系统可以正常运行。6.5本章小结本章主要是对系统进行测试,首先介绍了系统测试的重要性,其次给出了测试实例的研究与选择,再次给出了测试的条件与测试的环境,最后得出了系统运行情况。第36页共37页 7结论通过几个月的努力,学校社团管理系统设计与实现在指导老师的全心指导下,在同学的积极配合与帮助下,基本功能顺利完成。在数据库的开发方面,我学到了不少关于JSP和SQL2005的知识。开发时遇到了许多的困难,但是通过自己的努力,还有老师同学们的帮助,最终还是迎刃而解了。这次毕业设计完全是按照软件工程学的方法来进行设计和开发的。在开发过程中,认真调查分析了用户的需求,及时准备了详细的文档资料,这让我在开发过程中少走了许多弯路。本次设计开发的系统较为庞大,涉及的用户较多,数据库设计比较复杂,使我深刻地体会到软件开发是一项集体项目,单靠一个人就想解决所有的问题是不太实际的。这对我以后的学习、工作有很大的帮助。同时,在这次设计中,我也发现了自己的很多不足。首先,对JAVA的掌握还不是很全面,对于数据库管理系统的操作运用也不够熟练,以至于在系统开发过程中经常碰到一些疑难问题不能快速的解决。其次,就是在准备系统设计文档时,没有反复推敲、验证,以至于在开发过程中出现几次由于数据库设计不合理,修改数据库,而几乎修改所有程序代码的情况。再者,是对整个软件开发的把握能力有待于进一步提高,以及对网页设计的诸多方面知识也待进一步学习,这些都是我今后应该注意和提高的。第36页共37页 参考文献[1]蒋朝芳.生产车间物资信息管理系统的设计与实现[D].四川:电子科技大学,2010.[2]李海芸.利用JAVA开发全国计算机等级考试成绩查询系统[J].甘肃:科技信息,2008.[3]郑艳.“信息技术基础”企业网站的设计与实现[J].无锡:无锡职业技术学院学报,2011.[4]傅明丽,李健.基于java的考生报名信息采集[J].贵州:中国成人教育,2007.[5]张丽;马丽JAVA中用TreeView实现对服务器目录的浏览和设置[J].河南:光盘技术,2008.[6]赵铭建,赵慧,乔孟丽,康梅娟.网页设计与制作[M].东营:中国石油大学出版社,2007.[7]孙福振,李艳,李业刚.基于J2EE的MVC设计模式的研究与实现[J].山东理工大学学报(自然科学版).2006.20(2):49-56[8]刘洁.基于B/S架构的考试系统设计与实现[D].天津:天津大学,2011.[9]林志庆.基于java技术的网站管理信息系统设计[J].福建:福建电脑,2010.[10]孙福振,李艳,李业刚.基于J2EE的MVC设计模式的研究与实现[J].山东理工大学学报(自然科学版).2006.20(2):49-56.[11]金理清.浅析JSP的网站关键技术设计与实现[J].浙江:电脑编程技巧与维护,2009.[12]程聃.基于asp.net网上教育系统地设计与实现[D].成都:电子科技大学,2010.[13]MinHu,JingZhang.AScalabilityDesignofJAVAPageSkin[J].EnergyProcedia,2011.第36页共37页 [14]Wen-chaoFan.Basedonextendedthree-tierarchitecturewebdiskdesign[J].ProcediaEngineering,2011.[15]MoJinglin.DesignandImplementationofDistanceTeachingPlatformBasedonASP.NET[J].EnergyProcedia,2011.[16]魏祖宽.数据库系统及应用[M].北京:电子工业出版社,2008.[17]杜娟,赵春艳.信息系统分析与设计.北京:清华大学出版社,2008.第36页共37页 致谢在本次毕业设计过程中,得到了指导老师的指导与支持。在此特别感谢老师的大力帮助。指导老师的悉心指导和大力支持,在总体结构、功能的把握上给予了非常大的帮助,同时根我们提供了非常优越的设计环境,并对我在编程、数据库设计等细节工作上给予了耐心的指导,对于我们小组顺利完成这次毕业设计起到了关键性的作用。第36页共37页

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭