• 3.92 MB
  • 2022-04-22 13:35:25 发布

光纤通信系统开发技术毕业论文.doc

  • 37页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'河南理工大学毕业设计(论文)说明书光纤通信系统开发技术毕业论文目录1前言11.1研究背景11.2研究目的11.3研究内容12系统开发技术简介22.1HTML语言22.2JSP技术22.2.1JSP的工作原理32.2.2JSP的优势42.2.3JSP的技术方法42.3JDBC52.3.1JDBC的用途62.3.2API62.4MysqL数据库72.4.1系统特性72.4.2应用环境82.5Myeclipse82.6Tomcat7.083系统需求分析103.1系统的性能要求103.2系统功能需求分析103.2.1功能划分1036 河南理工大学毕业设计(论文)说明书3.2.2功能描述113.3用例模型123.3.1学生用户用例图123.3.2教师用户用例图123.4时序图133.4.1最新动态管理时序图133.4.2下载文件管理时序图133.4.3在线交流时序图144系统设计154.1系统结构设计154.2MysqL数据库中表的设计154.2.1用户表的设计为t_user154.2.2最新动态表设计为t_message164.2.3教学进度表设计为t_goals和表t_tasks164.2.4作业习题表设计为t_ziliao174.2.5文件下载表设计为t_sharefile174.2.6讲师介绍表的设计184.2.7在线交流模块表的设计184.2.8教课资源存储表的设计195网站系统的实现205.1登录界面205.2课程简介205.3Teacher用户登录215.3.1进入主界面215.3.2教学进度215.3.3作业习题225.3.4文件下载235.3.4讲师介绍245.3.5在线交流255.4学生用户登录(学生名为:郭磊)265.4.1浏览最新动态并评论2636 河南理工大学毕业设计(论文)说明书5.4.2查看教学计划265.4.3习题作业275.4.4文件下载275.4.5浏览讲师介绍285.4.6在线交流286课题网站的测试296.1运行环境的规定296.2网站测试简介296.2.1静态测试296.2.2动态测试296.3功能测试316.3.1服务器测试316.3.2点击进入模块时出现代码错误316.3.3教学进度测试32结论33致谢34参考文献351前言1.1研究背景现在社会,人们已经离不开网络,网络已经成为人与人之间交流的一种成熟的形式,并且能把事情的复杂化转为简单化。而课题网站正是互联网与教育之间紧密联系的体现。1.2研究目的36 河南理工大学毕业设计(论文)说明书课程网站要实现的功能就是教学内容可以网上发布,并且可以供学生用户自主的学习。教师可以通过上传文章、课件、视频、作业习题及答案,在网站上完善自己的课程资源,其中课程资源要能够兼容多种不同的文件格式,包括Word、Excel、PowerPoint、Pdf、图形、音频、视频等等,并且教师拥有管理网站所有资源的权限,可以上传、删除各种形式的授课资源和管理在线交流系统中的用户发言。学生用户可以根据自己的需要随时的访问课程网站,阅读文章、下载课程资源以及给授课教师留言等待答疑。简单来说,课题网站的目的就是方便教师与学生用户随时随地登陆网站平台,并实现较好的交互性。1.3研究内容一个较为完善的课程网站系统平台,应该是方便管理与操作的,所以该系统应该还有一个强大的后台管理系统:可以进行授课资源管理、用户在线发言管理。互联网高度发展的今天,应用于动态网页的的技术有很多,《光纤通信与设计课程网站》系统中主要踩用了Jsp技术和数据库技术的整合:采用的数据库是MysqL数据库,拟建立名称pms数据库;网站页面主要采用动态页面,利用Jsp与数据库结合的技术建立数据库管理查询系统,采用交互式的动态web画面来实现课件、文章、视频的管理以及用户的远程浏览要求系统能够实现基于校园网络环境下的资源管理,以便有效地管理用户们上传的资源,构建合适的资源数据库。网站系统采用B/S结构,即浏览器/服务器结构。用户用浏览器通过网络向服务器发出请求,服务器对浏览器的请求进行处理,将用户所需要的信息返回到浏览器上。用户机无需安装软件,只需要在服务器上进行简单的设置,数据的请求和返回的结果均以网页形式完成,极大地方便系统的管理,适合管理员的管理习惯。系统平台设计时,选择以Myeclipse为开发工具,利用Jsp技术,以MysqL数据库作为后台数据库,Web服务采用tomcat来实现。本系统包括前台和后台两部分:前台包括【最新动态】、【教学进度】、【作业习题】、【文件上传】、【在线交流】和【讲师介绍】;后台包括授课资源管理和在线交流发言管理。2系统开发技术简介本网站采用B/S结构,并以JSP技术和MysqL数据库作为开发工具,通过JDBC技术访问数据库,最终建成一个具有持久生命力兼容性、安全性、可扩展性良好并可以满足师生获取信息和服务的教学网站。下面对本网站采用到得主要技术进行简单的介绍。2.1HTML语言超文本标记语言,即HTML(HypertextMarkupLanguage),是用于描述网页文档的一种标记语言,它是构成网页的基础,因为程序无法控制浏览器的内存,与浏览器之间只有下载网页与上传数据的关系,所以对HTML语法必须有一定的了解。36 河南理工大学毕业设计(论文)说明书HTML是一种规范,一种标准,它通过标记符号来标记要显示的网页中的各个部分。网页文件本身是一种文本文件,通过在文本文件中添加标记符,可以告诉浏览器如何显示其中的内容(如:文字如何处理,画面如何安排,图片如何显示等)。浏览器按顺序阅读网页文件,然后根据标记符解释和显示其标记的内容,对书写出错的标记将不指出其错误,且不停止其解释执行过程,编制者只能通过显示效果来分析出错原因和出错部位。但需要注意的是,对于不同的浏览器,对同一标记符可能会有不完全相同的解释,因而可能会有不同的显示效果。HTML之所以称为超文本标记语言,是因为文本中包含了所谓“超级链接”点。所谓超级链接,就是一种URL指针,通过激活(点击)它,可使浏览器方便地获取新的网页。这也是HTML获得广泛应用的最重要的原因之一。网页的本质就是HTML,通过结合使用其他的Web技术(如:脚本语言、CGI、组件等),可以创造出功能强大的网页。因而,HTML是Web编程的基础,也就是说万维网是建立在超文本基础之上的。2.2JSP技术JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP与JavaServlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。JSP可用一种简单易懂的等式表示为:HTML+Java=JSP。36 河南理工大学毕业设计(论文)说明书2.2.1JSP的工作原理在一个JSP文件第一次被请求时,JSP引擎把该JSP文件转换成为一个servlet。而这个引擎本身也是一个servlet,在JSWDK或WEBLOGIC中,它就是JspServlet。JSP引擎先把该JSP文件转换成一个Java源文件,在转换时如果发现jsp文件有任何语法错误,转换过程将中断,并向服务端和客户端输出出错信息;如果转换成功,JSP引擎用javac把该Java源文件编译成相应的class文件。然后创建一个该SERVLET的实例,该SERVLET的jspInit()方法被执行,jspInit()方法在servlet的生命周期中只被执行一次。然后jspService()方法被调用来处理客户端的请求。对每一个请求,JSP引擎创建一个新的线程来处理该请求。如果有多个客户端同时请求该JSP文件,则JSP引擎会创建多个线程。每个客户端请求对应一个线程。以多线程方式执行可大大降低对系统的资源需求,提高系统的并发量及响应时间.但应该注意多线程的编程限制,由于该servlet始终驻于内存,所以响应是非常快的。如果.jsp文件被修改了,服务器将根据设置决定是否对该文件重新编译,如果需要重新编译,则将编译结果取代内存中的servlet,并继续上述处理过程。虽然JSP效率很高,但在第一次调用时由于需要转换和编译而有一些轻微的延迟。此外,如果在任何时候如果由于系统资源不足的原因,JSP引擎将以某种不确定的方式将servlet从内存中移去。当这种情况发生时jspDestroy()方法首先被调用,然后servlet实例便被标记加入"垃圾收集"处理。JSP的工作原理如图2-1所示:图2-1JSP的工作原理36 河南理工大学毕业设计(论文)说明书2.2.2JSP的优势JSP的优势有以下几点:(1)一次编写,多次运行。除了系统之外,代码不用做任何更改。(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/.net的局限性是显而易见的。(3)强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。(4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。(5)支持服务器端组件。web应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供web页面调用,以增强系统性能。JSP可以使用成熟的JAVABEANS组件来实现复杂商务功能。2.2.3JSP的技术方法JSP的技术方法主要有以下几点:(1).将内容的生成和显示进行分离:用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面,并使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求变化的,例如请求账户信息或者特定的一瓶酒的价格等)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在脚本中,所有的脚本在服务器端运行。由于核心逻辑被封装在标识和JavaBeans中,所以Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成(2).可重用组件:绝大多数JSP页面依赖于可重用的、跨平台的组件(JavaBeans或者EnterpriseJavaBeans组件)来执行应用程序所要求的复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者和客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。(3).采用标识:Web页面开发人员不会都是熟悉脚本语言的编程人员。JSP技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要36 河南理工大学毕业设计(论文)说明书的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能.(4).适应平台:Web页面开发人员不会都是熟悉脚本语言的编程人员。JSP技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。2.3JDBCJDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯JavaAPI编写数据库应用程序。有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBCAPI,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBCAPI写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。Java具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是Java应用程序与各种不同数据库之间进行对话的方法。而JDBC正是作为此种用途的机制。JDBC扩展了Java的功能。例如,用Java和JDBCAPI可以发布含有applet的网页,而该applet使用的信息可能来自远程数据库。企业也可以用JDBC通过Intranet将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有Windows、Macintosh和UNIX等各种不同的操作系统)。随着越来越多的程序员开始使用Java编程语言,对从Java中便捷地访问数据库的要求也在日益增加。36 河南理工大学毕业设计(论文)说明书2.3.1JDBC的用途简单地说,JDBC可做三件事:与数据库建立连接、发送操作数据库的语句并处理结果。JDBC对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。2.3.2APIJDBC是个"低级"接口,也就是说,它用于直接调用SQL命令。在这方面它的功能极佳,并比其它的数据库连接API易于使用,但它同时也被设计为一种基础接口,在它之上可以建立高级接口和工具。高级接口是"对用户友好的"接口,它使用的是一种更易理解和更为方便的API,这种API在幕后被转换为诸如JDBC这样的低级接口。在关系数据库的"对象/关系"映射中,表中的每行对应于类的一个实例,而每列的值对应于该实例的一个属性。于是,程序员可直接对Java对象进行操作;存取数据所需的SQL调用将在"掩盖下"自动生成。此外还可提供更复杂的映射,例如将多个表中的行结合进一个Java类中。随着人们对JDBC的兴趣日益增涨,越来越多的开发人员一直在使用基于JDBC的工具,以使程序的编写更加容易。程序员也一直在编写力图使最终用户对数据库的访问变得更为简单的应用程序。例如应用程序可提供一个选择数据库任务的菜单。任务被选定后,应用程序将给出提示及空白供填写执行选定任务所需的信息。所需信息输入应用程序将自动调用所需的SQL命令。在这样一种程序的协助下,即使用户根本不懂SQL的语法,也可以执行数据库任务。2.4MysqL数据库MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购。MySQL是一种关联数据库管理系统,关联数据库将数据36 河南理工大学毕业设计(论文)说明书保存在不同的表中,而不是将所有数据放在一个大仓库内。这样就增加了速度并提高了灵活性。MySQL的SQL“结构化查询语言”。SQL是用于访问数据库的最常用标准化语言。MySQL软件采用了GPL(GNU通用公共许可证)。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。2.4.1系统特性MysqL数据库的系统特性如下:(1).使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。(2).支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统。(3).为多种编程语言提供了API。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。(4).支持多线程,充分利用CPU资源。(5).优化的SQL查询算法,有效地提高查询速度。(6).既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。(7).提供TCP/IP、ODBC和JDBC等多种数据库连接途径。2.4.2应用环境与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQLCluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。因此使用这种方式不用花一分钱(除开人工成本)就可以建立起一个稳定、免费的网站系统。2.5MyeclipseMYeclipse利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能。在结构上,MyEclipse的特征可以被分为7类:  (1)JavaEE模型;36 河南理工大学毕业设计(论文)说明书  (2)WEB开发工具;  (3)EJB开发工具;  (4)应用程序服务器的连接器;  (5)JavaEE项目部署服务;  (6)数据库服务;(7)MyEclipse整合帮助。对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错。2.6Tomcat7.0Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。Tomcat是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。36 河南理工大学毕业设计(论文)说明书3系统需求分析根据前言所定义的课题研究方向及目标,本章将对课题网站平台功能进行具体的需求分析,具体分析《光纤通信与设计》课题网站所要实现的功能以及想要达到的效果。3.1系统的性能要求系统的性能要求有以下三点:(1)磁盘容量的要求。本网站系统属于BS模式架构,因此存储容量较小,数据库系统所占容量也不是很大,系统文件估计占30M的磁盘空间。不过该课题网站中资源管理部分会占很大的空间,服务器运行也要占取很大一部分内存,授课教师的教课资源也要占很大空间。在做设计时用的电脑有320G的磁盘,足够放入很大一部分视频,如果不够,就需要管理员清除过期不用的资源.(2)安全性的要求。36 河南理工大学毕业设计(论文)说明书本课程网站有两个权限设置,不同的用户有不同的权限授课教师拥有管理员的权限,学生拥有访问、下载资源、给讲师下评语和在线留言的权限,不同的用户有不同的权限。授课教师拥有管理员的权限可以上传授课资源、更新教学进度,甚至管理在线交流版块的全部留言信息,学生用户也不可以更改删除教学资源以及访问教师页面的权限。(3)适应性要求。要求界面朴素大方,菜单清楚,学生和授课教师能够很快熟悉网站。对于部分文章、课件的发布要求达到所见即所得的效果。3.2系统功能需求分析本课题网站采用Browser/Server模式开发设计,可以作为一般高等院校的在线教学课堂;可以为教师的辅助教学或者课程发布提供一个完善的教学网站平台;学生可以随时随地利用该网站来学习一下课程的任务或者查询下老师布置下来的作业,也可以在线提出学习过程中遇到的自己难以解决的问题。3.2.1功能划分《光纤通信与设计》课题网站根据不同的访问者,可以分为两个部分:一是面向管理员(授课教师即是管理员)部分,管理员的权限包括公告管理、教程管理、课件管理、在线交流模块管理;二是面向学生用户部分,学生登录网站,可以查看最新动态和教师的教学计划,在线浏览作业习题,下载各种教学资源和习题答案,并可以在在线交流模块发帖进行交流。3.2.2功能描述根据网站功能划分,本系统需求详细描述如下:(1)登录功能。为了使网站的一些信息和使用功能得以实现,就必须有一个用户登录功能。作为一个基本的登录系统,应该具有以下功能:本系统不接受新用户的注册,新用户由管理员,即授课教师负责管理;用户登录界面简洁、朴实、大方,成功实现用户的登录。(2)课程介绍。该模块的设计是为了简单的介绍光纤通信与设计课题,使学生在进入功能页面前对这个课题有初步的了解。36 河南理工大学毕业设计(论文)说明书(3)最新动态。授课教师可以在这个模块向学生及时传达任务的变动,或者分享关于课题在世界前沿的科技成果,丰富学生的知识面;学生可以在每条最新动态后面自由发表评论。(4)教学进度。授课教师可以讲自己的教学计划在这个模块向学生公开,让学生大致了解学习这个课题所需要的时间。(5)作业习题。该模块共授课教师发布习题与作业(6)文件下载。授课教师可以根据需要将自己的文档课件、音频课件、视频课件通过这个版块上传,学生可以在自由下载授课资源进行学习。(7)讲师介绍。这个版块可以将授课教师的联系方式、职称、研究成果向学生公开;学生也可以在这个版块对讲师进行评论。(8)在线交流。学生可以在这个版块自由发表主题,进行学习的心得交流;授课教师可以管理所有人的言论。3.3用例模型3.3.1学生用户用例图图3-1是学生用户对该课程网站进行操作的用例图。36 河南理工大学毕业设计(论文)说明书图3-1学生用户用例图3.3.2教师用户用例图图3-2是授课教师对该课程网站进行操作的用例图。图3-2教师用户用例图3.4时序图3.4.1最新动态管理时序图最新动态管理时序图如图3-3。图3-3最新动态管理时序图36 河南理工大学毕业设计(论文)说明书3.4.2下载文件管理时序图下载文件管理时序图如图3-4。图3-4下载管理时序图3.4.3在线交流时序图在线交流时序图如图3-5。图3-5在线交流时序图36 河南理工大学毕业设计(论文)说明书4系统设计4.1系统结构设计根据本课题网站的特点,可将其分为前台和后台两个部分设计。前台主要实现教学资源浏览、作业习题的发布、资源下载、在线交流发表新的主题;后台主要用授课教师对前台信息管理、教学计划的公示与修改、课程资源的上传与删除。把网站设计分为以下几个模块:用户登录、课程简介、最新动态、教学计划、作业习题、文件下载、讲师介绍、在线交流。整个网站的系统设计结构如图4-1。图4-1系统设计结构图4.2MysqL数据库中表的设计数据库的内容以及表的设计直接影响到开发的系统平台的质量,好的设计可以达到方便易用的功能。根据系统的需求分析,通过MysqL来建立网站所需要的数据库,部分表的具体信息如下:4.2.1用户表的设计为t_user如图4-2所示:36 河南理工大学毕业设计(论文)说明书图4-2用户表该用户表包含网站授课教师和学生的所有信息,用type来区分两者不同的权限。4.2.2最新动态表设计为t_message如图4-3所示:图4-3最新动态表4.2.3教学进度表设计为t_goals和表t_tasks教学进度里有教学任务和教学目标两项子任务,所以在设计时在该模块用了两个表。如图4-4、4-5所示,分为目标表与任务表:4-4目标表36 河南理工大学毕业设计(论文)说明书4-5任务表4.2.4作业习题表设计为t_ziliao如图4-6所示:图4-6作息习题表4.2.5文件下载表设计为t_sharefile如图4-7所示:图4-7文件下载表36 河南理工大学毕业设计(论文)说明书4.2.6讲师介绍表的设计在这里同样也设计为两个表。讲师介绍表如图4-8和学生评论表如4-9所示:图4-8讲师介绍表图4-9学生评论表4.2.7在线交流模块表的设计设计为t_idea表,如图4-10所示:图4-10在线交流表36 河南理工大学毕业设计(论文)说明书4.2.8教课资源存储表的设计设计为t_project表,该表用来存与授课教师有关的课程信息。如图4-11所示:图4-11教课资源存储表36 河南理工大学毕业设计(论文)说明书5网站系统的实现5.1登录界面登陆界面:如图5-1所示,用户可以凭借账号密码在这里登陆,进入网站的首页。图5-1登陆界面5.2课程简介在这个版块主要是对课程进行简单的介绍,其截图如5-2所示。图5-2课程简介36 河南理工大学毕业设计(论文)说明书5.3Teacher用户登录5.3.1进入主界面Teacher用户登录后,主界面的截图如5-3。图5-3进入主界面5.3.2教学进度Teacher在这个版块拥有添加新任务的权限(如图5-4),Teacher可以在状态选择任务的属性(如图5-5),在级别栏选择任务的紧急程度(如图5-6)。图5-4添加新任务36 河南理工大学毕业设计(论文)说明书图5-5可选择的任务属性图5-6下拉菜单截图5.3.3作业习题Teacher在这个版块拥有分享新习题的权限(如图5-7所示),Teacher还可以可以点击图片中左下方的“铅笔图标”来编辑修改习题;点击“垃圾桶图标”来删除过期没用的习题(如图5-8所示)。36 河南理工大学毕业设计(论文)说明书图5-7分享新习题图5-8管理习题5.3.4文件下载Teacher在这个版块拥有上传文件和删除文件权限,如图5-9和5-10所示。图5-9上传文件36 河南理工大学毕业设计(论文)说明书图5-10删除文件5.3.4讲师介绍Teacher在这个版块拥有添加新的讲师资料的权限,如图5-11所示。图5-11添加新的讲师36 河南理工大学毕业设计(论文)说明书5.3.5在线交流Teacher在这个版块可以管理学生的各种言论和发表新的想法(如图5-12)。Teacher可以点击上图左下方的“垃圾桶图标”来删除发言(如图5-13)。图5-12发表新的想法图5-13删除发言36 河南理工大学毕业设计(论文)说明书5.4学生用户登录(学生名为:郭磊)5.4.1浏览最新动态并评论学生用户浏览最新动态截图如5-14所示。图5-14浏览最新动态5.4.2查看教学计划通过与teacher登陆截图对比,很容易发现学生在这个版块没有添加、编辑授课安排的进度,如图5-15。图5-15查看教学计划36 河南理工大学毕业设计(论文)说明书5.4.3习题作业学生权限只能阅读作业习题,同样通过截图对比发现学生不能添加或者删除习题,如图5-16。图5-16阅读作业习题5.4.4文件下载学生用户没有上传功能,下载各种课程资源功能成功实现,如图5-17。图5-17下载课程资源36 河南理工大学毕业设计(论文)说明书5.4.5浏览讲师介绍学生权限在这个版块可以查到教师的联系方式与研究成果,还可以本着公平公正原则授课讲师写下评语,如图5-18。图5-18浏览讲师介绍5.4.6在线交流学生只能在这个版块选择自己感兴趣的主题自由的发表评论,可以用这个模块来进行在线答疑功能,如图5-19。图5-19学生发表主题36 河南理工大学毕业设计(论文)说明书6课题网站的测试6.1运行环境的规定网站的运行环境如下:操作系统:MicrosoftWindowsXP数据库:MysqL开发工具:Myeclipse6.0运行环境:Tomcat7.06.2网站测试简介测试是每个网站开发过程中必须经历的阶段,它是贯穿在整个开发设计过程中的。测试的目的是为了发现网站系统中存在的缺陷,并尽可能的为修正错误提供更多的信息,是系统更加完善。测试的对象包括数据库、程序、文档和权限。测试方法分为静态测试盒动态测试两种:静态测试分为人工辅助测试和计算机辅助测试;动态测试分为黑盒测试和白盒测试。6.2.1静态测试静态测试是指无须执行被测代码,而是借助专用的软件测试工具评审软件文档或程序,度量程序静态复杂度,检查软件是否符合编程标准,借以发现编写的程序的不足之处,减少错误出现的概率;它主要采取方案—代码走查、技术评审、代码审查的方法对软件产品进行测试。6.2.2动态测试(1)黑盒测试黑盒测试也称功能测试,是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。黑盒测试法注重于测试软件的功能需求,主要试图发现下列几类错误:36 河南理工大学毕业设计(论文)说明书.功能不正确或遗漏;.界面错误;.输入和输出错误;.数据库访问错误;.性能错误;.初始化和终止错误等。黑盒测试的优点:.对于较大的代码单元来说,黑盒测试比白盒测试效率较高。.测试人员不需要了解细节,包括特定的编程语言。.测试人员和开发人员是彼此独立的。.从用户的角度测试,很容易被理解和接受。.有助于暴露与任务规格不一致或者有歧义的地方。.测试用例可以在需求规格完成之后马上执行.黑盒测试的缺点:.测试的只有一小部分,不可能测试全部输入。.没有清洁和简明的需求规格说明书,测试用例很难设计。.如果测试人员,不被告知开发人员已经执行过的用例,在测试数据上会存在不必要的重复。.很多测试路径没有测试到。.不能直接对特定程序段进行测试,改程序段可能隐藏更多错误。.大部分和研究相关的测试都是直接针对白盒测试的(2)白盒测试白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。这一方法是把测试对象看作一个打开的盒子,测试人员依据程序内部逻辑结构相关信息,设计或选择测试用例,对程序所有逻辑路径进行测试,通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。白盒的测试用例需要做到: 保证一个模块中的所有独立路径至少被使用一次。 对所有逻辑值均需测试true和false。 在上下边界及可操作范围内运行所有循环。36 河南理工大学毕业设计(论文)说明书 检查内部数据结构以确保其有效性。白盒测试的目的:通过检查软件内部的逻辑结构,对软件中的逻辑路径进行覆盖测试;在程序不同地方设立检查点,检查程序的状态,以确定实际运行状态与预期状态是否一致。白盒测试的特点:依据软件设计说明书进行测试、对程序内部细节的严密检验、针对特定条件设计测试用例、对软件的逻辑路径进行覆盖测试。白盒测试的优点:迫使测试人员去仔细思考软件的实现;可以检测代码中的每条分支和路径;揭示隐藏在代码中的错误;对代码的测试比较彻底。白盒测试的缺点:昂贵;无法检测代码中遗漏的路径和数据敏感性错误;不验证规格的正确性。6.3功能测试在前面介绍了一些测试的概念和几种常见的测试方法。虽然测试的方法比较多,但测试网站是一项非常复杂的工作,不可能对每一个出现的错误情况都一一测试到。下面列举检测到的几个错误。6.3.1服务器测试服务器开启时间较长后,容易崩溃,从而导致出现网页打不开的错误,对于这个错误,没能找到很好的解决办法,我采取的做法是重新开启服务器,好在服务器的时间要好几个小时才会出现崩溃。6.3.2点击进入模块时出现代码错误代码错误截图如6-1,这个错误是因为会话session不存在或者已关闭。解决方法是:从session中取出已储存好的project对象,然后根据project的ID从数据库中重新查找一遍。36 河南理工大学毕业设计(论文)说明书图6-1代码错误6.3.3教学进度测试学生在教学进度模块中拥有修改授课计划权限的错误,如图6-2。解决方法如下:在JSP上用JSTL(标准标签库),从session中取出user对象。然后根据user的对象type属性判断其是admin还是worker。如果是admin就具有teacher的权限。对于出现这个错误,只要把user的type属性改成worker就可以了。图6-2权限错误36 河南理工大学毕业设计(论文)说明书结论本论文的题目是“《光纤通信与设计》课题网站”,其主要涉及以下两个部分功能的设计:授课教师部分和学生部分。Teacher部分权限包括添加最新动态、修改教学进度、上传作业习题与课程资源和管理在线交流模块的言论;学生用户部分权限包括查看最新动态与作业习题、下载课件与在线自由的交流。由于以前没有做过相关项目的开发,所以比较生疏。从头到尾都是一边学习一边开发设计,虽然中间参考借鉴了不少其他经典的课题网站,但自己做出来的网站系统仍存在不少的不足缺陷,只能实现一些最基本的功能。其缺点在于界面过于简单,不够美观,实现的功能不够强大。毕业设计是本科学习阶段一次非常难得的理论与实践相结合的机会,从刚开始看到毕业题目心里发怵,完全不知道如何着手毕业设计到顺利如期完成本次毕业设计,这期间的经历给了我很大的自信。让我了解到专业知识的同时也对本专业的发展前景充满信心,也必然会让我在未来的学习工作中表现出更高更强的适应能力、应变能力与沟通理解能力,从而为祖国做出更多的贡献。36 河南理工大学毕业设计(论文)说明书致谢四年丰富多彩的大学生活很快就要走入尾声,我的校园生活就要划上尾声,心中是无尽的不舍与眷恋。从河南理工大学走出去,对我的人生来说,将是踏上一个新的征程,要努力把所学到的知识用到社会中,服务祖国人民。回首这四年,学到了丰富知识,取得了一些成绩,生活中有快乐也有艰辛。感谢老师四年来对我的孜孜不倦的教诲,对我成长的关心与爱护。馨月湖水深千尺,不及师友情谊浓。四年的风风雨雨,我们一同走过,充满关爱,给我留下的值得珍藏的最美好的回忆。能够顺利如期的完成毕业设计,首先要感谢校领导,老师给予我的极大地支持与鼓励,使我的毕业设计能够达到预期的效果。在毕业设计期间,最辛苦的就是我的指导老师,不论是学习还是生活上,老师都是一丝不苟,其认真负责的工作态度,严谨治学的精神和渊博的理论知识都是我受益匪浅,这对我以后的工作学习都是一种巨大地帮助。同时,在指导教师身上,我也学到了兢兢业业、奋发向上的精神,这种精神是我人生道路上的一盏明灯。我还要感谢那些和我一起走过这段岁月,帮助我、关心我、鼓励我的同学们。正是有了他们的支持、鼓励与帮助我才能更加坚定自己的信念,将毕业设计做得更好。与此同时,我自身也有了长足的发展与进步。最后,再一次对所有关心我、帮助我、支持我、鼓励我的人说一声“谢谢”!36 河南理工大学毕业设计(论文)说明书参考文献[1]辛化梅、李忠,论光纤通信技术的现状及发展,[M]山东师范大学学报(自然科学版),2003-4;[2]毛谦,我国光纤通信技术发展的现状和前景电信科学,[M]清华大学出版社2006-8;[3]荣欣科技,JSP+Dreameaver动态网站开发与实例,[M]清华大学出版社2007-10;[4]申吉红、廖学峰、余健,JSP课程设计案例精编,[M]清华大学出版社2007-2;[5]何晓霞、杨立峰,PHP+MySQL网站开发技术与典型案例导航,[M]北京电子工业出版社2008-6;[6]姜林美,PHP+MySQL动态网站开发从基础到实践,[M]北京电子工业出版社,2008;[7]李忠伟,、刘健,JSP动态网页设计技术教程,[M]北京科学出版社,2009;[8]孙鑫,Servlet/JSP深入详解,[M]北京电子工业出版社,2008;[9]唐友国、湛洪波,JSP网站开发详解,[M]北京电子工业出版社,2008;[10]王国辉,、王易,JSP数据库系统开发案例精选,[M]北京人民邮电出版社,2006;[11]李兴仁,、王荣党,毕业论文写作指导,[M]北京科学出版社,2008;[12]赵公民,、聂锋,毕业论文的写作与答辩,[M]中国经济出版社[M]2006。36'