文档库 最新最全的文档下载
当前位置:文档库 › 基于java的学生网上教学-毕业论文

基于java的学生网上教学-毕业论文

毕业设计报告(论文) 题目:Java教学平台的研究与实现

所属系计算机工程系

专业计算机科学与技术

学号01106362

姓名刘锴

指导教师

起讫日期2010.3 ------- 2010.6

设计地点东南大学成贤学院

毕业设计报告(论文)诚信承诺

本人承诺所呈交的毕业设计报告(论文)及取得的成果是在导师指导下完成,引用他人的成果的部分均已列出参考文献。如论文涉及任何知识产权纠纷,本人将承担一切责任。

学生签名:

日期:

Java教学平台的研究与实现

摘要

本文对java教学平台的研究与实现做出了详细介绍。首先在结构上论述了毕业设计选题的背景、目的和意义,然后叙述开发平台和数据库技术以及各自的优点。接下来阐述了该教学平台的需求分析,系统分析,数据库设计以及系统的详细设计。使该系统能够完成信息的输入输出,数据的修改、查询、删除和添加功能,方便不同用户的操作。该网站是集在线学习,资料下载,习题测试等功能为一体的学习网站,运用MYSQL数据库系统和三层架构开发实现。

关键词:Java Jsp Mysql 教学平台

The Research and Implement of Java Education Platform

Abstract

The Research and Implement of Java Education Platform were made in detail. First, the structure discussed graduation projects’background, the purpose and the meaning, and then describes the development platform and database technologies and their respective advantages.Then it elaborates on the teaching platform needs analysis, system analysis, database design and detailed design. Make the system to complete the input and output, data modification, query, delete and add functions to facilitate the operation of different users. The site is for online learning, data download, exercise testing and other functions such as one of the study sites, the use of MYSQL database systems and development to achieve the three-tier architecture.

Keywords: Java;Jsp;Mysql;Educatiom Platform

目录

第一章引言 (1)

1.1课题的项目背景 (1)

1.1.1 世界各国重视利用网络进行教育 (1)

1.1.2 我国在网络教育中处于尝试阶段 (1)

1.2 课题的现实意义 (2)

1.3项目开发的内容 (2)

第二章有关java的文献回顾 (3)

2.1 JAVA 简介 (3)

2.1.1 java语言的基本特点 (4)

2.1.2 SSH中的三层架构简介 (5)

2.3 MYSQL (6)

第三章需求分析 (8)

第四章系统分析 (9)

4.1系统功能划分 (9)

4.2网站架构 (10)

4.3系统功能模块设计 (10)

第五章数据库设计 (11)

5.1数据库需求分析 (11)

5.2数据库概念结构设计 (11)

5.3 数据库表结构设计 (11)

第六章详细设计 (15)

6.1登入界面 (15)

6.2 学生管理界面 (17)

6.2.1 主界面 (17)

6.2.2 密码修改界面 (18)

6.2.3 下载中心 (20)

6.3 教师管理界面 (20)

6.3.1 主界面 (20)

6.3.2 添加试卷 (21)

6.3.3 上传课件资源 (23)

6.4 管理员操作界面 (24)

6.4.1 主界面 (24)

6.4.2 信息管理 (25)

6.4.3 学生管理,教师管理 (29)

6.4.4 资源管理 (31)

6.5 学习资源界面 (31)

6.5.1 学习资源下载 (31)

6.5.2 网络精品课程 (33)

第七章系统测试 (35)

7.1测试计划 (35)

7.2测试方案 (35)

第八章结束语 (36)

致谢 (37)

参考文献(References) (38)

第一章引言

1.1课题的项目背景

1.1.1 世界各国重视利用网络进行教育

网络教育具有其它技术手段无可比拟的优越性,因此世界各国尤其是发达国家无不对此给予高度的重视。美国总统克林顿在1996年初就要求在2000年以前把每一间教室和每一个图书馆都联到Internet上。英国到2000年已有24门学科不同程度地实现了课程与网络的结合。日本政府在100所中小学进行的联网试验研究项目要通过一系列科学试验探索新的教育体制与教学模式。

