




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
-页共37页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.功能检查:检查功能是否争取,是否遗漏或实现不了应该实现的功能等。2接口检查:检查能否正确地接受信息或输出信息。3数据检查:检查数据结构或外部信息是否有(如数据文件)访问错误。4性能检查:检查性能需求能否得到满足。5初始化、终止检查:检查是否能进行正确地初始化或终止。6.3测试环境与测试条件处理器:Inter(R)Core(TM)2DuoT5750内存:2GB硬盘:250G操作系统:Windows7数据库:SQLServer20086.4系统运行情况通过对系统的全面测试,所有测试条目都已经通过,实现了基本要求,系统可以正常运行。6.5本章小结本章主要是对系统进行测试,首先介绍了系统测试的重要性,其次给出了测试实例的研究与选择,再次给出了测试的条件与测试的环境,最后得出了系统运行情况。
7结论通过几个月的努力,学校社团管理系统设计与实现在指导老师的全心指导下,在同学的积极配合与帮助下,基本功能顺利完成。在数据库的开发方面,我学到了不少关于JSP和SQL2005的知识。开发时遇到了许多的困难,但是通过自己的努力,还有老师同学们的帮助,最终还是迎刃而解了。这次毕业设计完全是按照软件工程学的方法来进行设计和开发的。在开发过程中,认真调查分析了用户的需求,及时准备了详细的文档资料,这让我在开发过程中少走了许多弯路。本次设计开发的系统较为庞大,涉及的用户较多,数据库设计比较复杂,使我深刻地体会到软件开发是一项集体项目,单靠一个人就想解决所有的问题是不太实际的。这对我以后的学习、工作有很大的帮助。同时,在这次设计中,我也发现了自己的很多不足。首先,对JAVA的掌握还不是很全面,对于数据库管理系统的操作运用也不够熟练,以至于在系统开发过程中经常碰到一些疑难问题不能快速的解决。其次,就是在准备系统设计文档时,没有反复推敲、验证,以至于在开发过程中出现几次由于数据库设计不合理,修改数据库,而几乎修改所有程序代码的情况。再者,是对整个软件开发的把握能力有待于进一步提高,以及对网页设计的诸多方面知识也待进一步学习,这些都是我今后应该注意和提高的。
参考文献[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]程聃.基于网上教育系统地设计与实现[D].成都:电子科技大学,2010.[13]MinHu,JingZhang.AScalabilityDesignofJAVAPageSkin[J].EnergyProcedia,2011.[14]Wen-chaoFan.Basedonextendedthree-tierarchitecturewebdiskdesign[J].ProcediaEngineering,2011.[15]MoJinglin.DesignandImplementationofDistanceTeachingPlatformBasedonASP.NET[J].EnergyProcedia,2011.[16]魏祖宽.数据库系统及应用[M].北京:电子工业出版社,2008.[17]杜娟,赵春艳.信息系统分析与设计.北京:清华大学出版社,2008.
致谢在本次毕业设计过程中,得到了指导老师的指导与支持。在此特别感谢老师的大力帮助。指导老师的悉心指导和大力支持,在总体结构、功能的把握上给予了非常大的帮助,同时根我们提供了非常优越的设计环境,并对我在编程、数据库设计等细节工作上给予了耐心的指导,对于我们小组顺利完成这次毕业设计起到了关键性的作用。基于C8051F单片机直流电动机反馈控制系统的设计与研究基于单片机的嵌入式Web服务器的研究MOTOROLA单片机MC68HC(8)05PV8/A内嵌EEPROM的工艺和制程方法及对良率的影响研究基于模糊控制的电阻钎焊单片机温度控制系统的研制基于MCS-51系列单片机的通用控制模块的研究基于单片机实现的供暖系统最佳启停自校正(STR)调节器单片机控制的二级倒立摆系统的研究基于增强型51系列单片机的TCP/IP协议栈的实现基于单片机的蓄电池自动监测系统基于32位嵌入式单片机系统的图像采集与处理技术的研究基于单片机的作物营养诊断专家系统的研究基于单片机的交流伺服电机运动控制系统研究与开发基于单片机的泵管内壁硬度测试仪的研制基于单片机的自动找平控制系统研究基于C8051F040单片机的嵌入式系统开发基于单片机的液压动力系统状态监测仪开发模糊Smith智能控制方法的研究及其单片机实现一种基于单片机的轴快流CO〈,2〉激光器的手持控制面板的研制基于双单片机冲床数控系统的研究基于CYGNAL单片机的在线间歇式浊度仪的研制基于单片机的喷油泵试验台控制器的研制基于单片机的软起动器的研究和设计基于单片机控制的高速快走丝电火花线切割机床短循环走丝方式研究基于单片机的机电产品控制系统开发基于PIC单片机的智能手机充电器基于单片机的实时内核设计及其应用研究基于单片机的远程抄表系统的设计与研究基于单片机的烟气二氧化硫浓度检测仪的研制基于微型光谱仪的单片机系统单片机系统软件构件开发的技术研究基于单片机的液体点滴速度自动检测仪的研制基于单片机系统的多功能温度测量仪的研制基于PIC单片机的电能采集终端的设计和应用基于单片机的光纤光栅解调仪的研制气压式线性摩擦焊机单片机控制系统的研制基于单片机的数字磁通门传感器基于单片机的旋转变压器-数字转换器的研究基于单片机的光纤Bragg光栅解调系统的研究单片机控制的便携式多功能乳腺治疗仪的研制基于C8051F020单片机的多生理信号检测仪基于单片机的电机运动控制系统设计Pico专用单片机核的可测性设计研究基于MCS-51单片机的热量计基于双单片机的智能遥测微型气象站MCS-51单片机构建机器人的实践研究基于单片机的轮轨力检测基于单片机的GPS定位仪的研究与实现基于单片机的电液伺服控制系统用于单片机系统的MMC卡文件系统研制基于单片机的时控和计数系统性能优化的研究基于单片机和CPLD的粗光栅位移测量系统研究单片机控制的后备式方波UPS提升高职学生单片机应用能力的探究基于单片机控制的自动低频减载装置研究基于单片机控制的水下焊接电源的研究基于单片机的多通道数据采集系统基于uPSD3234单片机的氚表面污染测量仪的研制基于单片机的红外测油仪的研究96系列单片机仿真器研究与设计基于单片机的单晶金刚石刀具刃磨设备的数控改造基于单片机的温度智能控制系统的设计与实现基于MSP430单片机的电梯门机控制器的研制基于单片机的气体测漏仪的研究基于三菱M16C/6N系列单片机的CAN/USB协议转换器基于单片机和DSP的变压器油色谱在线监测技术研究基于单片机的膛壁温度报警系统设计基于AVR单片机的低压无功补偿控制器的设计基于单片机船舶电力推进电机监测系统基于单片机网络的振动信号的采集系统基于单片机的大容量数据存储技术的应用研究基于单片机的叠图机研究与教学方法实践基于单片机嵌入式Web服务器技术的研究及实现基于AT89S52单片机的通用数据采集系统基于单片机的多道脉冲幅度分析仪研究机器人旋转电弧传感角焊缝跟踪单片机控制系统基于单片机的控制系统在PLC虚拟教学实验中的应用研究基于单片机系统的网络通信研究与应用基于PIC16F877单片机的莫尔斯码自动译码系统设计与研究HYPERLINK"/d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大学毕业季探讨活动方案
- 大学素质活动策划方案
- 大学健美操外联活动方案
- 地摊卖茶活动方案
- 大型早操活动方案
- 大暑温泉活动方案
- 大班活动秋游活动方案
- 处长抽奖活动方案
- 夏日肯德基活动方案
- 大型订单活动方案
- 2025年湖北省中考道德与法治真题含答案
- 2024年上海浦东新区公办学校储备教师招聘笔试真题
- 物流司机奖罚管理制度
- 2025年全国统一高考英语试卷(全国一卷)含答案
- 2025年全国普通高校招生全国统一考试数学试卷(新高考Ⅰ卷)含答案
- 2025年河南省豫地科技集团有限公司社会招聘169人笔试参考题库附带答案详解析集合
- 【KAWO科握】2025年中国社交媒体平台指南报告
- 大部分分校:地域文化形考任务一-国开(CQ)-国开期末复习资料
- 医疗保险基金使用监督管理条例
- 福建省厦门市2024年高一下学期期末考试英语试题含解析
- (完整版)热食类食品制售操作流程
评论
0/150
提交评论