云文档网 - 专业文章范例文档资料分享平台

java 教学软件设计大学本科毕业论文

来源:网络收集 时间:2024-04-29 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xuecool-com或QQ:370150219 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

摘要

当代社会,计算机软件因其方便、快捷、实用性强、存储量大等专有特点,被应用到了许多行业和领域。在教学领域,软件发展势头尤其强劲,计算机软件凭借其独特的先进性和多功能性,为教学领域带来了巨大的发展。

现在市场上有许多与教学有关的软件。其中一些软件是使用浏览器/服务器模式和JavaEE架构的而开发的,如针对高校学生的教师点名软件、学生信息管理软件等,这些软件需要通过浏览器才能使用,大部分软件都需要网络支持。另外一些软件是应用软件,有的是针对教师的,如课件生成软件等,有的是针对学生的,如java自学软件等。这些软件虽然能够实现相应的功能,但也有一些弊端,如需要网络支持、不能向软件添加数据,只针对教师或只针对学生等。

为了适应市场,针对java课堂教学,java教学软件应该保证针对教师、学生等不同的角色具有不同的功能和不同的权限,还应该保证软件对数据具有读写功能,和对所有异常具有相应的处理部分。

关键字:市场、教学软件

Abstract

In contemporary society , computer softwares have been applied to many industries and fields because of it’s convenient, practical, storage capacity and other proprietary features. In the field of teaching , software development momentum was particularly strong , with its unique computer software advancement and versatility , brought tremendous development for the teaching field .There are many teaching-related software on the market right now. Some of the software is to use the browser / server mode and JavaEE architecture and development, such as naming software , student information management software for college students and other teachers , the software needed to use the browser , most software requires network support. Other software applications , some for teachers , such as courseware generation software, for some students , such as self- java software . Although the software can achieve the corresponding functions , but there are some drawbacks, such as the need for network support, can not add data to the software , only for teachers or just for students.In order to adapt to the market , for classroom teaching java , java teaching software should be guaranteed to have different functions and different permissions different roles of teachers and students for , you should also ensure that software for data read and write capabilities, and for all exceptions with appropriate treatment section.

Keywords:Market,Teaching software

目录

1 引言............................................................................................................................ 1

1.1课题研究背景及意义...................................................................................... 1

1.1.1 背景和意义.......................................................................................... 1 1.1.2 java教学软件的现状 ........................................................................... 1

2 开发技术介绍............................................................................................................ 2

2.1Java ................................................................................................................... 2 2.2Eclipse介绍 ...................................................................................................... 2 2.3MySQL介绍 .................................................................................................... 3 3 系统设计.................................................................................................................... 4

3.1功能需求概述.................................................................................................. 4 3.2系统功能模块划分.......................................................................................... 4

3.2.1总体设计............................................................................................... 4 3.2.2模块具体功能....................................................................................... 5 3.3数据库设计...................................................................................................... 5

3.3.1E/R图 .................................................................................................... 5 3.3.2关系模式............................................................................................... 6 3.3.2数据库模式........................................................................................... 7 3.4类的设计........................................................................................................ 10

3.4.1类的分类............................................................................................. 10 3.4.2各类介绍............................................................................................. 11

4 系统的实现.............................................................................................................. 14

4.1用户界面的设计与实现................................................................................ 14

4.1.1用户体验设计原则............................................................................. 14 4.1.2用户界面详细设计............................................................................. 14

4.1.2.1主窗体设计.............................................................................. 14 4.1.2.2输入密码登录页面.................................................................. 15 4.1.2.3教师主页面.............................................................................. 16 4.1.2.4学生主界面.............................................................................. 17 4.1.2.5管理员主界面.......................................................................... 15

5 结束语.................................................................................................................... 18 6 致谢........................................................................................................................ 19 7 参考文献................................................................................................................ 20

1 引言

1.1课题研究背景及意义

1.1.1 背景和意义

随着世界经济和中国经济的不断发展,各种计算机编程语言的不断革新和进步,计算机技术和网络技术已经变得十分成熟,并成功渗透入各个行业领域。其中,Java语言具有简单、面向对象、与平台无关、动态、多线程等众多特点,功能强大、简单易学。已经成为目前使用最广泛的网络编程语言之一,并被各行各业的人士所接受。

