数据结构精品课程网站建设——信息发布、在线教学、精选题库、教学论坛---毕业论文_第1页
数据结构精品课程网站建设——信息发布、在线教学、精选题库、教学论坛---毕业论文_第2页
数据结构精品课程网站建设——信息发布、在线教学、精选题库、教学论坛---毕业论文_第3页
数据结构精品课程网站建设——信息发布、在线教学、精选题库、教学论坛---毕业论文_第4页
数据结构精品课程网站建设——信息发布、在线教学、精选题库、教学论坛---毕业论文_第5页
免费预览已结束,剩余71页可下载查看

下载本文档

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

文档简介

本 科 毕 业 论 文 数据结构精品课程网站建设信息发布、在线教学、精选题库、教学论坛Data Structure High-quality Curriculum Website Construction-Notice Announce, on-line Teaching, Selected Exercise, Teaching Forum姓 名:学 号:学院:软件学院系:软件工程专 业:软件工程年 级:指导教师: 年 月摘 要数据结构在计算机科学中是一门非常重要的综合性的专业基础课。其内容丰富,涉及面广泛,随着计算机应用技术的发展,数据结构的内容也随之更新。随着计算机技术的发展,教学条件的改善,教学思想的成熟,该课程从课程体系、教学内容、使用教材与描述算法的语言、教学方法与手段等方面均发生了很大的变化与发展。随着网络的高速发展,教育体制改革的深入,通过网络自主学习与搜集信息,已经成为每个人所必须做的事情。特别是计算机数据结构方面的知识,因其自身知识更新快的特点,通过网站进行数据结构精品课程建设与学习无疑是极好的选择。本系统主要运用Struts与Hibernate的Java Web开源框架,采用Eclipse为集成开发工具,以Tomcat为Web服务器, MySQL为数据库,严格按照软件工程的方法来开发系统,实现数据结构精品课程网站的建设。该网站实现了信息发布、在线教学、精选题库与教学论坛的功能。教师可以在这里发布信息,授课,答疑,学生则可以随时随地的浏览信息,学习不同的课程,下载资料,在线进行交流、沟通,从而真正的实现互动教学,提高教学质量。本文首先介绍建设数据结构精品课程网站的背景、意义和可行性;接着介绍系统开发时使用到的相关技术和工具;然后描述系统的需求分析与设计,包括系统的功能模块、系统架构、数据库设计、UML图示、开发流程以及重要功能的具体实现等;最后展示系统的运行结果。本项目的研究和实践对于促进基于Struts与Hibernate的Java Web开源框架技术的应用具有一定的参考价值和实践意义。关键词:数据结构;精品课程;网站建设AbstractData structure is a very important and comprehensive professional fundamental course in computer science. It is rich in content and covers a wide range of technology, with the development of computer applications, the content of data structure has also updated. With the development of computer technology, the improvement of teaching condition and the maturity of teaching thought, this curriculum, from the curriculum system, the teaching content, the teaching materials and algorithm describing languages, the teaching methods and means, has had the very great change and development. With the rapid development of the network and the in-depth reform of the educational system, self-studying and collecting information through the network have already become necessary for everyone to do. Especially the knowledge of data structure, with its quick updating character, building and learning data structure high-quality curriculum through the network is an excellent choice without doubt.This system mainly uses Java Web open source framework based on Struts and Hibernate, it uses Eclipse as the integrated development tool, Tomcat as the Web server and MySQL as the database, strictly according to the software engineering approach to develop the data structure high-quality curriculum. This website achieves functions of notice announce, on-line teaching, selected exercise and teaching forum. Teachers can publish information, give classes and answer questions, students can browse information, learn different courses, download information and communicate on line at any time, thereby it achieves the true interactive teaching and improves the teaching quality.This paper first introduces the background, the meaning and the feasibility to construct the data structure high-quality curriculum website, and then introduces the correlative technologies and tools. Then it describes the requirement analysis and system design, including the function modules, system architecture, database design, UML icons, development flow as well as the concrete realization of important functions. Finally it shows the running results.The study and practice of this project have a certain reference value and practical meaning to the promotion of technology for Java Web open source framework based on Struts and Hibernate.Key words: Data Structure; High-quality Curriculum; Website Construction 目 录第一章 引言11.1 数据结构精品课程网站建设的背景11.2 数据结构精品课程网站建设的意义11.3 数据结构精品课程网站建设的可行性分析2第二章 相关知识介绍32.1 JSP32.2 JavaBean32.3 Servlet42.4 Struts42.4.1 Struts简介42.4.2 Struts工作流程52.4.3 Struts配置文件62.4.4 ActionForm Bean开发技术72.4.5 Action组件开发技术72.4.6 页面国际化72.4.7 数据验证82.5 Hibernate92.5.1 Hibernate简介92.5.2 Hibernate开发流程92.5.3 Hibernate配置文件102.5.4 映射文件102.5.5 Hibernate核心接口112.6 开发工具112.6.1 数据库软件MySQL112.6.2 Web服务器Tomcat122.6.3 集成开发工具Eclipse+MyEclipse12第三章 需求分析143.1 功能模块划分143.1.1 信息发布模块143.1.2 在线教学模块143.1.3 精选题库模块163.1.4 教学论坛模块163.2 模块关系183.3 系统流程图18第四章 系统设计194.1 系统架构194.2 数据库设计204.2.1 管理员模块204.2.2 信息发布模块204.2.3 在线教学模块204.2.4 精选题库模块214.2.5 教学论坛模块214.3 信息发布模块234.3.1 领域模型234.3.2 系统顺序图234.3.3 类图254.4 在线教学模块254.4.1 领域模型254.4.2 系统顺序图264.4.3 类图274.5 精选题库模块284.5.1 领域模型284.5.2 系统顺序图284.5.3 类图304.6 教学论坛模块304.6.1 领域模型304.6.2 系统顺序图314.6.3 类图334.7 开发流程334.7.1 数据库设计344.7.2 创建持久化类344.7.3 映射文件与Hibernate配置文件354.7.4 DAO数据层364.7.5 ActionForm384.7.6 创建Action404.7.7 JSP页面设计414.7.8 struts-config.xml配置文件42第五章 运行结果445.1 管理员模块445.2 信息发布模块455.3 在线教学模块465.4 精选题库模块475.5 教学论坛模块48第六章 总结52致 谢53参考文献54ContentsChapter 1 Introduction11.1 Background of high-quality curriculum website construction11.2 Meaning of high-quality curriculum website construction11.3 Feasibility analysis of high-quality curriculum website construction2Chapter 2 Introduction to correlative technologies and tools32.1 JSP32.2 JavaBean32.3 Servlet42.4 Struts42.4.1 Introduction to Struts42.4.2 Working flow of Struts52.4.3 Configuration file of Struts62.4.4 Development technology of ActionForm Bean72.4.5 Module development technology of Action72.4.6 Page internationalization72.4.7 Data validation82.5 Hibernate92.5.1 Introduction to Hibernate92.5.2 Development flow of Hibernate92.5.3 Configuration file of Hibernate102.5.4 Mapping file102.5.5 Core interfaces of Hibernate112.6 Development tools112.6.1 Database software MySQL112.6.2 Web server Tomcat122.6.3 Integrated development tool Eclipse+MyEclipse12Chapter 3 Requirement analysis143.1 Function modules143.1.1 Module of notice announce143.1.2 Module of on-line teaching143.1.3 Module of selected exercise163.1.4 Module of teaching forum163.2 Module relation183.3 System flow diagram18Chapter 4 System design194.1 System architecture194.2 Database design204.2.1 Module of administrator204.2.2 Module of notice announce204.2.3 Module of on-line teaching204.2.4 Module of selected exercise214.2.5 Module of teaching forum214.3 Module of notice announce234.3.1 Domain model234.3.2 System sequence diagram234.3.3 Class diagram254.4 Module of on-line teaching254.4.1 Domain model254.4.2 System sequence diagram264.4.3 Class diagram274.5 Module of selected exercise284.5.1 Domain model284.5.2 System sequence diagram284.5.3 Class diagram304.6 Module of teaching forum304.6.1 Domain model304.6.2 System sequence diagram314.6.3 Class diagram334.7 Development flow334.7.1 Database design344.7.2 Establish persistent class344.7.3 Mapping file and configuration file of Hibernate354.7.4 DAO data layer364.7.5 ActionForm384.7.6 Establish Action404.7.7 JSP page design414.7.8 Mapping file struts-config.xml42Chapter 5 Running Result445.1 Module of administrator445.2 Module of notice announce455.3 Module of on-line teaching465.4 Module of selected exercise475.5 Module of teaching forum48Chapter 6 Conclusion52Acknowledgements53References54数据结构精品课程网站建设第一章 引言精品课程建设是高等学校教学质量与教学改革工程的重要组成部分。精品课程是具有一流教师队伍、一流教学内容、一流教学方法、一流教材、一流教学管理等特点的示范性课程。信息技术的迅速发展和广泛应用,引起课程目标、课程内容、课程资源、课程实施、课程评价和课程管理等发生重大的变革,为学校精品课程的建设创造了良好的条件。开展信息技术教学应用研究,对促进学校精品课程建设具有十分重要的意义。1.1 数据结构精品课程网站建设的背景数据结构作为一门独立的课程最早是在美国的一些大学开设的,1968年美国Donald E.Knuth教授开创了数据结构的最初体系;在我国,自1978年美籍华裔学者冀中田在国内首开这门课程以来,经过20余年的发展,这门课程已经成为各大学计算机专业的本科主干课程,也成为非计算机类学生和研究生学习计算机的必修课程。 网络背景下的数据结构教学研究与课程建设是当今世界课程改革的一种潮流,也是素质教育进一步深化的客观要求。计算机数据结构的教学一向被视为有效突破时空限制的教学通道。近年来,随着信息技术的蓬勃发展,世界发达国家正如火如荼地致力于Internet在学校教育、社区教育、社会教育及在职训练的应用与研究等,由于利用网络媒体进行数据结构教学与传统媒体有极大的差异,因此许多高校在计算机数据结构教学方面投入相当多的时间与精力,试着设计一套能够符合数据结构教学特性,并能提升教学成果的教学系统。1.2 数据结构精品课程网站建设的意义数据结构精品课程网站,将教学所需的资源与网络技术相结合,在网络中赋予具体的应用,并逐步优化现有的教学资源,作为课堂教学的补充,可以方便教师进行教授,方便学生进行学习,使教学效果更好。网络环境下的学习具有个性化、协同性、资源丰富等特点,有利于培养学生的自主学习能力和创新精神。通过数据结构精品课程网站的建设,实现教育信息化优质资源的开发,可以丰富学校的课程网络教学资源,形成有效的资源共建共享机制,并通过研究实践,造就一批符合时代需要的、能够利用网络环境进行自主和协作学习的创新人才,培养一支具有时代特色的、熟悉网络教学环境的教师队伍。1.3 数据结构精品课程网站建设的可行性分析该系统所需硬件设备,如服务器等,学院可以提供。在软件上,开发工具采用Eclipse,Web服务器采用Tomcat,数据库采用MySQL,这些软件在网站建设中被大量采用,都比较成熟。在技术上,采用的Struts与Hibernate的Java Web开源框架属于J2EE的经典框架,性能卓越。因此在技术上是可行的。该系统在开发过程中,使用个人电脑就可以完成,而系统运行后的维护也比较简单。因此在经济上是可行的。由于网站的操作简单明了,用户无需学习,一般都能够很容易的知道如何操作。而管理员也无需具备专业知识,只需要对一些数据进行输入以及日常维护就够了。因此在操作上是可行的。综上所述,该网站建设在技术上、经济上、操作上都是可行的。- 1 -数据结构精品课程网站建设第二章 相关知识介绍该系统采用Struts与Hibernate的Java Web开源框架来建立系统的核心架构。系统中共用到了JSP、JavaBean、Servlet三大基础技术,Struts、Hibernate两大核心框架,MySQL、Tomcat、Eclipse三大开发环境。2.1 JSPJSP代码中包含JSP元素和Template data两类。Template data指的是JSP引擎不处理的部分,也就是说除了JSP语法外,JSP引擎将会把这部分信息直接传递出去而不进行任何处理,简而言之,就是指在标记以外的部分,如代码中的HTML的内容等,这些数据会直接传送到客户端的浏览器;而JSP元素则是指将由JSP引擎直接处理的部分,这一部分必须符合JSP的语法,否则会导致编译错误。JSP标记是大小写敏感的,脚本语法和指令语法则使用了传统的语法。所有的JSP网页都对应着XML文件的规格。2.2 JavaBeanJavaBean是Sun微系统的一个面向对象的编程接口,它可以让你设计可重用应用程序或能在网络中任何主流操作系统平台上配置的程序块,称为组件。像Java Applet一样,JavaBean组件能够给予万维网页面交互的能力,例如,对计算机感兴趣的比率或根据用户或浏览器的特性改变页面内容。1JavaBean是描述Java的软件组件模型,有点类似于Microsoft的COM组件概念。在Java模型中,通过JavaBean可以无限扩充Java程序的功能,通过JavaBean的组合可以快速地生成新的应用程序。对于程序员来说,最好的一点就是JavaBean可以实现代码的重复利用,另外,对于程序的易维护性等也有很重大的意义。1JavaBean在JSP程序中常用来封装事物逻辑、数据库操作等,可以很好地实现业务逻辑和前台程序的分离,使得系统具有更好的健壮性和灵活性。用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用Java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、applet程序或者应用来使用这些对象。用户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。2.3 ServletServlet是一种独立于平台和协议的服务器端的Java应用程序,可以生成动态的Web页面。它是位于Web服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载。Servlet是JSP的前身,在MVC架构中起到控制中心的作用。1Servlet的主要功能在于交互式地浏览和修改数据,生成动态Web内容。过程包括:客户端发送请求至服务器端。服务器将请求信息发送至Servlet。Servlet生成响应内容并将其传给Server,响应内容动态生成,通常取决于客户端的请求。服务器将响应返回给客户端。2.4 Struts2.4.1 Struts简介Struts是一种基于MVC经典设计模式的开放源代码的应用框架,也是目前Web开发中比较成熟的一种框架。它通过把Servlet、JSP、JavaBean、自定义标签和信息资源整合到一个统一的框架中,为Web开发提供具有高可配置性的MVC开发模式。1Struts体系结构实现了MVC设计模式的概念,它将Model、View、Controller分别映射到Web应用中的组件。Controller负责控制流程,由ActionServlet负责读取struts-config.xml,并使用ActionMapping来查找对应的Action;Model由系统状态Bean ActionForm和商业逻辑的JavaBean来构建;View由JSP和Struts提供的自定义标签来实现。Struts的MVC结构图如图2-1所示。资料来源:图2-1 Struts的MVC结构图2.4.2 Struts工作流程Struts框架的初始化流程并不是很复杂,在Web应用启动时会自动加载并初始化控制器ActionServlet,而ActionServlet从struts-config.xml文件中读取配置信息,把它们存放到ActionMapping对象中。这就完成了Struts框架的初始化。2图2-2描述了Struts框架对应客户请求的工作流程。Struts框架对应客户请求的工作流程如下。2l 判断ActionMapping实例是否存在。如果实例不存在,则创建一个ActionMapping对象,它包含了把请求转发给哪个Action的信息;l 判断ActionForm实例是否存在。如果实例不存在,则创建一个ActionForm对象,并把客户提交的表单数据保存到ActionForm对象中;l 根据配置信息决定是否需要表单验证。如果需要验证,就调用ActionForm的validate()方法;l 如果ActionForm的validate()方法返回null,或返回一个不包含ActionMessage的ActionErrors对象,就表示表单验证成功。如果ActionForm的validate()方法返回一个或多个ActionError的ActionErrors对象,则表示表单验证失败,将直接把请求转发给包含客户提交表单的JSP组件。在这种情况下,不会再创建Action对象并调用Action的execute方法;l ActionServlet根据配置信息决定将请求转发给哪个Action。如果相应的Action实例不存在,就先创建这个实例,然后调用其execute方法;l Action的execute方法返回一个ActionForward对象,ActionServlet再把客户请求转发给ActionForward对象指向的JSP组件;l ActionForward对象指向的JSP组件生成动态网页,返回给客户。 资料来源:计磊,李里,周伟:精通J2EEEclipes、Struts、Hibernate、Spring整合应用案例,人民邮电出版社,2006年。图2-2 Struts框架响应客户请求的工作流程2.4.3 Struts配置文件当ActionServlet接受HTTP请求信息时,如何决定把用户请求转发给哪个Action对象呢?这就需要一些描述用户请求路径和Action映射关系的配置信息。在Struts中,这些配置映射信息都存储在特定的XML文件struts-config.xml中。在该配置文件中,每一个Action的映射信息都通过一个action元素来配置。这些配置信息在系统启动时会被读入内存,每一个action元素都对应一个ActionMapping类的实例,供Struts在运行期间使用。2.4.4 ActionForm Bean开发技术ActionForm表示HTTP窗体中的数据,可以将其看作是模型和视图的中介,它负责保存视图中的数据,供模型或者视图使用。Struts文档中把它比做HTTP和Action之间的防火墙,这体现了ActionForm所具有的过滤与保护的作用,只有通过ActionForm验证的数据才能够发送到Action处理。1新建一个ActionForm类,需要按照以下的几个步骤:继承ActionForm,定义属性,编写setter/getter方法,编写重置方法,编写验证方法。ActionForm首先利用属性的getter和setter方法来实现初始化,初始化完毕后,ActionForm的validate方法被调用。可以在其中检查请求参数的正确性和有效性,并且可以将错误信息以ActionErrors的形式返回到输出窗体,否则,ActionForm将被作为参数传给action的execute()方法以供使用。2.4.5 Action组件开发技术新建一个Action类,需要按照以下步骤进行:继承Action,编写execute()处理方法。在该函数中需要编写以下代码:辅助ActionForm进行一些表单数据的检查;执行必要的业务逻辑;更新服务器端的Bean数据;根据处理结果决定程序的去处,并以ActionForward对象的形式返回给ActionServlet。2.4.6 页面国际化我们在进行Web应用的开发时,由于大多是面向中国的用户,通常都会硬编码成中文的显示方式。这样做会将应用程序与中文编码完全绑定在一起,要进行软件国际化时,需要修改所有与编码有关的代码,这个工作量是惊人的。通过开发Struts的多语言资源文件,可以实现软件的国际化;通过在所有的JSP页面中进行本地化取值,自动读取客户端浏览器的语言设置,可以实现软件的本地化。Struts页面的国际化是通过Struts的标签来实现的,依据功能和使用习惯划分为5个标签库,如表2-1所示。表2-1 Struts标签库列表标签库说明HTML标签用来创建Struts输入表单Bean标签用来创建bean、访问bean及访问bean的属性。同时提供了依据cookies、headers和parameters的值创建相关bean的能力Logic标签用来进行逻辑判断、集合迭代和流程控制Tiles标签用来创建Tiles样式的页面Nested标签该标签库建立在前3个标签库的基础上,具有前3个标签库的所有功能,只是允许标签间的嵌套资料来源:刘中兵:开发者突击:Java Web主流框架整合开发,电子工业出版社,2008年。Struts的JSP页面静态内容国际化问题,是通过资源文件来实现的。除了默认的资源文件外,一个Web应用可以包含很多个不同语言编写的消息资源文件,这些消息资源文件必须都存储在默认资源文件所在的目录中。所有的消息资源文件应包含相同的关键字,但关键字的值是用特定语言编写的。2.4.7 数据验证所谓的数据验证,是指对用户输入数据的有效性、合法性进行检验,并将检验的结果通知用户。Struts包括两种数据验证,第一种是表单验证,第二种是逻辑验证。1表单验证:是对用户输入的数值进行格式验证,例如字段长度检查、字段不能为空等,都是对数据本身的检查。它是由ActionForm Bean来进行实现。1逻辑验证:是对用户输入数据的逻辑性进行检查,判断这些数据是否符合业务的逻辑,例如用户登录时密码输入错误、新建的用户名不能与数据库中已有的用户名重复等,这些通常都是在与数据库的交互过程中得出的逻辑错误。它通常在Action中实现。1无论表单验证还是逻辑验证,如果出现了异常的情况,都应该保存相关的错误信息,然后就需要在返回的页面中,通过Struts HTML和Logic标签来输出这些信息,并进行表单数据的维护。这样做的目的是为了用户的操作更加友好。2.5 Hibernate2.5.1 Hibernate简介Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲地使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序中使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。1Hibernate是一个JDO工具。它的工作原理是通过文件把值对象和数据库表之间建立起一个映射关系,这样,只需要通过操作这些值对象和Hibernate提供的一些基本类,就可以达到使用数据库的目的。例如,使用Hibernate的查询,可以直接返回包含某个值对象的列表,而不必像传统的JDBC访问方式一样把结果集的数据逐个装载到一个值对象中,为编码工作节省了大量的时间。Hibernate提供的HQL是一种类SQL的语言,它和EJBQL一样都是提供对象化的数据库查询方式,但HQL在功能和使用方式上都非常接近标准的SQL。Hibernate的作用就是介于Java与JDBC之间的一个持久层,它通过建立与数据库表之间的映射来操纵数据库。12.5.2 Hibernate开发流程Hibernate是Java应用和关系数据库之间的桥梁,它负责Java对象和关系数据之间的映射。Hibernate内部封装了通过JDBC访问数据库的操作,向上层应用提供了面向对象的数据访问API。在Java应用中使用Hibernate包含以下步骤。l 创建Hibernate的配置文件:该文件负责初始化Hibernate配置,包括数据库配置和映射文件配置;l 创建Hibernate映射文件:每一个数据表对应一个映射文件,该文件描述了数据库中表的信息,也描述了对应的持久化类的信息;l 创建持久化类:每一个类对应一个数据库表,通过映射文件进行关联。以上三步是开发Hibernate要实现的关键内容。接下来就要面向Web应用层进行编码,通常会分为DAO层和Service层。l 编写DAO层:通过Hibernate API编写访问数据库的代码;l 编写Service层:编写业务实现,调用DAO层的代码。图2-3描述了Hibernate的开发流程。资料来源:刘中兵:开发者突击:Java Web主流框架整合开发,电子工业出版社,2008年。图2-3 Hibernate的开发流程2.5.3 Hibernate配置文件Hibernate的数据库连接信息是从配置文件中加载的,在配置文件中包含了一系列属性的配置,Hibernate将根据这些属性来连接数据库。2.5.4 映射文件Hibernate映射文件包含了对象/关系映射所需的元数据。元数据包含持久化的声明和属性到数据库的映射。映射文件是XML格式的文件,它负责持久化类与数据库表之间的映射。其根元素是hibernate-mapping,并通过属性package指定类所在的包。每一个表使用一个class定义,name表示类的名称,table表示关联的表名,通过property子元素来映射类的变量名与数据库字段名之间的映射关系。2.5.5 Hibernate核心接口Hibernate的核心接口共有6个,分别为Session、SessionFactory、Configuration、Transaction、Query和Criteria。这6个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。这6个核心接口的作用如下。1l Session接口:Session接口负责执行被持久化对象的CRUD操作。但需要注意的是,Session对象是非线程安全的;l SessionFactory接口:SessionFactory接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够了,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory;l Configuration接口:Configuration接口负责配置并启动Hibernate,创建SessionFactory对象。在Hibernate的启动过程中,Configuration类的实例首先定位映射文档位置、读取配置,然后创建SessionFactory对象;l Transaction接口:Transaction接口负责事务相关的操作。它是可选的,开发人员也可以设计编写自己的底层事务处理代码;l Query和Criteria接口:Query和Criteria接口负责执行各种数据库查询。它可以使用HQL语言或SQL语言两种表达式。2.6 开发工具本系统使用MySQL作为数据库,Tomcat作为Web服务器,Eclipse作为集成开发工具进行开发。2.6.1 数据库软件MySQLMySQL是最受欢迎的开源SQL数据库管理系统,它由MySQLAB开发、发布和支持。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置的软件中去。它因为有以下优点而广受欢迎。1l MySQL是一个数据库管理系统;l MySQL是一个关系数据库管理系统;l MySQL是开源的;l MySQL服务器是一个快捷的、可靠的和易于使用的数据库服务器;l MySQL服务器工作在客户/服务器或嵌入系统中;l 有大量的MySQL软件可以使用。2.6.2 Web服务器TomcatTomcat是Apache-Jarkarta的一个子项目,是一个免费的、开放源码的、支持JSP和Servlet技术的容器,它同时又是一个Web服务器软件。Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能。Tomcat是一个小型的轻量级应用服务器,在中、小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。2.6.3 集成开发工具Eclipse+MyEclipseEclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构件开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具。1虽然大多数用户很乐于将Eclipse当作Java IDE来使用,但Eclipse的目标不仅限于此。Eclipse还包括插件开发环境,这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许构建与Eclipse环境无缝集成的工具。由于Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。1这种平等和一致性并不仅限于Java开发工具。尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言,例如,支持诸如C/C+、COBOL和Eiffel等编程语言的插件已经可用,或预计会推出。Eclipse框架还可以用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。1使用Eclipse进行开发,可以搭配使用MyEclipse进行开发。MyEclipse企业级工作平台是对Eclipse IDE的扩展,利用它可以在数据库和J2EE的开发、发布以及应用程序服务器的整合方面极大地提高工作效率。它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML CSS、Javascript、Struts、Spring、SQL、Hibernate和JSF。1- 13 -数据结构精品课程网站建设第三章 需求分析开发本系统的整体软件目标是建设数据结构精品课程网站,实现信息发布、在线教学、精选题库和教学论坛功能,将教学所需的资源与网络技术相结合,在网络中赋予具体的应用,并逐步优化现有的教学资源,使教学效果更好。3.1 功能模块划分3.1.1 信息发布模块信息发布模块实现信息发布的功能。普通用户进入该模块后可以浏览信息列表,点击相应标题则可以浏览到具体的信息,如果该信息有附件,还可以对其进行下载。管理员除了具有普通用户的功能外,点击添加信息按钮可以进入添加页面,添加新的信息,还可以在其中添加附件。点击修改信息按钮则可以进入修改页面,对具体的信息进行修改,也可以在其中添加附件、删除附件。点击删除信息按钮则可以删除具体的信息以及该信息的附件。用例图用以描述用例名称和参与者及其之间的关系3。信息发布模块的用例图如图3-1所示。3.1.2 在线教学模块在线教学模块实现在线教学的功能。包括教学课件、电子教材、示例代码和教学录象四个部分。普通用户进入该模块后可以浏览教学列表,点击相应标题则可以浏览或下载具体的信息。管理员除了具有普通用户的功能外,点击添加按钮可以添加新的信息。点击删除按钮则可以删除具体的信息。在线教学模块的用例图如图3-2所示。图3-1 信息发布模块的用例图图3-2 在线教学模块的用例图3.1.3 精选题库模块精选题库模块实现精选题库的功能。包括课程习题、实验题目、参考试卷和典型题解四个部分。普通用户进入该模块后可以浏览题库列表,点击相应标题则可以浏览或下载具体的信息。管理员除了具有普通用户的功能外,点击添加按钮可以添加新的信息。点击删除按钮则可以删除具体的信息。精选题库模块的用例图如图3-3所示。图3-3 精选题库模块的用例图3.1.4 教学论坛模块教学论坛模块实现教学论坛的功能。普通用户可以进行注册,登录后进入该模块,并且可以修改帐户信息。进入该模块后可以浏览主题列表,点击相应标题则可以浏览到具体的主题与回复。点击发新主题按钮可以进入添加页面添加新的主题,在具体的主题页面中点击添加回复按钮可以进入添加页面添加新的回复。点击注销按钮可以注销帐户,安全退出。管理员除了具有普通用户的功能外,点击用户列表可以浏览到所有注册用户的信息,并且可以删除用户。管理员还具有删除主题和删除回复的功能,删除回复只删除特定的回复,而删除主题则会同时删除主题和该主题的所有回复。教学论坛模块的用例图如图3-4所示。图3-4 教学论坛模块的用例图对于所有模块,系统将对用户权限进行管理,普通用户无权进行管理员的操作。系统将对页面进行国际化,避免将文字硬编码到代码中去。当进行注册、登录、添加、修改操作时,系统将对输入数据的合法性进行验证,当进行删除操作时,将弹出确认对话框进行确认。3.2 模块关系各模块的关系如图3-5所示

温馨提示

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

评论

0/150

提交评论