1.1.2 我国在网络教育中处于尝试阶段

在我国,信息技术整合于课程的策略主要是通过利用信息技术丰富课程,“即在教师的教学设计及讲稿中注入互联网上新的内容,用新的资料更新教学设计或者在讲授中加入交互演示,或者改编在线找到的教学设计,或者围绕一些以前从未得到的资料创作新的教学设计”。这种策略中,信息技术整合教学不是为了开发新的教学方法,而是用这些策略丰富课程,用互联网资源作为增进课堂活力的催化剂。随着信息技术的发展和课程改革的需要,信息技术与课程的整合不应止于教师在教学中应用信息技术,而应积极创造条件,帮助学生逐步学会根据学习需要评价和选用合适的IT工具,有效地获取信息、加工和处理信息、表达和交流信息,并能利用信息解决问题,帮助学生以新的方式进行学习。因此,必须把信息技术从学习对象转变为学习工具,把信息技术运用到学习之中,使之成为提高教育质量的一个重要载体,必须把信息技术从辅助教学的手段转变为促进学习方式变革的平台,建构在网络环境下学生自主、合作、探究学习的新方式。为了实现上述目标,许多中小学尝试让学生上网就某一主题收集资料或者开展基于网络的研究性学习,但这种环境下教师的指导作用微乎其微。而要实现上述目标必须将网络技术与课堂教学紧密结合,通过课堂这一主渠道实现信息技术与课程的整合。2000年3月江苏省南京市中华中学在全国首创网络教学,在初中实验班的地理、外语课试行这种全新的教学模式。随后北京、广东、上海等地相继有学校进行网络教学的尝试。但从网络技术的应用来看,当时网络技术的应用还只是停留在课程内容的发布上,网络只是一种信息传递的媒体,而没有当作一种通讯平台来使用,尽管某些课程充分考虑了网络更高层次的应用,但基本上处于尝试阶段;“构建高中地理教学网络互动平台的研究”课

题就是要建构一个基于网络环境的教学互动平台,促进师生互动,探索互动模式,有效促进中小学教学改革,提高学科教学质量,培养学生的创新精神与实践能力。

1.2 课题的现实意义

JAVA是SUN公司最新推出的WEB开发平台中面向对象的编程语言。利用这种面向对象的、可视化的编程语言,结合事件驱动的模块设计,将使程序设计变得轻松快捷。该网站能够方便学生网上学习,资源下载,不受时间、地点的限制,让学生能有个学习、交流的园地,对教学有很好的帮助。

另外该网站方便管理员和教师随时添加、修改、删除教材资料,这就使得旧的知识容易得到更新,以满足广大学员的需求。

1.3项目开发的内容

本网站是一个集网上学习、资源下载、信息通知等功能于一体的网络教学管理平台。

后台管理员可以添加、修改成员资料,发布系统公告以及网站动态,管理文件资源和网络精品教程;前台一般学生只能浏览网页,查看试卷并下载资料,观看网络精品教程。教师负责上传试卷及学习资源。

第二章有关java的文献回顾

2.1 JAVA 简介

现在,市场上可以选购的应用开发产品很多,流行的也有数十种。目前在我国市场上最为流行、使用最多、最为先进的可用作企业级开发工具的产品有:Oracle 公司的Java

Microsoft公司的Visual Basic

Microsoft公司的Visual C

Borland 公司的Delphi 等等

在目前市场上这些众多的程序开发工具中,有些强调程序语言的弹性与执行效率;有些则偏重于可视化程序开发工具所带来的便利性与效率的提高,各有各的优点和特色,也满足了不同用户的需求。然而,语言的弹性和工具的便利性是密不可分的,只有便利的工具,却没有弹性的语言作支持,许多特殊化的处理动作必需要耗费数倍的工夫来处理,使得原来所标榜的效率提高的优点失去了作用;相反,如果只强调程序语言的弹性,却没有便利的工具作配合,会使一些即使非常简单的界面处理动作,也会严重地浪费程序设计师的宝贵时间。