为了改变现有课堂教学单一的教学模式,帮助学生在课下时间也有机会和兴趣学习知识,及时复习课堂内容,提高学生们的专业知识水平,教学用软件得到了广泛的推广和应用,为学校管理学生学习和帮助学生提高专业素质提供了很大的帮助。而教师们想要激发学生学习的热情,提高学生对所学知识的好奇心,促使学生对其有更加深入的理解,就必须让学生们在课下也能多利用时间学习,多做课下练习,所以没有教学软件是万万不行的。

java教学软件不仅为老师提供了可以简化教学内容、系统的整理教学知识的工具,还为学生们带来了一种新型的学习方式,使学生们可以从厚重的纸质教材中脱离出来,随时随地就可以通过电脑获得大容量的java语言知识和练习题。而且java教学软件相较于传统的多媒体课件具有更强的导向性,教师和学生们在使用软件的过程中,根据软件的流程,可以更加直观和清楚得了解内容的系统性和相互关系。今后,java教学软件通过不断地完善,一定会在java教学中带给大家更多的便利。

1.1.2 java教学软件的现状

目前虽然网络上的教学的软件数量很多,但针对java教学的软件比较少,在这样写已存在的java教学软件中,许多软件中的教学内容是固定的,不可修改,不可添加,另外一些软件只面向于教师,没有学生板块。整体来说,这些软件在功能上或多或少都存在一些瑕疵,都不太适合在学校教师和学生教学的过程中使用。不同的学习人群有不同的学习要求,就需要有不同的软件做支撑,只有既满足教师又满足学生要求的教学软件才能真正被学校利用,才能被投入到教学过程中去。

2 开发技术介绍

2.1Java

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaEE, JavaME, JavaSE)的总称。Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。

Java由四方面组成:Java编程语言,Java文件格式,Java虚拟机(JVM)和Java应用程序接口(Java API)。Java分三个体系:JavaSE(J2SE)(Java2 Platform Standard Edition,java平台标准版),JavaEE(J2EE)(Java 2 Platform,Enterprise Edition,java平台企业版),JavaME(J2ME)(Java 2 Platform Micro Edition,java平台微型版)。

与传统程序不同,Sun 公司在推出 Java 之际就将其作为一种开放的技术,Java编程语言的风格十分接近C++语言。继承了C++语言面向对象技术的核心,Java舍弃了C++语言中容易引起错误的指針,改以引用取代,同时移除原C++与原来运算符重载,也移除多重继承特性,改用接口取代,增加垃圾回收器功能。Java不同于一般的编译语言和直译语言。它首先将源代码编译成字节码,然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编写,到处运行”的跨平台特性。

2.2Eclipse介绍

本软件选择Eclipse3.7作为软件的开发环境。Eclipse是著名的跨平台的自由集成开发环境(IDE),而且是一个开放源代码的、基于Java的可扩展开发平台。最初主要用来Java语言开发,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性,许多软件开发商以Eclipse为框架开发自己的IDE!就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。另外,Eclipse支持诸如C/C++、COBOL、PHP等编程语言的插件已经可用,或预计将会推出。

Eclipse 最初由OTI和IBM两 家公司的IDE产品开发组创建,起始于1999年4月。IBM提供了最初的Eclipse代码基础,包括Platform、JDT 和PDE。Eclipse项目IBM发起,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到 Eclipse项目中,其中包括Borland、Rational Software、Red Hat及Sybase等。 Eclipse是一个开放源码项目,它其实是Visual

Age for Java的替代品,其界面跟先前的Visual Age for Java差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。随后还有包括Oracle在内的许多 大公司也纷纷加入了该项目,Eclipse的目标是成为可进行任何语言开发的IDE集成者,使用者只需下载各种语言的插件即可。

2.3MySQL介绍

系统选用了小巧简便但功能完善的MySQL数据库用来存储数据信息。Mysql是最流行的关系型数据库管理系统,是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。

与其他的大型数据库例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。

MySQL遵守的不只是GPL协议,而是双授权模式(dual license)[8]即你在遵守GPL协议的开源项目使用MySQL,需要遵守GPL协议方能使用。如果你在非开源项目使用(即软件不打算开放源代码),且该软件用来销售,则需要向MySQL支付相应license费用。

