版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 太原理工大学毕业设计(论文)用纸 绪论1.1 选题目的在Internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。Internet上发布信息主要是通过网站来实现的,获取信息也是要在Internet“海洋”中按照一定的检索方式将所需要的信息从网站上下载下来。因此网站建设在Internet应用上的地位显而易见,它已成为政府、企事业单位信息化建设中的重要组成部分,从而倍受人们的重视。为了更好的办学,增强学生和学校的互动性,加强学生与老师之间的沟通以及同学之间的交流和探讨,给老师和学生提供一个教与学交流、共享资源的平台,以达
2、到更好的教学效果,特构建一个基于struts及ajax技术的J2EE精品课程网站。精品课程网站就其表现形式看就是充分运用多媒体技术和web技术在web上建立一个全新的教学模式,可实现在线交流、资源的下载和共享。 (1)充分运用网络课程资源 近年来,网络课程资源越来越丰富,辅助教学的作用越来越突出。网络课程资源大致有三方面的内容,在辅助教学活动中的作用各有侧重。第一方面包括“课程介绍和教学内容”等项目,这些项目介绍了本课程的性质、特征、目的与任务及相关要求,以及本课程的教学内容、教学计划、教学进度安排,有助于校内外师生对本课程有一个概略的了解,便于学生从中理解学习本课程的目的、意义和方法。第二方
3、面包括“电子讲义、多媒体教案、动画演示”等项目,这些项目提供了优质教学资料,实现了文字与图的有机结合。第三方面包括“作业习题、上机实践、课程设计”等项目,这些项目对于课堂延伸、加强学生课后练习和上级实践环节、检测自己的学习效果等具有重要作用。(2)改进教学体系 本课程是一门实践性很强的课程,深刻理解数据库的各种概念需要丰富的实践经验。所以,要以培养基础扎实、实践动手能力强的高素质创新人才为目标,在大量调查研究的基础上,确定全新的教学体系。 (3)有效激发学生的自主学习意识,培养创新精神。 在精品课程中,加大了教学过程中使用信息技术的力度,为学生主动自主学习创造条件。面对知识的迅猛增长和加速更新
4、,利用网络充实自己必将成为今后个体发展的途径之一,自主学习能力也将越来越体现在网络学习之中,促进高校学生自主学习能力培养为目的,对精品课程网络学习进行设计,可以作为学校教育中以课堂为主培养自主学习能力的有益补充,同时也对学生的创新能力起到不容忽视的作用。1.2 课题意义1.2.1 有利于基础知识的理解 通过初中信息技术必修部分的学习,学生掌握了一些信息时代生存与发展必需的信息技术基础知识和基本技能,具备了在日常生活与学习中应用信息技术解决问题的基本态度与基本能力。但是,学生对于程序、病毒的内涵,程序与文档、数据的区别,计算机运行的机理等知识内容的理解比较肤浅。学生如果接触了程度设计,就能真正理
5、解,从而进一步打破计算机的神秘感。 1.2.2 有利于逻辑思维的锻炼 在许多常规学科的日常教学中,我们不难发现这样一个现象,不少学生的思维常常处于混乱的状态。写起作文来前言不搭后语,解起数学题来步骤混乱,这些都是缺乏思维训练的结果。程序设计是公认的、最能直接有效地训练学生的创新思维,培养分析问题、解决问题能力的学科之一。即使一个简单的程序,从任务分析、确定算法、界面布局、编写代码到调试运行,整个过程学生都需要有条理地构思,这中间有猜测设想、判断推理的抽象思维训练,也有分析问题、解决问题、预测目标等能力的培养。 1.2.3 有利于与其他学科的整合 在程序设计中,我们可以解决其它学科有关问题,也利
6、用其它课程的有关知识来解决信息技术中比较抽象很难理解的知识。在信息技术课中整合其它学科的知识,发挥信息技术的优势。例如,在编写“一元二次方程求解”程序时,就复习了数学的相关知识。而在讲解逻辑运算的知识时,我们又可以利用物理中的电路知识进行讲解,起到意想不到的效果。 1.2.4 有利于治学态度的培养程序设计中,语句的语法和常量变量的定义都有严格的要求,有时输了一个中文标点、打错了一个字母,编译就不通过,程序无法正常运行。因此,程序设计初学阶段,学生经常会犯这样的错误,可能要通过几次乃至十多次的反复修改、调试,才能成功,但这种现象会随着学习的深入而慢慢改观。这当中就有一个严谨治学、一丝不苟的科学精
7、神的培养,又有一个不怕失败、百折不挠品格的锻炼。1.3 设计思想J2EE精品课程网站的宗旨是培养学生利用信息技术的意识和能力,促进信息技术与学科课程的整合,逐步实现教学内容的呈现方式、学生的学习方式、教师的教学方式和师生互动方式的变革,充分发挥信息技术的优势,为学生的学习和发展提供丰富多彩的教育环境和有力的学习工具,它的主要功能如下:一、能够提供丰富的教学资料,方便学生学习;二、能够为学科教师提供网站管理的能力,如学生的注册,对网站的相关信息进行有效管理(增加、删除、修改);三、能够实现师生互动;四、能够提供相关信息的下载,如教学资料、软件、课件等;五、开辟学生论坛、教师答疑,供师生交流;六、
8、能够提供一定的安全机制,提供数据信息的授权访问,防止随意删改。1.4 可行性分析 可行性分析也称为可行性研究,是在调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会等方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。下面将分别从技术、经济、社会三个方面对精品课程网站的建设进行分析和研究。1.4.1 技术可行性 根据学校提出的系统功能、性能及实现系统的各种约束条件,根据新系统目标来衡量所需的技术是否具备,本系统是一个数据库管理和查询的系统,现有的技术已较为成熟,硬件、软件的性能要求
9、、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。同时,考虑给予的开发期限也较为充裕,预计系统是可以在规定期限内完成开发的。 由以上分析可知,精品课程网站的开发在技术上是可行的。1.4.2 经济可行性 学校具有信息化的处理设施,并且拥有支持本系统的应用平台。因此无需再投入资金购买其他设施。 系统的开发基于本人对程序开发的实践学习而来,学校无需资金投入,并且软件开发过程投入的成本不高,因此开发经费完全可以接受。 由以上分析可知,精品课程网站在经济上是可行的。1.4.3 社会可行性本系统的社会可行性主要从法律因素、用户使用可行性两方面进行研究。(1)法律因素本系统是根据
10、精品课程网站的实际情况开发研制的,是通过大量的调研得出的,系统的软件设计是在独立的环境下完成的,无可供抄袭的软件产品。(2)用户使用可行性本系统对用户的要求,除了需要具备在MicrosoftWindows平台上使用个人电脑的知识外,并不需要特别的技术能力。使用系统的管理员,需要具备对Tomcat服务器的使用能力,在投入使用前,无需对操作系统的人员进行培训。这样既减少投入成本又简化了操作环节。 由以上分析可知,本系统具有社会可行性。1.5 总体设计原则本系统为了设计、实现和后期维护的方便,以及系统用户使用的便利,所以必须采取一定的设计原则。其主要设计原则有: 简单性:在实现系统的功能的同时,尽量
11、让系统操作简单易懂,这对于一个系统来说是非常重要的。 针对性:本系统设计是针对精品课程网教学的需求定向开发设计,所以具有专业突出和很强的针对性。 实用性:要求本系统能够满足精品课程网教学的需求,因此具有良好的实用性。 一致性:页面整体设计风格以及命名规则的一致性:整体页面布局和用图用色风格及变量、类名和其他元素的命名规则保持一致。功能一致性:完成同样的功能应该尽量使用同样的元素。 元素风格一致性:界面元素的美观风格、摆放位置在同一个界面和不同界面之间都应该是一致的。变量命名规则的一致性:变量应该用统一的规则进行命名,做到任意变量均能从上下文推断其义。 先进性:本系统采用JSP技术、SQL Se
12、rver2005等被广泛采用系统开发技术和数据库,因此本设计具有良好的先进性,具体表现在其具有良好的可扩展性,可开发性。 2 系统环境和主要技术2.1 系统开发环境和工具开发环境采用 Windows7的操作系统,使用Eclipse和Tomcat 6.0服务器作为主要开发工具。开发环境硬件配置如下: HP6450b 处理器2.67GHz; 3.0G 内存; 500G IDE硬盘; 开发环境的数据库服务器也使用本机作为服务器。本系统主要使用JSP、Struts技术对系统进行设计和开发。JSP拥有Java程序设计语言“一次编写,各处执行”、“安全性、保密性高”等的特点;Struts框架为开放者提供了
13、一个统一的标准框架,通过使用Struts作为基础,开发者能够更专注于应用程序的商业逻辑,Struts能充分满足应用开发的需求,简单易用,敏捷迅速。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重
14、新定向网页等,以实现建立动态网页所需要的功能。JSP与JavaServlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。J
15、SP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。自JSP推出后,众多大学校都支持JSP技术的服务器,如IBM、Oracle、Bea学校等,所以JSP迅速成为商业应用的服务器端语言。使用MicrosoftSQLServer2005数据库作为后台数据库,SQLServer2005系统具有强大的网上功能,可以在互联网上发布数据库中的数据。在SQLServer2005系统中,允许用户简单的使用一些向导和工具把数据库的数据发布到网络上,并且可以根据需要来调度修改已经发布的数据。在大家所了解数据库系统中,MicrosoftSQLServer2005,经
16、过三十多年的发展,已经成为最重要的数据处理技术,被广泛应用到多种项目的开发与设计中,决定采用此数据库系统来完成系统的设计。2.2 系统运行环境 根据系统的平台无关性,开发过程中的易于测试与维护等特点,集服务器与客户机于一体,均用本机作测试。运行环境使用SQL Server + Tomcat作为应用服务器。服务器运行环境如下: 服务器解译引擎:Apache Tomcat/6.0.12; JDK版本:1.6.0_12; 服务器操作系统:Windows7; HTTP解译引擎:HTTP/1.1; 服务器名(IP):localhost; 服务器端口:8888;2.3 Struts技术Struts最早是作
17、为Apache Jakarta项目的组成部分,项目的创立者希望通过对该项目的研究,改进和提高JavaServer Pages 、Servlet、标签库以及面向对象的技术水准。Struts这个名字来源于在建筑和旧式飞机中使用的支持金属架。这个框架之所以叫Struts,是为了提醒我们记住那些支撑我们房屋,建筑,桥梁,甚至我们踩高跷时候的基础支撑。这也是一个解释Struts在开发Web应用程序中所扮演的角色的精彩描述。当建立一个物理建筑时,建筑工程师使用支柱为建筑的每一层提供支持。同样,软件工程师使用Struts为业务应用的每一层提供支持。它的目的是为了帮助我们减少在运用MVC设计模型来开发Web应
18、用的时间。我们仍然需要学习和应用该架构,不过它将可以完成其中一些繁重的工作。如果想混合使用Servlets和JSP的优点来建立可扩展的应用,Struts是一个不错的选择。Struts的目的是为了减少在运用MVC设计模型来开发Web应用的时间。你仍然需要学习和应用该架构,不过它将可以完成其中一些繁重的工作。Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点,使开发者能更深入的了解其内部实现机制。除此之外,Struts的优点主要集中体现在两个方面:Taglib和页面导航。Taglib是Struts的标记库,灵活动用,能大大提高开发效率。另外,就目前国
19、内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。关于页面导航,我认为那将是今后的一个发展方向,事实上,这样做,使系统的脉络更加清晰。通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着莫大的好处。尤其是当另一批开发者接手这个项目时,这种优势体现得更加明显。2.4 AJAX技术AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。Ajax(Asynchronous JavaScript + XML)的定义 :基于
20、web标准(standards-based presentation)XHTML+CSS的表示; 使用 DOM(Document Object Model)进行动态显示及交互; 使用 XML 和 XSLT 进行数据交换及相关操作; 使用 XMLHttpRequest 进行异步数据查询、检索; 使用 JavaScript 将所有的东西绑定在一起。 HYPERLINK /view/170434.htm t _blank 英文参见Ajax的提出者Jesse James Garrett的原文,原文题目(Ajax: A New Approach to Web Applications)。类似于DHTML
21、或LAMP,AJAX不是指一种单一的技术,而是有机地利用了一系列相关的技术。事实上,一些基于AJAX的“派生/合成”式(derivative/composite)的技术正在出现,如“AFLAX”。 AJAX的应用使用支持以上技术的web浏览器作为运行平台。2.4.1 AJAX工作原理 与传统的Web应用不同,Ajax采用异步交互过程。Ajax在用户与服务器之间引入一个中间媒介,从而消除了网络交互过程中的处理、等待缺点。即相当于在用户和服务器之间加了个中间层,使用户操作与服务器响应异步化。这样把以前的一些服务器负担的工作转嫁到客户端,利于客户端闲置的处理能力来处理,减轻服务器和带宽的负担,从而达
22、到节约ISP的空间及带宽租用成本的目的。用户的浏览器在执行任务时即装载了Ajax引擎。Ajax引擎用JavaScript语言编写,通常藏在一个隐藏的框架中。它负责编译用户界面及与服务器之间的交互。Ajax引擎允许用户与应用软件之间的交互过程异步进行,独立于用户与网络服务器间的交流。现在,可以用JavaScript调用Ajax引擎来代替产生一个HTTP的用户动作,内存中的数据编辑、页面导航、数据校验这些不需要重新载入整个页面就可以交给Ajax来执行。在Ajax技术中,当在客户端界面输入一个数据进行请求时,该数据就会被交给Ajax引擎中间层,中间层获取数据后,将该数据信息发送给服务器端程序。服务器
23、端程序获取数据后,进行处理。在处理过程中,如果需要数据库中的数据,就会向数据层发送信息。服务器端处理完信息,会将响应信息交给Ajax引擎中间层,而不是原来的将数据直接交给客户端界面显示。Ajax引擎获取了数据之后,就会将数据和数据显示样式共同交给客户端界面显示。这里我们会发现,Ajax中间层位于客户端,故其运行速度要远远大于从服务器端将所有数据发送过来再显示。2.4.2 AJAX的基本原则 我们用到的很多框架中都已经固化了基于页面的传统应用模式,同时这些应用模式也已经深深进入了我们的思想中。我们需要以Ajax的角度重新思考一下Ajax的一些核心概念。 浏览器中的是应用而不是内容 服务器交付的是
24、数据而不是内容 用户交互变得流畅而连续 有纪律的严肃编程2.5 SQL SEVER2005SQLSEVER2005,数据库设计软件。SQLSEVER是微软系列软件中用来专门管理数据库的应用软件。所谓数据库是指经过组织的、关于特定主题或对象的信息集合。数据库管理系统分为两类:文件管理系统和关系型管理系统。SQLSEVER2005应用程序就是一种功能强大且使用方便的关系型数据库管理系统,一般也称关系型数据库管理软件。它可运行于各种Microsoft Windows系统环境中。SQLSEVER使用标准的SQL(Structured Query Language,结构化查询语言)作为它的数据库语言,从
25、而提供了强大的数据处理能力和通用性。一个SQLSEVER数据库中可以包含表、查询、窗体、报表、宏、模块以及数据访问页。不同于传统的桌面数据库(dbase、 FoxPro、Paradox),这种针对数据库集成的最优化文件结构不仅包括资料本身,也包括了它的支持对象。更新数据库中的数据,可以使用SQL语句的UPDATE、INSERT和DELETE操作,然后将包含UPDATE、INSERT、DELETE的SQL语句交给Statement对象executeUpdate()方法执行。Statement对象用于执行不带参数的简单SQL语句。在JSP程序中,由于外部环境的变化,后台连接数据库中的数据每隔一段时
26、间,就需要更新。我们不可能直接打开MySQL数据库进行更新,一般情况下都是借助JSP程序进行更新。显示和查询数据库的操作,与执行更新的操作基本相似。不同的是使用的SQL语句不同,并且操作完成后往往需要对查询的结果集进行处理。2.6 JDBC概述在JSP技术中,对数据库的操作都是通过JDBC组件完成的。JDBC在Java脚本程序和数据库之间充当了一个桥梁的作用。Java脚本程序可以通过JDBC组件向数据库发出命令,数据库管理系统获得命令后,执行请求,并将请求结果通过JDBC返回给Java程序。JDBC是Sun公司提供的一套数据库编程接口API函数,由Java语言编写的类。使用JDBC开发的程序能
27、够自动地将SQL语句传送给相应的数据库管理系统。不但如此,使用Java编写的应用程序可以在任何支持Java的平台上运行,不必在不同的平台上编写不同的应用。Java和JDBC的结合可以让开发人员在开发数据库应用程序时真正实现“Write Once,Run Everywhere!”。通过JDBC组件,向各种关系数据库发送SQL语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,为访问Informix数据库又写另一个程序等。只须用JDBC API写一个程序就够了,它可以向相应数据库发送SQL语句。而且,使用Ja
28、va编程语言编写的应用程序,无须考虑要为不同的平台编写不同的应用程序。将Java和JDBC结合起来将使程序员只须写一遍程序就可让它在任何平台上运行。通过JDBC组件对数据库进行操作所需的类库JDBC API,包含在两个包里。第一个包是java.sql,包含了JDBC API的核心Java数据对象,包括为DBMS(数据库管理系统)连接和存储在DBMS里的数据进行交互而提供的Java数据对象。另外一个包含JDBC API的包是javax.sql,它扩展了java.sql,是J2EE/Java EE的一部分。除其他高级JDBC特性外,javax.sql还包含了那些与Java命名与目录接口(JNDI)
29、进行交互的Java数据对象,以及管理连接池的Java数据对象。在java.sql包中,只包括少量具体类。API中的大部分被描述为数据库的中枢接口类,它们指定具体操作而不提供任何实现。实际的实现由第三方提供商提供。独立的数据库系统通过一个实现java.sql.Driver接口的特定JDBC驱动程序被接收。驱动程序支持几乎所有流行的RDBMS(关系数据库管理)系统,但不是都可以免费获得。Sun公司将一个免费的JDBC-ODBC桥驱动程序绑定在JDK上以支持标准ODBC数据源。2.7 Web数据库的发展历程数据库技术从最早的单机模式、主从体系,发展到近年来应用较广的客户机/服务器(Client/Se
30、rver,以下简称C/S)模式,又到目前最流行也最实用的浏览器/服务器(Browser/Server,以下简称B/S)模式.在设计一个系统时,我们首先要考虑的是系统的体系结构,采用哪种结构取决于系统的网络环境、应用需求等因素。2.7.1 主机/终端结构早期由于主机价格昂贵,为了共享主机资源,一台主机要同时为多个用户服务,但这种系统由于没有和通信相结合,所连接的终端往往离主机的距离很近。这种结构的终端不需要做什么处理工作,一切数据处理都交给了主机去完成。由于主机包揽了数据处理的一切工作,这就要求它具有十分高的性能。这种结构中,服务器存储所有数据,进行所有处理运算,资源也得到了充分的共享,但是用户
31、界面不友好,主机负载过大。如图2. 1所示:图2. 1 主机/终端结构 图2. 1 主机/终端结构2.7.2 客户机/服务器结构传统的C/S结构是两层的,基本思想是:服务器提供数据的存取和管理等,客户端运行相应的应用,通过网络获得服务器的服务,使用服务器上的数据库资源。与主机/终端模式相比,C/S结构更容易扩充,更加灵活。当信息系统的规模扩大或需求改变时,不必重新设计便可在原有基础上进行扩充和调整,从而保护了己有投资。为了应用客户机/服务器这种体系结构,原来完全放在主机上的应用程序被分成了两部分:客户机端的应用程序和服务器端的应用程序。如图2. 2所示:图2.2 二层结构图2.2 二层结构随着
32、Internet技术的普及和电子商务技术的发展,客户机/服务器结构的数据库系统正由2层向3层或多层发展。在如图3. 3所示的层结构中,应用程序的任务在逻辑上被划分为3种服务:用户服务、业务服务(中间层服务)和数据服务。用户服务在客户机上,提供了可视化的用户界面来表示信息和收集数据:业务服务在一个或多个业务服务器上,是联系用户服务和数据服务的“桥梁”,它们响应用户发来的请求,实施业务规则,处理和分析业务数据,获得业务结果:数据服务在数据库服务器上,负责数据的组织管理,包括数据的定义、维护、访问和更新以及管理并响应业务服务的数据请求。如图2.3所示:图2.3 三层结构图2.3 三层结构2.7.3
33、浏览器/服务器结构 典型的C/S结构不仅要求为客户端安装前端应用程序,而且限制客户端的工作环境只能基于Windows或UNIX操作系统,这些限制条件都不切实际。人们不能开发那种只能用于特定计算环境的软件,且在自己的Web站点上同时保存某个应用程序的多个特定平台的版本是不可行的,因为这样不但使软件开发成本大幅度上涨,而且客户端的计算环境可能是千变万化的,无法预知客户端的计算环境会怎样改变。不过可以要求在客户机上安装某种具有一定“翻译”功能的统一的构件,这个构件便是浏览器。 于是基于B/S的系统就应运而生了,B/S结构是在C/S结构基础上发展起来的,各个客户端只需安装一个简单的Web浏览器,用户面
34、对的将是简单统一的浏览器,而不是一个复杂的软件,这就降低了用户的使用难度。 (1)、浏览器/服务器结构的工作原理浏览器/服务器模式的数据库体系是利用Web服务器和JSP(ActiveServer Pages即动态服务器网页)作为数据库操作的中间层,将客户机/服务器模式的数据库结构与Web技术密切结合,从而形成具有三层Web结构的浏览器/服务器模式的数据库体系。具体结构如图2.4所示:图2.4 三层Web结构的数据库体系 图2.4 三层Web结构的数据库体系浏览器/服务器结构的工作原理是:在前端采用IE浏览器将用户提交的操作信息向Web服务器发出HTTP请求,Web服务器通过JSP和一些中间组件
35、访问后台数据库,并将操作结果以HTML页面的形式返回给前端浏览器。 (2)、浏览器/服务器模式的优点从本质上讲,B/S模式与传统C/S都是以同一种请求和应答方式来执行应用的。但传统的C/S是一种二层或三层结构模式,其客户端集中了大量应用软件,而B/S客户端仅需单一的浏览器软件,是一种全新的体系结构。3 系统开发与设计3.1 本网站建设的原则3.1.1 以学生为目的的原则精品课程网站建设的目的是实现优质资源共享,共享分为两方面,一是为教师共享先进的教学理念,先进的教学方法,优秀的教学参考资源。二是学生的共享,也是精品课程网站建设的最主要目的,使优质教学资源全国的学生都能分享,从面达到全面提升我国
36、高校教学质量的目的。因此,我们在J2EE精品课程网站的设计及规划中,充分考虑学生学习网上资源的重要性, 以学生为中心,强调通过学生的自主发现去掌握知识,培养学生对知识的兴趣与爱好,使学生把语言的学习看作自身内在的需要。学生的角色从接受者转变为分析者、探究者。在网站中设计有J2EE网络课程,学生通过该网络课程可以学会其理论知识。同时,学生登陆精品课程网站可以与教师进行在线的交流和讨论,也可以下载最新上传的软件及相关内容。3.1.2 网站设计与评价指标相统一原则网站设计与评价指标相统一原则指的是供专家评审的前台网站部分,为了便于专家的评审,我们在设计前台网站时要根据课程评价指标的要求进行相关的模块
37、设置,每一模块与课程的一级评价指标相对应,这样既便于专家的评审,也方便学习者进入相关模块学习。如J2EE精品课程网站主页模块分为课程介绍、教学资源、实验资源、实践互动、技术动态、软件下载6大模块。3.1.3 教学内容与教学设计相结合原则精品课程网站建设的评价指标中要求课程必须体现现代教育思想。因此,我们在组织精品课程网站时要注重教学内容与教学设计理念相结合, 以人本主义和建构主义作为网站建设的两大理论建设支柱。在教学内容的组织、教学环节的安排上注重对学生的内在情感教育的培养,注重对学生的创新意识、创新思维、创造能力的培养。3.1.4 教学实用性原则精品课程网站的主要功能是为教学服务。因此,我们
38、在组织和制作课程资源时要力求精品,不要盲目追求“大而全”。在介绍学科知识体系、提供教学参考资料、相关题集的基础上,结合实际情况,凸现本学科的特色栏目。在制作和组织教学资源时要与教学实用相结合,使学生通过网站能真正学到知识。3.1.5 交互设计原则交互性的意义在于学生的参与性、主动性学习。精品课程网站是为学习者提供远程教育服务,师生身处异地,师生之间的沟通交流尤为重要,为此,我们在设计精品课程网站时充分考虑交互方式,如:学生留言栏互动交流空间,实现老师与学生、学生与学生之间的教与学的交互。3.2 网站设计的方法 精品课程网站是学生自主学习、教学互动、学习交流的重要平台。建设一个美观实用、内容丰富
39、、特色鲜明的精品课程网站,不是学科教师的独立行为,而是教师、技术人员、教学设计人员合作的结晶。因此,我们在设计网站之前先要对网站的整体风格、模块设置、栏目架构、技术应用等进行规划。“磨刀不误砍柴工”,只有在周密的前期工作完成后,技术的制作才能又快又好地完成。J2EE精品课程网站整体风格体现出简介明了的风格,栏目设置围绕J2EE教学要求进行设计,教学资源丰富多彩,主要技术采用struts及ajax技术。3.3 系统功能模块划分 3.3.1 功能模块图图3.1 功能模块图 图3.1 功能模块图功能模块HYPERLINK /doc/189464.html是指数据HYPERLINK /doc/5332
40、482.html说明、可执行语句等程序元素HYPERLINK /doc/2166799.html的集合,它是指单独命名的可通过名HYPERLINK /doc/4108438.html字HYPERLINK /doc/4332348.html来访问的过程、函数、子程序或宏调用。功能模块化是将程序划分成若干个功能模块,每个功能模块完成HYPERLINK /doc/1256195.html了一个子功能,再软件结构图示把这些功能模块总起来组成一个整体。以满足所要求的整个系统的功能。功能模块化的根据是,如果一个问题有多个问题组合而成,那么这个组合问题的复杂程度将大于分别考虑这个问题时的复杂程度之和。这个结
41、论使HYPERLINK /doc/5333507.html得HYPERLINK /doc/5346202.html人们乐于利用功能模块化方法将复杂的问题分解成许多容易解决的局部问题。功能模块化方法HYPERLINK /doc/2369424.html并HYPERLINK /doc/2408597.html不等于无限制HYPERLINK /doc/5333504.html地分割软件,因HYPERLINK /doc/4666687.html为随着功能模块的增多,虽然开发单个功能模块的工HYPERLINK /doc/3044521.html作量减少了,但是设计功能模块间接口所需的工作量也将增加,而且
42、会出现意想不到的软件缺陷。因此,只有选择合适的功能模块数目才会使整个系统的开发成本最小。 本系统功能模块包括: 课程介绍包括:课程描述、课程教育特色、实践教学、培养目标; 教学资源包括:教学大纲、教学日历、电子课件、实践项目; 实验资源包括:实验申请书、教学大纲、教学日历、实验样本、实验解析; 实践互动包括:学生留言板;答案公示栏; 技术动态包括:J2SE、J2EE、J2ME; 课程介绍管理包括:课程描述管理、课程教育特色管理、实践教学管理、培养目标 管理; 教学资源管理包括:教学大纲管理、教学日历管理、电子课件管理、实践项目管理; 实验资源管理包括:实验申请书管理、教学大纲管理、教学日历管理
43、、实验样本管理、实验解析管理; 实践互动管理包括:学生留言板管理;答案公示栏管理、回复留言; 技术动态管理包括:J2SE管理、J2EE管理、J2ME管理; 系统用户管理包括:密码修改、修改用户名、添加系统用户、管理系统用户; 软件下载管理包括:添加软件、软件管理。3.3.2 系统模块介绍 (1) 普通用户如果你是普通用户进入本站,你只能做一些简单的操作,比如浏览网站上的内容,观看在线视频,下载课件,一些更高级的操作在这里是不能执行的,只有输入密码跟用户名时才能进行课程的添加、修改、删除等操作。 (2) 管理者如果你是一名管理者,你不但可以看到普通用户能看到的一切内容,而且还可以进行一系列的更高
44、级的操作,比如,可以进行留言管理,对学生提出的问题进行解答,对一些重复的留言或者是跟本站无关的留言进行删除,类别管理是管理者可以重新加一个新的类,公告管理是管理者对已经过时的公告进行删除,添加新的公告,管理者还可以对课程进行添加删除修改的操作。从技术实现角度模块又可划分为: A 登陆模块主要是实现管理者的登陆。登录模块至少需要以下几个页面:1.检查Cookie页面;2.输入用户信息页面;3.用户合法性验证页面;4.登录成功欢迎页面;5.登录失败提示页面;6.注销登录页面。 B 读取模块主要是从数据库中把符合条件的数据读取出来,显示在浏览器中。只要是从数据空 中度数据就必须用到这个模块。 C 添
45、加模块主要是实现管理者对课程的添加功能。通过连接数据库后通过代码把相应的信息写到数据库里面。 D 修改模块主要是实现管理者对已发课程进行修改的功能。 E 删除模块主要是实现对需要删除的功能进行删除操作。对课程或留言进行删除管理,如果有多余的信息,或者留言中一些跟本站无关的信息出现在网站中,就必须对这些内容、留言进行删除。 F 查询模块对符合条件的信息进行查询并显示。3.4 数据库设计 一个优秀的信息系统离不开一个完备的数据库,所以数据库的设计就显得非常重要,因为数据库设计的好坏直接影响系统的可操作性,首先对数据库设计进行需求分析,确定数据库中所需的数据表,然后应用模式图对信息进行组织和连接,最
46、后确定每个数据表的字段属性、含义和主键等信息。3.4.1 数据库设计需求分析根据系统设计和功能分析,本系统设计建立了五个表,管理员具有最高的权限,因此将管理员的信息单独设置一个表:admin,主要包括用户名admin和密码Password。由于需要存储各种信息,因此根据系统需要,设置了以下几个信息表,包括课程信息表(data):存储课程的基本信息 ,留言信息表(message):存储留言的基本信息 ,课程分类信息表(sorts):存储课程分类基本信息 。3.4.2 系统E-R图E-R图为实体-联系图,提供了表示HYPERLINK /doc/1296100.html实体型、属性和联系的方法,用来
47、描述现实世界的概念模型E-R模型的组成元素有:实体、属性、联系。E-R模型用E-R图表示。实体是用户工作环境中所涉及的事务,属性是对实体特征的描述。(1)模型中的实体相当于实体集、一个表,而不是单个实体或表中的一行。实体用矩形框表示,实体名称标注在矩形框内。用菱形表示实体间的联系,菱形框内写上联系名,用无向边把菱形分别与有关实体相连接,在无向边旁标上联系的类型。(2)属性是实体的性质。用椭圆框表示,与实体之间用一条线相连表的主码是关键属性,关键属性项加下划线。(3)各子系统模块中主键相同的字段之间存在着相互关联的关系。(4)在程序中实现对他们的完整性和一致性控制。 从数据需求分析中得出系统的实
48、体属性图,遵循三范式原则,对实体之间的依赖关系进行了整合,得出系统E-R图。 本网站学生用户E-R如图3.2所示:图3.2 学生E-R图 图3.2 学生E-R图 本网站管理员E-R如图3.3所示:图3.3 管理员E-R图图3.3 管理员E-R图 3.5 系统模块设计简要介绍以下模块主要是从技术实现角度来划分的,主要是实现了系统的登陆,课程的读取,课程的添加,课程的删除,课程的修改,查询模块。3.5.1 登陆模块登录验证是登录的关键,由于在输入学号和密码过程中的不确定性,可能不小心输入各种字符或者是输错学号和密码,所以进行验证必不可少。我通过chkadmin.JSP页面进行验证:首先判断用户名和
49、密码是否为空,如果为空则显示“您的管理帐户或密码有误!”,接着转向登陆页面。3.5.2 读取模块虽然这个模块不是管理者的范围之内,但是对于实现系统来说却有着举足轻重的作用,它主要是把数据库中的内容读取出来显示在浏览器上,只要是从数据空中度数据就必须用到这个模块。3.5.3 添加模块本系统中的几个模块,都涉及了数据的添加,比如课程的添加,发表留言,都是运用的添加功能来实现的,添加功能主要是通过连接数据库后通过代码把相应的信息写到数据库里面。3.5.4 删除模块本模块主要是对课程或留言进行删除管理,如果有多余的信息,或者留言中一些跟本站无关的信息出现在网站中,就必须对这些内容、留言进行删除。3.5
50、.5 修改模块本模块主要是对课程内容进行修改。3.5.6 搜索模块为了方便用户查询,J2EE精品课程网站增加了搜索功能,这样可以使用户及时高效的查询到自己所需要的内容,使网站更体现交互性的一面。3.6 界面设计3.6.1 首页首页,是整个网站的门面,当然要把它打扮得漂漂亮亮的,并且要将网站所要展示的重要信息显示出来,使浏览网站的用户能够方便的找到他们所需要的东西。 生成界面如图3.4所示:图3.4 网站首页 图3.4 网站首页主要代码如下:package bean;import java.sql.Connection;import java.sql.ResultSet;import java.
51、sql.SQLException;import java.sql.Statement;import java.util.ArrayList;import util.DBConn;public class SelectBean Connection conn = null;Statement st = null;ResultSet rs = null;/* * * param sql * param args * return ArrayList * 获取多条信息 */public ArrayList select(String sql,String args)ArrayList al = ne
52、w ArrayList();conn = DBConn.getConn();try st = conn.createStatement();rs = st.executeQuery(sql);while(rs.next() /在数组列表中获取多条信息ArrayList alRow = new ArrayList();for(int i = 0;i args.length;i+)alRow.add(rs.getString(argsi);al.add(alRow); catch (SQLException e) / TODO 自动生成 catch 块e.printStackTrace(); fi
53、nallyDBConn.close(conn,st,rs);return al; /返回获取的信息/* * * param sql * param args * return ArrayList * 获取一条信息 */public ArrayList select(String args,String sql)ArrayList al = new ArrayList();conn = DBConn.getConn(); /数据库连接try st = conn.createStatement();rs = st.executeQuery(sql);rs.next();for(int i = 0;
54、i args.length;i+)al.add(rs.getString(argsi); catch (SQLException e) / TODO 自动生成 catch 块 finallyDBConn.close(conn,st,rs);return al;3.6.2 教学大纲用户在网页左侧点击教学大纲栏及出现此界面,此界面包括浏览课程描述,课程教学特色,实践教学,培养目标等功能。根据用户不同的需要来显示其课程内容。生成界面如图3.5所示:图图3.5 教学大纲界面 主要代码如下:package bean;import java.util.ArrayList;public class AllB
55、ean SelectBean sb = new SelectBean();ArrayList al = null;/各方法获取相应数据public ArrayList getUsers()String sql = select * from users order by id desc; String args = id,name,age,sex,phone,address,yearcard,begindate,enddate,amount,loss;al = sb.select(sql, args);return al;public ArrayList getUsers(String id)
56、String sql = select * from users where id=+id; /users的取数逻辑,通过id匹配获取相应数据String args = id,name,age,sex,phone,address,yearcard,begindate,enddate,amount,loss;al = sb.select(args, sql);return al;public ArrayList getUsersId(String id)String sql = select * from users where id=+id; / usersid的取数逻辑String args
57、 = id,name,age,sex,phone,address,yearcard,begindate,enddate,amount,loss;al = sb.select(sql, args);return al;public ArrayList getUsersName(String name)String sql = select * from users where name like %+name+% order by id desc;/ UsersName的取数逻辑String args = id,name,age,sex,phone,address,yearcard,begind
58、ate,enddate,amount,loss;al = sb.select(sql, args);return al;/教学项目取数逻辑public ArrayList getItem()String sql = select * from item order by id desc;String args = id,name,price;al = sb.select(sql, args);return al;public ArrayList getItem(String id)String sql = select * from item where id=+id;String args
59、= id,name,price;al = sb.select(args, sql);return al;/包年用户取数逻辑public ArrayList getYearcard()String sql = select * from yearcard where id=1; String args = id,price;al = sb.select(args, sql);return al;public ArrayList getFlaw(String id)String sql = select * from flaw where id=+id;String args = id,softw
60、areid,usersid,content,reason,restoration,times;al = sb.select(args, sql);return al;3.6.3 学生留言栏精品课程网站是为学习者提供远程教育服务,师生身处异地,师生之间的沟通交流尤为重要,为此,我们在设计精品课程网站时充分考虑交互方式,实现老师与学生、学生与学生之间的教与学的交互。生成界面如下图3.6所示:图图3.6 学生留言界面 主要代码如下:public class PageBean SelectBean selectBean = new SelectBean();/* * 获取分页总条数 * param s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东省阳江市(2024年-2025年小学五年级语文)人教版开学考试((上下)学期)试卷及答案
- 恶性黑色素瘤病例分享护理课件
- 性格分析在组织管理中的应用学员版课件
- 大学生学生会竞选二
- 急性胆管炎的疑难病例讨论课件
- 2024年货车电车买卖合同范本
- 《催命式营销培训》课件
- 云南省玉溪市(2024年-2025年小学五年级语文)统编版随堂测试((上下)学期)试卷及答案
- 智能美甲机的市场调查
- 四川省雅安市(2024年-2025年小学五年级语文)人教版小升初模拟((上下)学期)试卷及答案
- (教案)Unit 3 Celebrations Topic Talk 高中英语北师大版 必修 一
- 小学生主题班会:自立自强勇攀高峰模板
- 资方和项目方的合作协议范本
- 习作单元解读及其教学策略
- “双减”背景下小学排球运动发展路径探索
- 八年级地理上册第一、二章测试题及(答案)
- 【语文】黄冈市四年级上册期末复习试卷(含答案)
- 滑雪教练职业规划书
- 期中测试卷(试题)北师大版三年级上册数学
- 第七节-感染性心内膜炎病人的护理课件
- 装修常用数据手册(空间布局和尺寸)
评论
0/150
提交评论