制造产品的人当然全都从不同的方面来考虑其设计,视他们所使用的硬件平台、操作系统和应用软件而定。但是,如果您要使这些产品中的一些产品一起工作,那怎么办?安全性、可靠性和网络问题又这么样呢?

因此,Sun公司这些工程师把各种不同的产品折开来,然后又把它们重新组装起来,其目标是要使这些不同的设备相互交谈。他们把这些研究对象相互传来传去,并理解所有其他研究对象的特性,以便使他们能更好地一起工作。这就把制造商的问题缩减到最低程度,并使消费者能方便地进行集成。当传统的语言证明是不适用时,工程师们就打算找到某种简单的现代新语言。于是, Java应运而生。人们很快发现,Java有可能超越工程师的想象。Java的魅力在

于它提供给开发人员和用户的简便性。开发人员拥有广大的用户基础、平台独立性、降低的开发费用和始终如一的执行环境,而用户则可从生动的内容、即时软件和增大的安全性中受益。

但是,Java正是从置于World Wide Web那时起才真正起飞。Java使全世界大为震动,因为它使Web页面栩栩如生,而且不久变得很明显,Java拥有大得多的潜力。人们之所以采纳Java,是因为它有独特的能力来编制和部署能在任何一个网络、任何一个操

作系统上运行的应用软件。分配软件的时间和费用实际上已不复存在,使得各公司可把更多的资源用来开发其产品。而且,某些工业专家认为,Java可能会改变软件销售模式,从固定价格改变为按使用量收费,这样做更有利可图,而且可阻止非法盗版。

Java是一种网络计算的通用开放标准平台。这种平台可从电话一直扩展到极端重要的应用,建立在您现有的硬件和软件体系结构基础上,从而创造出一个全部联网的企业或者制造出超出的创新产品。而作为我来说开发一个网络的教学平台用java开发是我的首选。

2.1.1 java语言的基本特点

面向对象:其实是现实世界模型的自然延伸。现实世界中任何实体都可以看作是对象。对象之间通过消息相互作用。另外,现实世界中任何实体都可归属于某类事物,任何对象都是某一类事物的实例。如果说传统的过程式编程语言是以过程为中心以算法为驱动的话,面向对象的编程语言则是以对象为中心以消息为驱动。用公式表示,过程式编程语言为:程序=算法+数据;面向对象编程语言为:程序=对象+消息。所有面向对象编程语言都支持三个概念:封装、多态性和继承,Java也不例外。现实世界中的对象均有属性和行为,映射到计算机程序上,属性则表示对象的数据,行为表示对象的方法(其作用是处理数据或同外界交互)。所谓封装,就是用一个自主式框架把对象的数据和方法联在一起形成一个整体。可以说,对象是支持封装的手段,是封装的基本单位。Java语言的封装性较强,因为Java无全程变量,无主函数,在Java中绝大部分成员是对象,只有简单的数字类型、字符类型和布尔类型除外。而对于这些类型,Java也提供了相应的对象类型以便与其他对象交互操作。

可移植性:就是在这个系统上作的程序经过一次编译后可以移植到别的系统上解释执行,只要经过简单的粘贴和复制就行了,不影响程序的效果

安全性:在 iSeries 服务器上运行的大多数 Java(TM) 程序是应用程序,而不是applet,所以“砂箱”安全性模型对它们不起限制作用。从安全性的观点看,Java 应用程序所受的安全性限制与 iSeries 服务器上的任何其它程序相同。要在 iSeries 服务器上运行 Java 程序,您必须对集成文件系统中的类文件具有权限。程序一旦启动,它就在该用户权限控制下运行。您可以使用沿用权限来访问具有运行程序的用户的权限和程序拥有者权限的对象。沿用权限临时地将用户原先无权访问的对象的权限授予用户。