3 系统设计

3.1功能需求概述

本软件作为java课堂教学和课下学习的辅助软件,主要完成java知识点的录入和查看功能。具体来讲,软件需要完成:不同角色的人员登录时对登录密码的验证,只有输入正确的密码,才能进入相应主页面;不同角色的人员登录的主界面有不同的功能,学生只能查看软件内容中的章节、知识点、例题和习题内容,而不能添加,而教师既可以查看这些内容又可以根据需要进行添加;登录密码的管理问题,管理员在通过验证后可以查看学生和教师的登录密码,还可以更改学生、教师和管理员的登录密码。出这些主要功能之外,软件应保证不同角色的人员只能进入相应的主页面,而且在不同角色人员的主页面需要有与角色相对应的合适的简介内容和界面设计。

3.2系统功能模块划分

3.2.1总体设计 学 生 主 界 面 首 页 JAVA教学软件 登录 学生 管理员 退出 教师 查看章、 知识点、 例题、 习题 相关网站地址 管理员主界面首页 查看密码 修改密码 查看章、 知识点、 例题、 习题 相关网站地址 图3-1 软件功能模块划分图

3.2.2模块具体功能

下面详细分析每个子模块的功能 A)学生界面主页

简介介绍了软件基本信息以及对学生界面的功能描述。 B)学生查看章、知识点、例题和习题

界面左侧有章节、知识点、例题和习题的目录,是要双击知识点就可以在右侧显示知识点具体内容。 C)教师界面主页

简介介绍了软件基本信息以及对教师界面的功能描述。 D)教师添加章、知识点、例题、习题

界面内有添加章和知识点、添加例题、添加习题三个标签,用来添加章名,知识点名、知识点内容,例题要求、例题代码、执行结果、例题分析,习题题干、参考答案、要点解析,并且添加的内容加入数据库、写到相应文件中。 E)教师查看章、知识点、例题、习题

界面左侧有章节和知识点目录,是要双击知识点就可以在右侧显示知识点。 F)管理员界面主页

简介介绍了软件基本信息以及对管理员界面的功能描述。 G)管理员查看密码

输入管理员密码,通过验证后可以显示学生和教师的登录密码。 H)管理员修改密码

输入管理员密码,通过验证后可以修改学生、教师或者管理员的登录密码。 I)相关网站地址

界面内介绍了一些与java学习相关的网站地址

3.3数据库设计

3.3.1E/R图 角色 编号 链接 人员 验证密码 1 1 显示简介 编号 密码 1 1 编号 简介 所属角色 密码 图3-2(a) E/R图

编号 链接内容 简介 所属角色 编号 章节名称 知识点所在文件地址 知识点名称 章节 1 添加知识点 n 编号 知识点 1 1 所属章节编号 添加习题 添加例题 编号 n n 编号 习题 例题 所属知识点编 所属知识点编 例题所在文件地址 习题所在文件地址 图3-2(b) E/R图

3.3.2关系模式

通过将E-R图转换成表,实现从E-R模型到关系模型的转换,转换结果如下,其中人员、密码、简介、链接、章节、知识点、例题、习题中的主键为编号,密码、简介中的所属角色是关联于人员编码的外键,知识点中的所属章节编号是关联于章节编号的外键,例题、习题中的所属知识点编号是关联于知识点编号的外键。

人员(编号,角色);

密码(编号,密码,所属角色); 简介(编号,简介内容,所属角色); 链接(编号,链接内容); 章节(编号,章节名称);

知识点(编号,知识点名称,知识点所在文件地址,所属章节编号); 例题(编号,例题所在文件地址,所属知识点编号); 习题(编号,习题所在文件地址,所属知识点编号);

3.3.2数据库模式

由关系模式设计数据库中的表包括人员表People(其表结构如表3-1),密码表Password(其表结构如表3-2),简介表BriefIntroduction(其表结构如表3-3),链接表Link(其表结构如表3-4),章节表Chapter(其表结构如表3-5),知识点表KnowledgePoint(其表结构如表3-6),例题表Example(其表结构如表3-7),习题表Exercise(其表结构如表3-8)。

表3-1 People人员表

序号 1 2

表3-2 Password密码表

序号 1 2 3

表3-3 BriefIntroduction简介表

序号 1 2 3 字段名称 ID Detail BelongsTo 字段说明 简介编号 简介内容 所属角色 字段类型 int text varchar 宽度 3 10 允 许 空 否 否 否 是 否 主 键 是 备注 自动增长 外键,参照people表的Role 字段名称 ID Word BelongsTo 字段说明 密码编号 密码内容 所属角色 字段类型 int varchar varchar 宽度 3 10 10 允 许 空 否 否 否 是 否 主 键 是 备注 自动增长 只能由字母和数字组成 外键,参照people表的Role 字段名称 ID Role 字段说明 人员编号 人员角色 字段类型 int varchar 宽度 3 10 允 许 空 否 否 是 否 主 键 是 备注 自动增长

表3-4 Link 链接内容表

序号 1 2

表3-5 Chapter章节表

序号 1 2

表3-6 KnowledgePoint知识点表

序号 1 2 3 4 字段名称 ID Name FilePath ChapterID 字段说明 字段类型 宽度 允 许 空 是 否 主 键 是 备注 自动增长 外键,参照chapter表中的ID 字段名称 ID Name 字段说明 章节编号 章节名称 字段类型 int varchar 宽度 3 30 允 许 空 否 否 是 否 主 键 是 备注 自动增长 字段名称 ID Detail 字段说明 链接编号 链接内容 字段类型 int text 宽度 3 允 许 空 否 否 是 否 主 键 是 备注 自动增长 知识点编号 int 3 否 知识点名称 varchar 30 否 知识点所在Varchar 30 否 文件地址 知识点所属Int 3 否 章节ID

表3-7 Example例题表

允 许 空 否 否 否 序号 1 2 3 字段名称 ID FilePath 字段说明 字段类型 宽度 3 30 3 是 否 备注 主 键 是 自动增长 外键,参照knowledgepoint表中的ID 例题编号 int 立体所在文Varchar 件路径 例题所属知KnowledgeID int 识点ID

表3-8 Exercise习题表

序号 1 2 3 字段名称 ID FilePath 字段说明 字段类型 宽度 3 30 3 允 许 空 否 否 否 是 否 主 键 是 备注 自动增长 外键,参照knowledgepoint表中的ID 习题编号 int 习题所在文Varchar 件路径 习题所属知KnowledgeID Int 识点ID 建立关系模型的SQL语句:

1. People表:记录软件不同的登录角色

create table password (

ID int(3) not null auto_increment primary key, Role varchar(10) not null );

2. Password表:记录不同角色的登录密码

create table password (

ID int(3) not null auto_increment primary key, Word varchar(10) not null,

BelongsTo varchar(10) not null,

foreign key(BelongsTo) references people(Role) );

3. BriefIntroduction表:记录不同角色主页面的简介内容

create table briefintroduction(

ID int(3) not null auto_increment primary key , Detail text not null,

BelongsTo varchar(10) not null,

foreign key(BelongsTo) references people(Role) );

4. Link表:记录软件中的友情链接内容

create table link(

ID int(3) not null auto_increment primary key , Detail text not null );

5. Chapter表:记录章节内容

create table chapter (

ID int(3) not null auto_increment primary key , Name varchar(40) not null );

6. KnowledgePoint表:记录知识点内容

create table knowledgepoint (

ID int(3) not null auto_increment primary key , Name varchar(40) not null, FileName varchar(30) not null, ChapterID int(3) not null,

foreign key(ChapterID) references chapter(ID) );

7. Example表:记录例题内容

create table example (

ID int(3) not null auto_increment primary key , FileName varchar(30) not null, KnowledgeID int(3) not null,

foreign key(KnowledgeID) references knowledgepoint(ID) );

8. Exercise表:记录习题内容

create table exercise (

ID int(3) not null auto_increment primary key , FileName varchar(30) not null, KnowledgeID int(3) not null

Foreign key(KnowledgeID) references knowledgepoint(ID) );

3.4类的设计

3.4.1类的分类

本软件是由19个类组成的,总体分为五大类:

窗口类:Menu,Login,StudentMain,TeacherMain,AdminMain 内容类:Chapter,Point,Example,Exercise