并发性:JAVA支持多线程技术,就是多个线程并行机制,多线程是Java的一个重要方法,特别有利于在程序中实现并发任务.Java提供Thread线程类,实现了多线程的

并发机制.然而,程序的并发执行必定会出现多个线程互斥访问临界资源的局面,因而并发系统解决的关键就是对临界资源的管理和分配问题,而在进行临界资源分配时有两方面需要考虑,即安全性和公平性.文中首先讨论了多线程并发系统中的安全性与公平性

问题,指出安全性与公平性在并发系统中访问临界资源时的重要性.并通过火车行驶单

行隧道的实例,演示各种条件下的行驶情况来进一步说明该问题。

2.1.2 SSH中的三层架构简介

1. JavaEE中的三成结构主要包含如下层:表现层、服务层、数据持久化层三层

2.MVC的三层主要是视图层、表现层、模型层

a)表现层

表现层主要起展示作用。可采用当前比较成熟的Struts技术。其中主要包含:

b) 展示层

形式:JSP + Struts Taglib

作用:按用户需求展示数据给用户

c) 控制层

形式:ActionServlet + Action

作用:接收用户的请求,并委派给不同的业务逻辑处理;采用Command Pattern,可保证请求和处理的松耦合。

d) 服务层

形式:可采用JavaBean技术

作用:服务层主要是完成相应的业务逻辑处理。

实现:对上层提供接口,并包含接口的实现。

e) 数据持久化层

形式:可采用Hibernate技术

作用:数据持久化层主要是完成相关数据的提取、写入、修改、删除等操作。

实现:对上层提交接口,并包含接口的实现。

各层次的关系

表现层的控制—〉服务层—〉数据持久化层。

图2-1 三层架构结构图

2.2 MYSQL

MySQL是最受欢迎的开源SQL数据库管理系统,它由MySQL AB开发、发布和支持。

MySQL AB是一家基于MySQL开发人员的商业公司,它是一家使用了一种成功的商业模式来结合开源价值和方法论的第二代开源公司。MySQL是MySQL AB的注册商标。MySQL 是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置 (mass-deployed)的软件中去。

其主要特点如下:

1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性

2.支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统

3.为多种编程语言提供了API。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。

4.支持多线程,充分利用CPU资源

5.优化的SQL查询算法,有效地提高查询速度

6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名

7.提供TCP/IP、ODBC和JDBC等多种数据库连接途径

8.提供用于管理、检查、优化数据库操作的管理工具

9.可以处理拥有上千万条记录的大型数据库

第三章需求分析

在软件工程中,需求分析指的是在建立一个新的或改变一个现存的电脑系统时描写新系统的目的、范围、定义和功能时所要做的所有的工作。需求分析是软件工程中的一个关键过程。在这个过程中,系统分析员和软件工程师确定顾客的需要。只有在确定了这些需要后他们才能够分析和寻求新系统的解决方法。

本系统有三类用户,他们分别是学生、教师和管理员,其结构图如图3-1所示。

图3-1 网站用户结构图

学生的需求,通过浏览网页,下载课件以及教学资源,观看网络精品教程。

管理员的需求,在后台完成公告管理、学生和教师的资料管理、上传资源及题库管理。

教师的需求,教师通过浏览网页可以浏览网络精品课程及学习资源,同时完成考试管理和资源管理。

图3-2 用户操作的系统流程图

第四章系统分析

本系统主要功能是方便学生网上学习,方便学校教学和管理。网站所需要实现的功能包括以下几个模块:登入、学生、教师、管理员、网络精品课程、学习资源。

4.1系统功能划分

登入模块:

(1)用户登入:系统通过判断会员身份,登陆成功后根据类别的不同进入不同的模块。

管理员模块:

(1)新增用户:管理员根据学校的数据新增学生、教师;

(2)删除用户:管理员可以查看所有用户的名单,并可进行删除;

(3)修改用户信息:可以完成对学生和教师资料的修改和删除操作;

(4)资源管理:管理简答题题库及上传课件资源;

(5)信息管理:发布新闻公告和系统通知;

(6)浏览资源:浏览网络精品课程和学习资源。

教师模块:

(1)考试管理:完成添加试卷;

(2)资源管理:上传课件资源;

(3)浏览资源:浏览网络精品课程和学习资源。

学生模块:

(1)下载中心:可以下载课件和网络资源;

(2)浏览资源:浏览网络精品课程和学习资源。

4.2网站架构

网站开发将采用三层架构设计。三层共分为持久层、业务逻辑层以及用户表示层。数据访问层主要涉及对数据库的操作,主要包括插入、更新、删除与修改。将对数据库的访问封闭在数据访问层,有利用数据的安全以及提高执行效率,其它两层对数据的操作完全通过数据访问层进行。业务逻辑层介于数据层与表示层之间,连接数据层与表示层。逻辑层接收从表示层传来的参数,调用数据层进行对数据库的访问。表示层是直接显示给用户,由用户进行操作。可以用图4-1来更直观地表达三层架构。

用户表示层

业务逻辑层 持久层

图4-1 三层架构图

4.3系统功能模块设计

本网站所需要实现的功能包括以下几个模块:用户信息管理、教师信息管理、教学文件和教学资料管理及教学交流管理。网站模块的功能图如图4-2所示。

图4-2 网站模块设计图

第五章数据库设计

数据库,顾名思义,是存放数据的仓库。合理的设计数据库可以使程序运行效率大大提高。数据库的设计应该按照冗余度小、数据独立性高以及易扩展等原则,并可为各种用户所

共享。该网站所用到的数据库中包括User(用户表)、课程表(Course)、通知信息(News)

等9个实体构成。

5.1数据库需求分析

进行数据库设计首先必须准确了解与分析用户需求。用户的需求具体体现在用户所涉及

的各种信息的收集,处理。

需求分析就是描述系统的需求,通过定义系统中的关键类域来建立模型,分析的目的是

在开发者和提出需求的用户之间建立一种理解和沟通的机制,本系统的需求分析也应该是由

开发人员和用户或客户一起完成的。

5.2数据库概念结构设计

数据库需求分析是数据库结构设计的第一个阶段,是非常重要的一个阶段。这个阶段主

要是确定基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为以后进一

步设计打好基础。

对一个数据管理员来说,设计良好的数据库应使之开始于一个合理的逻辑设计。概念模

型是用户和数据库设计人员之间进行交流的工具

5.3 数据库表结构设计

数据库中共有9张表,分别为:User(用户表)、课程表(Course)、通知信息(News)

等详细信息如下。

1、User表,其结构如表5.1所示。保存用户的相关信息,是管理系统核心数据,所有其它的信息都是依附与这张表而存在的。以用户名作为主关键字,尽量减少数据的冗余,保证数据的一致性。

2、Teacher表,其结构如表5.2所示。保存教师的教师号,名字,课程和邮箱。以教师号作为主关键字,尽量减少数据的冗余,保证数据的一致性。

3、Student表,其结构如表5.3所示记录学生的姓名,学号,性别,班级,年级,邮箱。以学号作为主关键字,尽量减少数据的冗余,保证数据的一致性。

4、Message表,其结构如表5.4所示。保存系统通知消息。

5、News表,其结构如表5.5所示,主要用来保存新闻公告。

6、Notice表,其结构如表5.6所示,用来保存系统的最新动态,系统通知。

7、Score表,其结构如表5.7所示。

8、Sourcefile表,其结构如表5.8所示,用来存储上传文件信息。

9、Testpaper表,其结构如表5.9所示,用来存放教师发布的试卷。

相关文档