监听类:WhenPressButton,WhenPressBox,WhenSelectTree,WhenSelectTreeT 数据库和文件类:DataBaseConn,FileUtil 其他:Main,StartMySql,Request

3.4.2各类介绍

各个类的简单介绍如下:

类名 Main FrameUtil 表3-9 类的简介表 类作用说明 软件启动的入口 类中写入了DataBaseConn、Menu、Login、StudentMain、TeacherMain、AdminMain和Runtime的get 和 set 方法 StartMySql 启动mysql数据库 DataBaseConn 连接数据库并响应软件中所有有关数据库的请求 Request 记录软件中所有的请求 Menu 设计选择登录身份的窗口 Login 继承JFrame,设计输入并验证登录密码的窗口 StudentMain 继承JFrame,设计学生主界面 TeacherMain 继承JFrame,设计教师主界面 AdminMain 继承JFrame,设计管理员主界面 Chapter 处理各种涉及章节内容的操作 Point 处理各种涉及知识点内容的操作 Example 处理各种涉及例题内容的操作 Exercise 处理各种涉及习题内容的操作 FileUtil 处理涉及文件新建和写入内容、读取内容等操作 WhenPressButton 处理软件中各种点击按钮的情况 WhenPressBox 处理软件中各种点击下拉菜单的情况 WhenSelectTree 处理学生界面点击内容树的节点的情况 WhenSelectTree 处理教师界面点击内容树的节点的情况 每个类中又包含很多方法,以下是一些比较重要的方法的介绍:

表3-10 Main类主要方法表 类名 方法名 方法作用说明 Main public static 是整个软件开始执行的入口。执行了StartMySql类中的启动数据库的方法,新建了FrameUtil、DataBaseConn、Menu、Login、void StudentMain、TeacherMain和AdminMain类,并且对除main(String FrameUtil外的其他类进行了实例化和初始化。 args[]) 表3-11 FrameUtil类主要方法表 类名 方法名 方法作用说明 FrameUtil public DataBaseConn 获取DataBaseConn(Menu、Login、StudentMain、TeacherMain、AdminMain、getDbCFrame() 等 Runtime)类的实例。 以DataBaseConn(Menu、Login、StudentMain、FrameUtil public void setDbCFrame(DataBasTeacherMain、AdminMain、Runtime)的实例eConn dbCFrame)等 为参数进行赋值。

类名 StartMySql 表3-12 StartMySql类主要方法表 方法名 方法作用说明 方法中写入了执行mysql启动的语public static void 句。 startMySql(FrameUtil util) 表3-13 Menu类主要方法表 方法名 方法作用说明 public void init() Menu界面的初始化,添加了标签、按钮,设置了背景图片 类名 Menu 类名 Login 表3-14 Login类主要方法表 方法名 方法作用说明 public void init() Login界面的初始化,添加了标签、文本框、按钮,设置了背景图片 类名 TeacherMain TeacherMain 类名 StudentMain StudentMain 类名 AdminMain AdminMain 表3-15 TeacherMain类主要方法表 方法名 方法作用说明 public void init() 教师主界面的初始化。 将从数据库中查询到的内容加入到“内容目public void buildtree(Vector chapter) 表3-16 StudentMain类主要方法表 方法名 方法作用说明 public void init() 学生主界面的初始化。 将从数据库中查询到的章节加入到“内容目public void buildtree(Vector chapter) 表3-17 Admin类主要方法表 方法名 方法作用说明 public void init() 管理员主界面的初始化。 将从数据库中查询到的某角色的密码添加更public void showPassword(String 新到“查看密码”标签的相应位置。 str,String job) 表3-18 WhenPressButton类主要方法表 方法名 方法作用说明 在软件运行过程中监听,如果用户点击按钮,public void actionPerformed(Act则根据按钮不同作出相应的处理。 ionEvent arg0) 类名 WhenPressButton

百度搜索“yundocx”或“云文档网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,云文档网,提供经典成教大学java 教学软件设计大学本科毕业论文在线全文阅读。

java 教学软件设计大学本科毕业论文.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.yundocx.com/wenku/204633.html(转载请注明文章来源)
Copyright © 2018-2022 云文档网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:370150219 邮箱:370150219@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:7 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219