Java学生成绩管理系统设计

上传人:仙*** 文档编号:82172646 上传时间:2022-04-28 格式:DOC 页数:23 大小:621KB
收藏 版权申诉 举报 下载
Java学生成绩管理系统设计_第1页
第1页 / 共23页
Java学生成绩管理系统设计_第2页
第2页 / 共23页
Java学生成绩管理系统设计_第3页
第3页 / 共23页
资源描述:

《Java学生成绩管理系统设计》由会员分享,可在线阅读,更多相关《Java学生成绩管理系统设计(23页珍藏版)》请在装配图网上搜索。

1、宁夏大学数学计算机学院Java语言课程设计报告专 业 计算机科学与技术 班 级(5)班 学 号 姓 名 课 题 学生成绩管理系统指导教师 报告成绩_ 前 言Java 语言课程设计为我们提供了一个既动手又动脑,分组配合实践的机会,将课本上的理论知识和上机实践操作有机地结合起来,锻炼大家的发现、分析、探索、解决实际问题的能力。提高了我们适应实际,实践编程的能力。作为我们学生来讲,应该好好把握这次宝贵的机会,通过分组上机配合,上机实践操作加深对Java程序设计使用教程的课本理论知识的理解和认识,在相互默契配合的同时,学会独立思考解决实践过程中遇到的方方面面的问题并虚心向老师和同学请教自己的困惑点,最

2、终顺利完成设计目的与要求,使自己得到较好的锻炼。熟练掌握Java语言的基本知识:数据类型:基本数据类型(整型(Integer),浮点型(Floating),字符型(Textual),布尔型(Logical)引用数据类型(数组,类(class)和接口(interface);运算类型(算术运算、逻辑运算、关系运算、赋值运算等);对象和类的基本概念、声明类和创建对象以及使用对象的基本方法;继承的概念和实现继承的方法;多态的概念和多态的使用方法;接口的概念、定义接口以及在类中实现接口的方法。图形界面的输入输出等。在这次的面向对象程序设计课程设计中,我选的是学生成绩管理系统,本文叙述到的学生成绩管理系统

3、是用 Java 编程+ACCESS 数据库+SQL 查询语言实现的。重点介绍了学生成绩管理系统的实现过程: 包括系统分析、 系统调查、功能设计、数据库设计、系统实现、系统测试和调试等。 本系统主要功能有:1)对学生基础数据的维护功能(添加、删除、修改)2)对课程基础数据的维护功能(添加、删除、修改)3)对学生成绩数据的维护功能(添加、删除、修改)4)对成绩的查询功能(按学号、姓名、或课程名查询成绩,排序等 )5)对成绩的统计功能(最高分,最低分,平均分,及格率等)采用图形用户界面实现,使用JDBC连接数据库。运用Java语言所学的知识来完成它的编程设计。让我在实践中对Java语言有了进一步的理

4、解和认识,学会了如何使用Java语言解决一些基本简单的问题。目 录一、引言31.课程设计目标31.1.1 设计目标31.1.2 国内外研究的现状31.1.3课程设计创新点3二、所用的工具介绍42.1 Java语言简介42.2 Eclipse 简介42.3 Eclipse的安装与使用52.3.1 Eclipse安装52.3.2 Eclipse 的使用创建Java应用程序72.4 数据库82.4.1 Access 数据库简介82.4.2 数据库的建立与连接9三、题目分析和设计103.1开发环境103.2 功能构思103.3 程序流程113.4功能框架如下:123.5 功能的设计:133.6详细设计

5、:13四、功能实现14五、设计总结185.1遇到的问题及解决办法195.1.1 遇到的问题195.1.2 问题解决办法195.2设计中的不足之处205.3 心得体会20参考文献22学生成绩管理系统一、 引言1. 课程设计目标1.1.1 设计目标通过本次课程设计,实现对上学年Java程序设计使用教程内容的回顾与综合运用,包括类的建立,用类创建对象,方法的调用,图形组件的使用方法,图形界面的布局形式,事件处理机制,文件对话框的使用,文件操作的基本方法,数据读写的基本用法等。进一步掌握和利用Java语言进行程设计的能力; 进一步理解和运用面向对象设计的思想和方法。 初步掌握开发一个小型实用系统的基本

6、方法; 学会调试一个较长程序的基本方法; 学会利用流程图或N-S图表示算法; 掌握书写程设计开发文档的能力(书写课程设计报告)。巩固以前所学的知识,对Java的开发环境有更进一步的认识,并掌握和运用jdk + Eclipse开发环境运行Java程序,通过本课程设计各个项目的综合训练,培养我们实际分析问题、编程和动手能力,提高我们的综合素质。了解我们所需的数据不仅可以存储在计算机内存中,还可以存储在数据库中。学会如何建立数据库,并将数据存储到数据库中,以及Java连接数据库,并从中读取我们所需的信息。通过Java与数据库的连接,对数据库中的数据进行修改,添加,删除,查询等操作。1.1.2 国内外

7、研究的现状21世纪的社会可谓日新月异,科学技术突飞猛进,经济知识和信息产业初见端倪,特别是信息技术和网络技术的讯速发展和广泛应用,对社会的政治、经济、军事、文化等领域 产生越来越深刻的影响。学校也不例外地快速发展着,而且要求也在不断变化。学生的数量每年都在增加,学生资料的更换和更新也越来越频繁。学生做为学校的最主要的管理对象,而学生成绩又是考核和评价学生学习情况的主要手段和方法。因此学生成绩管理就成了一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要。原来手工的成绩管理模式就不是很合适了。而且手工的数据是存放在多处的,没有使用统一管理的模式,数据整理非常麻烦,统计也困难

8、,很多情况下,老师都是在重复一些相同的工作,做一些相似的报表,这样不但降低了工作效率,而且非常容易出错。一直以来人们使用的传统人工的方式进行学生成绩的管理,这种管理方式存在着许多缺点,如:效率低,容易出错,格式不规范。另外时间一长,不容易进行统计和分析。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生成绩进行管理,具有手工管理所无法比拟的优点。例如:检索迅速、 查找方便、可靠性高、存储量大、寿命长、成本低等。这些优点能够极大地提高学校学生成绩管理的效率。因此,开发这样一套管理软

9、件是很有必要的。1.1.3课程设计创新点本成绩管理系统除了实现记录学生的各科成绩,以及实现常用的统计功能。在其中还实现图形方式显示数据,采用直方图显示数据。使用图形方式显示某些数据,直方图显示各分数段的人数、绘制各科分数分布曲线;可以让我们更直观地看到各科在个分数段的人数。二、 所用的工具介绍2.1 Java语言简介Java语言的发展 Java语言发展到目前为止,有8个主要的版本:目前JAVA的最新版本为1.7正式版,Oracle官方称为Java 7。目前通用版本为1.5与1.6。Java语言的特点(1)移植性好 Java语言就是一种与平台无关、移植性好的编程语言,在源程序级就保证了其基本数据

10、类型与平台无关。(2)纯面向对象技术 Java是一种完全面向对象的程序设计语言(Oriented Obiect Programming,OOP)。Java语言代码以类的形式组成。(3)分布式 Java语言中提供了一个支持HTTP和FTP等基于TCP/IP协议的类库,通过这些类库,Java应用程序可以通过URL打开并访问网络上的对象。(4)安全性 分布式计算环境要求软件具有高度的稳定性和安全性。(5)编译和解释的结合性Java是一种编译和解释相结合的语言。一个Java语言源程序要运行,必须先由Java编译器编译成字节码(ByteCode),即文件扩展名为.class。这个字节码文件不是最终的执行

11、程序,不能在具体平台上运行,而必须再由运行系统上的字节解释器将其翻译成机器语言,达到边翻译边执行程序的目的。 Java语言的用途 Java语言由于具有与平台无关的特点及完备的面向对象特性,因此越来越受到开发人员的喜爱和认可,也决定了Java语言的特殊用途。Java程序简介 Java源程序是由类定义组成的,因此在源程序中只能以类定义的形式来进行编程。一个Java源程序中可以包含一个类定义,也可以包含多个类定义。Java源程序是以.java为后缀名保存的。当Java源代码被编译后,每个类分别保存在以.class为后缀名的输出文件中。 Java程序的开发环境Java语言有两种开发环境:一种是命令行方

12、式的J2SDK(Java 2 Software DevelopmentKit),其前身是JDK(Java Developers Kits);另一种是集成开发环境,如JBuilder,JPad,WorkShop等。两种开发环境都提供Java程序编译,运行、调试、存档等基本功能,不同的开放环境在使用的方便性上相差很大。2.2 Eclipse 简介Eclipse是一个开放的、基于Java的可扩展的通用的开发平台。同时它还可以作为其它语言的开发环境(例如C+和Ruby)并且作为开发桌面或服务器应用程序的富客户端开发平台。Eclipse的设计思想是:一切皆为插件。Eclipse的核心非常小,其他功能都以

13、插件形式附加到这个核心之上。这些功能插件包括它的图形API(称为SET/JFace)、Javav开发环境插件(Java Development Tools,JDK)、插件开发环境(Plug-in Development Environment,PDE)等。Eclipse对这些插件的协同工作提供了良好的支持,不仅安装简单,而且可以无缝结合。Eclipse平台运行库是内核,它在启动时检查已安装了哪些插件,并创建关于它们的注册表信息。为降低启动时间和资源使用,它在实际需要任何插件时才加载该插件。除了内核外,其他每样东西都是作为插件来实现的。工作区是负责管理用户资源的插件。这包括用户创建的项目、那些项

14、目中的文件,以及文件变更和其他资源。工作区还负责通知其他插件关于资源变更的信息,比如文件创建、删除或更改。2.3 Eclipse的安装与使用2.3.1 Eclipse安装首先安装JDK,从Eclipse官方网站上http:/www. Eclipse.org/下载Eclipse安装包。Eclipse安装前保证配置好Java环境(JDK开放环境)参照JDK安装与配置手册。安装Eclipse时直接将Eclipse-jee-ganymede-SR2-win32.zip文件解压到某一目录下(如C: Eclipse,我们将该目录称为Eclipse的安装目录)即可(图2-1);图2-1通过Eclipse安装

15、目录下的Eclipse.exe文件启动Eclipse,会弹出一个对话框,让你选择workspace(工作目录,你的源文件所在目录,一个workspace下是一个完整的配置环境,在其中可以有多个Project)。(图2-2)图2-2请选择自己的工作目录(我选的是C:Java),点击“OK”进入Eclipse开放环境的welcome界面。(图2-3)图2-3点击welcome界面中的workbengch图标或者关掉welcome界面,即可进入Eclipse的开发环境界面。2.3.2 Eclipse 的使用创建Java应用程序在Eclipse中,程序必须通过项目(project)来组织,由于我们目前

16、所学的是JavaSE基础,开发的程序也都是基本的Java应用程序,所以为了适应需求,我们要创建一个Javaproject。步骤如下:步骤1:将Eclipse工作环境的视图改为Java视图:点击工作环境右上角的“视图选择”图标,选择Java。此时工作环境切换到Java视图模式。步骤2:创建一个Javaproject项目:点击FileNewJava Project,进入项目创建导航页面。在project name中输入项目名称,比如:OneProject,其他位置不用修改,直接点击“Next”进入Java编译设置页面。上面的页面不用做任何配置(如有需要,以后可以在创建好的项目中修改),当前设置中的

17、源文件存放在OneProject/src下,class文件存放在OneProject/bin下,直接点击“Finish”,此时在工作空间的Package Exploer窗口中新建了一个名为OneProject的项目。项目创建好后,就可以开放Java应用程序了。创建Java应用程序步骤1:创建Java源文件右键点击“OneProject”项目,依次选择NewClass,系统就显示类生成页面。(3-1)图3-1在name中输入要创建的源文件的名称,如HelloWord,其他设置可以先不考虑,直接点击“Finish”完成,此时系统显示工作空间页面,并且在OneProject项目下的src目录下新建一

18、个HelloWord.Java文件。步骤2:编写Java代码在的编辑空间中输入相关代码编译Java源文件如果我们在Project中选择Build Automatically(自动编译)(图3-2)图3-2此时我们写完代码,点击“保存”或者“Ctrl+s”时,Eclipse会自动出现一个“”图标。此时我们写完代码,需要手动点击,Eclipse才会对Java源文件进行编译。为了方便,我们一般会选择Build Automatically。如果编译出错,在代码编辑去会产生错误提示。2.4 数据库2.4.1 Access 数据库简介Microsoft Access 是微软公司推出的基于Windows的桌

19、面关系数据库管理系统(RDBMS),是Office系列应用软件之一。Access 2000数据库提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。 Microsoft Access是一种关系式数据库,关系式数据库由一系列表组成,表又由一系列行和列组成,每一行是一个记录,每一列是一个字段,每个字段有一个字段名,字段名在一个表中不能重复。比如、一个“学生”表的例子。“学生”表由8个记录组成,一个

20、记录占一行,每一个记录由学号、姓名、性别、年龄、联系方式、班长和系号8个字段组成。“学号”是字段名,其下面的02010101,02010102等是字段的值。表与表之间可以建立关系(或称关联,连接),以便查询相关联的信息。Access数据库以文件形式保存,文件的扩展名是MDB。表(Table) 表是数据库的基本对象,是创建其他6种对象的基础。表由记录组成,记录由字段组成,表用来存贮数据库的数据,故又称数据表。查询(Query)查询可以按索引快速查找到需要的记录,按要求筛选记录并能连接若干个表的字段组成新表。窗体(Form)窗体提供了一种方便的浏览、输入及更改数据的窗口。还可以创建子窗体显示相关联

21、的表的内容。窗体也称表单。报表(Report)报表的功能是将数据库中的数据分类汇总,然后打印出来,以便分析。页(Page) 也叫数据访问页。是连接到数据库的 Web 页,在数据访问页中,可以查看、添加、编辑和操作存储在数据库中的数据。数据访问页还可以包括其他来源的数据,例如 Microsoft Excel。宏(Macro)宏相当于DOS中的批处理,用来自动执行一系列操作。Access列出了一些常用的操作供用户选择,使用起来十分方便。模块(Module)模块的功能与宏类似,但它定义的操作比宏更精细和复杂,用户可以根据自己的需要编写程序。模块使用Visual Basic编程。2.4.2 数据库的建

22、立与连接(1)创建数据库a.使用“数据库向导”创建数据库b.使用模板创建数据库。c.不使用“数据库向导”创建空数据库1.单击工具栏上的“新建” 。2.在“新建文件”任务窗格中的“新建”下,单击“空数据库”。3.在“文件新建数据库”对话框中,指定数据库的名称和位置,然后单击“创建”。 然后将出现“数据库”窗口 (数据库窗口:在 Access 2003 和早期版本中,在打开数据库或项目时出现的窗口。它显示用于创建新的数据库对象和打开现有对象的快捷方式。在更高版本中,数据库窗口由导航窗格所取代。),现在便可以在数据库中创建所需的对象 (数据库对象:Access 数据库包含诸如表、查询、窗体、报表、页

23、、宏和模块等对象。Access 项目包含诸如窗体、报表、页、宏和模块等对象。)。(2) Access 数据库中创建表a.通过使用表向导创建表b.通过在数据表中输入数据创建表1.创建一个新的空白数据库。2.在数据库窗口中单击 对象,下的表,然后单击 新建。3.双击新建表对话框中的数据表视图。显示了默认列名称 Field1、Field2,等空白数据表。4.重命名要使用的每一列。这样做双击列名称为列键入一个名称,然后按 ENTER 键。在任何时候,可以插入其他列。在要插入一个新列的位置右侧的列中单击,然后在插入菜单上单击列。如上文所述,重命名列。5.在数据表中输入数据。输入在其自己的列中的每种类型的

24、数据。例如对于如果输入的名称也应在其自己的列和姓氏在单独的列中输入第一个名称。如果输入的日期、时间,或编号,请以一致的格式输入它们。如果以一致的方式输入数据,Microsoft Access 可以创建一个相应的数据类型,并显示为列的格式。例如对于某一列中,输入仅名称,Access 会将分配文本数据类型,Access 会将数字数据类型分配给输入数字的列。当保存数据表时,将保留为空的所有列将被都删除。6.当已经添加数据到使用的表中,在文件菜单上单击保存所有列。7.Microsoft Access 会询问是否要创建一个主键。如果还没有输入数据可以被用来唯一地标识一个实体,如学生学号或一个 ID 号的

25、表中的每一行,建议单击是。输入能唯一标识每一行的数据如果单击否,然后指定在保存表之后,在设计视图中的主键包含该数据字段。若要在保存表之后定义为主键的字段,请按照下列步骤操作: a.打开的 Access 根据设计视图中的数据表中输入的数据创建表。b.选择一个或多个要定义为主键的字段。若要选择一个字段单击行选择器所需字段。a. 若要选择多个字段按住 CTRL 键,然后单击行选择器为每个字段。b. 单击编辑菜单上的主键。若在多字段主键中字段的顺序不同于这些字段在表中的顺序,单击显示索引窗口工具上的索引,然后重新排列字段名称在针对名为 primarykey 的索引。如前面提到 Microsoft Ac

26、cess 会将数据类型分配给基于输入的数据类型的每个字段 (列)。如果希望字段的进一步自定义定义-例如,若要更改的自动分配访问,数据类型或定义有效性规则则在设计视图中打开表。c.在设计视图中创建表(2)数据库的连接JDBC(Java Database Connectivity)提供连接各种关系数据库的统一接口,作为数据源,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯Java API 编写数据库应用程序,同时,JDBC也是个商标名。控制面板管理工具数据源(

27、ODBC)添加(选择数据库的类型,和程序中连接数据库的类型一致)选择所建数据库的保存目录完成。三、题目分析和设计3.1开发环境: jdk1.60 + Eclipse3.23.2 功能构思学生成绩管理系统:用于记录学生的各科成绩,以及实现常用的统计功能。在其中还实现图形方式显示数据,采用直方图显示数据。【功能】(1) 记录学生的基本信息,如姓名、学号、专业、班级等;(2) 记录各科成绩:网络工程、操作系统、编译原理、软件工程和专业英语等;(3) 实现常用的统计功能,如:单科成绩排名、总分排名、统计成绩高于/低于某一临界值的学生、统计单科/总分平均值;(4) 使用图形方式显示某些数据,直方图显示各

28、分数段的人数、绘制各科分数分布曲线;(5) 必须使用数据库,使用Access作为数据库。数据库中的数据量必须达到一定的规模。3.3 程序流程主界面编辑统计成绩管理录入查询删除全部按条件帮助修改3.4功能框架如下:(1)增加学生基本信息,如学号,姓名,性别,班级,专业,以及各科成绩。(2)通过学号查询学生的信息,并可以修改和删除。(3)统计学生各科成绩的平均分和总分平均分。(4)查询成绩在60分,即是否及格的同学。(5)统计各个同学各科成绩的排名。(6)用直方图统计各科成绩在不同分数段的分布人数。(7)统计各个同学各科成绩的排名。3.5 功能的设计:(1) 主框架的功能:主框架Grade中的菜单

29、栏上有三个菜单,分别是编辑、统计和帮助。编辑菜单下有两个菜单项:插入信息和修改删除。插入信息可以实现增加学生的基本信息,并添加到数据库中,同样,修改删除也可以通过查询某个学生的信息,再进行修改或删除。统计菜单下有三个菜单项:成绩统计,个人成绩和图形统计。成绩统计的功能是实现统计总分平均分,各科成绩平均分以及各科成绩及格与否的学生。个人成绩的工程则是实现通过查询某个学生,得到学生的各科成绩,并统计各科成绩的排名和总分。图形统计的功能则是根据各科成绩的分数段统计人数。(2) 子框架的功能:子框架是根据主框架中的菜单项的选择而进行的事物监听,如点击插入信息时候会弹出一个输入信息的窗口,用InputI

30、nfo类设置该子窗口,同样在窗口中点击如保存则会产生一个事物监听器,通过调用类DataManager来处理数据。(3) 各个类的功能:.Grade类:实现了构造主框架。.InputInfo类:实现了输入信息的框架。.Search类:实现了寻找信息,修改和删除信息的框架。.AllgradeCount类:实现了总分和各科成绩统计平均分,以及找出各科及格与否的同学。.SignalCount类:实现了显示个人各科成绩,以及总分和各科排名。.DataManager类:实现了数据库的一些操作,如插入信息,删除信息,修改信息,查询信息等。.Photo类:实现了用统计图形的方式的框架。.Pane类:实现了画直

31、方图的面板功能。3.6详细设计: (1)设计数据库:本程序是通过连接数据库而对学生信息的处理,其中的基本信息有:学号,姓名,性别,班级,专业;而成绩信息有:网络工程,操作系统,编译原理,软件工程,专业英语,用Access数据库,分别可以用sno,sname,ssex,sclass,smajor,snet,sos,scom,ssoft,和seng来作为数据库表中的列属性。其中sno是主键。 (2)设计数据处理方法:把数据处理方法放在一个类DataManager中,其中的方法函数有插入操作Input,查询操作:Search,修改操作:Modify,删除操作:Delete, 查询某一科目成绩大于或小

32、于60的学生:Find, 统计各科平均分:SubjectAvg, 总分平均分统计 :allAvg, 各科成绩排名:signalCount, 得各科的分数段人数:gethigh, 获得总的人数:count;在这些函数中最重要的是数据库连接函数Connect,在执行该程序时候要注意开启Access服务器,并设置数据源。(3)设计框架:通过java的可视化方法对该程序采取框架形式,设计框架类,其中有主框架: Grade类, 输入信息的框架:InputInfo类, 修改和删除信息的框架: Search类,各科成绩平均分统计以及合格学生信息框架: AllgradeCount类, 个人各科成绩及排名框架:

33、 ignalCount类,直方图统计框架: Pane类。(4)设计直方图:首先通过数据查询某个科目的各个分数段的人数,如”网络工程”的分数在0-60的人数,可以通过SQL查询语句: select count(*) from student where snet 60的执行得到结果。然后在通过查询数据库的总人数, 通过SQL查询语句:select count(*) from student得到总人数,在画图时候确定面板的大小,如本程序中的画图面板大小为(300,300)的矩形大小,可以将高度为200作为画图的范围,另外100作为输出信息标签的范围,所以可以将查询的人数与总人数的比例再乘以高度20

34、0,来作为直方图的高度.同理可得。(5)设计各个框架间的联系:各个框架之间的联系是通过组件间的事件响应来实现的,每个组件在一定的事件下设计一个监听器,所谓监听器就是当该时间发生时,监听器会得知并调用处理的程序进行运行,如当你按下菜单项”修改查询”,通过修改查询的菜单项设置监听器: JMImodify.addActionListener(new ActionListener()public void actionPerformed(ActionEvent arg0) / TODO 自动生成方法存根search = new Search(););来处理这个事件,此时会出现一个查询修改删除的框架,因

35、此框架间的联系也就实现了。同样也可以得到其他框架间的联系。关键是设置组件的响应程序。四、功能实现1.连接Access数据库服务器,并设置数据源students.2.执行程序,出现主界面:3.点击编辑菜单下的插入信息:4.点击编辑菜单下的修改删除,输入学号进行查询:5.点击修改按纽,文本框将变成可编辑,将网络工程的成绩改为90:6.点击保存,将把该信息保存到数据库中,点击统计菜单下的个人成绩,如输入学号310606394查询上一次修改的分数内容:7.点击统计菜单下的成绩统计,可以查询到各科成绩大于或小于60分的学生,以及各科的平均分等:8.点击统计菜单下的图形统计,将看到各科成绩分数段的人数分布

36、:五、设计总结5.1遇到的问题及解决办法5.1.1 遇到的问题a.刚拿到题目时毫无思路,感觉无从下手,看到要实现那么多的功能,觉得以自己所掌握的Java语言的知识根本无法做到。所能看到的只是重重困难而无其他。b.安装JDK和Eclipse时问题最多,主要的就是环境变量的设置,尽管是按照书上所说的步骤设置,但还是无法正确运行,一打Eclipse就报错,而且是自己不懂的英文。就这个问题花了接近一周的时间才完全解决了。c.以前只是使用JCreator编写一点简单而短的小程序,有时同一程序在JCreator运行会报错,而使用Eclipse就不会报错,但是自己以前从没用过Eclipse,再加上它又是全英

37、文的,完全不会使用。不知如何建项目,包和类,以及如何导入程序。d.由于刚开始没有清楚的思路,不知如何来实现这些功能,就开始编写程序,在没有方向的编写了一些无用的程序,浪费了很多时间、e.在课程设计的步骤上走了很多弯路,没有一定的顺序和规律的往下走。f.对Java本来掌握的不好,再加上一年前学过它之后也没有复习和巩固,最基本的知识几乎都已忘记。在编写程序时问题不断,就面板的布局也设计不出自己想要的效果。g.编译程序时,有时小小的一个错误也不知如何去调试,找不出问题的原因所在。h.不知用什么方法连接数据库。i.连接数据库时出现很多问题,连接不上,无法查询到自己所需的信息。5.1.2 问题解决办法a

38、. 及时向老师和同学请教,老师给了我很多提示和建议,比如先不要急于编程序,重要的是自己要思路清晰,先想好要实现哪些功能,以及用什么方法来实现,画出流程图,把每个模块都想清楚,并画出界面及界面之间的相互连接关系。我按照老师的建议去做时,感觉思路越来越清晰了,没有那么困惑了。b. 上网查找JDK的安装方法和环境变量的设置,并参考课本,对其进行设置。请班里同学帮忙找出错误的原因并加以纠正。向会的同学请教Eclipse的使用方法并大量查阅资料。c. 建立Access数据库,最重要的问题就是命名和字段的设置,还有就是字段属性的设置。建好了数据库和表后,保存命名时要和程序中数据源的名称一样。连接数据库第一

39、种方式只要定义了ODBC中的数据库,不管实际数据库文件放到哪里都可以直接使用ODBC中的名称直接连接。第二种方式不需要进入ODBC设置,只要指定数据库文件的路径就可以连接。但缺点是如果数据库位置变动,就要修改连接代码。连接数据库的步骤:控制面板管理工具数据源(ODBC)添加(选择数据库的类型,和程序中连接数据库的类型一致)选择所建数据库的保存目录完成。这是基本步骤,按照这样的步骤,只要别粗心,基本山不出现问题。d. 程序中添加异常捕获,一些常见的现错误就能解决了。并查看错误的原因及帮助信息,向老师和同学请教,循序渐进地调试程序,直到能正确运行。5.2设计中的不足之处a.没有用户登录界面和安全保

40、护措施,即没有设置用户权限,只要知道用户名或学号的都可以对成绩进行更改,存在一定的安全隐患。b.不分管理员和学生,任何人都可以对学生的信息和成绩进行操作。给成绩管理带来不便。5.3 心得体会作为计算机科学与技术大三的学生,我觉得能做类似的课程设计是十分有意义的,而且是十分必要的。在已度过的两年多的时间里我们大多数接触的是专业基础课。 我们在课堂上掌握的仅仅是专业基础课的理论知识,如何去锻炼我们的实践能力?如何把我们所学的专业基础理论知识运用到实践中去呢?我想做类似的课程设计就为我们提供了良好的实践平台。在做本次课程设计的过程中,我感触最深的当数查阅大量的书籍了。为了让自己的设计更加完善,更符老

41、师的要求,一次次翻阅各种参考资料是十分必要的,也是必不可少的。作为一名专业学生掌握一门或几门程序设计语言也是必不可少的,由于本次课程设计要求用Java进行开发,在这过程中我对各种各样的开放环境进行了探索,这使我对Java的集成开发环境有了更深刻的理解,虽然过去从未独立应用过它们,但在学习的过程中带着问题去学我发现效率要比以往高,记得大一学C语言时感觉它好难,就是因为我们没有把自己放在使用者的角度,单单为了学而学,这样效率就不那么明显了。边学边用才会提高效率,这是我做本次课程设计的第二大收获,但是由于水平有限,难免会有错误,还望老师批评指正。继 C语言之后学习 Java 程序设计语言感觉编程语言

42、没那么难了, Java 把 C语言中一些较低级和较难以理解的功能都去掉了,如多继承、指针等,同时 Java 增强了部分功能, “+” 如运算符的重载。另外 ,Java还提供了丰富的类库 ,使程序设计者可以很方便地建立自己的系统。 对于初学 Java 的人而言, 难点是 Java 中的引用、初始化一个类过程等。总的来说,Java 其易于学习、高效率的执行方式、平台无关性、分布式与高安全性及其丰富的 API 文档和类库等特点都说明Java 是程序设计语言的伟大进步的表现。本次课程设计综合考察了我们对 Java 程序设计知识的掌握熟练程度和实际运用能力。其间,涉及到了 Java 中的绝大多数的知识点

43、,如 Java 图形用户界面设计、Java 的异常处理机制、Java 中的多线程程序设计、Java 输入输出流等。 程序实现的关键在于功能的合理划分以及各个包或者类之间的通讯问题,只要分析清楚这两点,剩下的就是按部就班的写代码了。所以设计是关键,功能实现了,再就是如何对程序进行性能优化的问题。 如有的类需要多个对象实例,这时我们就可以使用 Singleton 模式产生唯一的对象实例,如“文件分割合并器”中 MyWindowListener 类;文件操作中加入缓冲机制;对与图像可以使用使用双缓冲区等等。Java编程语言最强大的地方不是它易学,或者难学,而是它拥有一个强大的库。Java是一个完全面

44、向对象的语言,它的命名规则是很容易让人接受的,而且容易被编程人员记住。经过实践训练,我对Java的综合应用能力有了较大的提高,另外对Java的特点有了更深层次的认识。这次实践中使用的代码虽然不长,但类与类之间也有很强的逻辑关系,这也是面向对象语言的最大优势,这样可以让我们更轻松的运用Java。 通过这次课程设计,我找到了一种学习 Java的方法,即“六步走”的方法,循序渐进, 第一步是安装好 JDK,写一个 Hello World。 感觉JDK 的学习没有那么简单,关于 JDK 有两个问题是很容易困扰 Java 程序学习者的: 一个是 CLASSPATH 的问题,其实从原理上来说,是要搞清楚

45、JRE 的 ClassLoader 是如何加载 Class 的;另一个问题是 package 和 import 问题,如何来寻找类的路径问题。把这两个问题摸索清楚了,就扫除了学习 Java 和使用 JDK 的最大障碍。其间我认真阅读了王森的Java 深度历险,对这两个问题进行了深入的探讨。 第二步是学习 Java 的语法。第三步是学习 Java 的面向对象的编程语言的特性的地方。比如继承,构造器,抽象类,接口,方法的多态,重载,覆盖,Java 的异常处理机制。第四步就是熟悉 Java 的类库。第五步,Java Web 编程。第六步,J2EE 编程。 总之,我认为作为一门程序设计语言,Java

46、的学习务必要做到多看多写多想多请教。多看,看高手、大师的程序,借鉴其解题思路和程序架构;多写,学习程序设计很重要的就是要自己亲自动手写代码,切忌犯眼高手低的弊病,而且这样记忆非常深刻;多想,程序调试中出现一些“莫明其妙”的问题,为什么会这样而不是那样;多请教:程序设计说到底是要彻底搞清设计该语言的人的思想,遇到问题想不通应该多请教老师、同学等。这样可达到事半功倍的目的。这次课程设计令我感受很多。从拿到题目到改编Java程序,然后请教同学慢慢研究琢磨,从理论到实践,从失败到成功。我坐在电脑前苦苦思索,上网查阅资料,往返图书馆找资料,熬夜编程序和写报告的,这期间我学了不少的Java编程知识和技巧,

47、同时还巩固了以前所学的知识,学到了不少书本上没有的知识;以前只会简单的使用JCreator编写简单的很短的程序,这次课程设计还让我学会了简单的使用eclipse来开发java程序的一些使用技巧,以及如何将程序导入到Eclipse中运行。而且还磨砺了我的意志。通过这次课程设计,我更加熟悉地掌握了java中的图形界面的设计,同时也学会了将数据库与程序的联系结合, 让我对数据库的使用有了更多的认识和了解。增强了我的动手能力,解决问题的能力。在这次课程设计期间,老师给予我正确的指导和帮助,为我解答了不少的疑问,还有班里的同学也给了我莫大的帮助,有些东西我们一起探讨,一起寻找解决方法。同时,在两位老师辛

48、勤指导下,我学到了很多实用的东西,在此表示衷心的感谢!同时,还要感谢帮助过我的学长及其他同学!此学生成绩管理系统是基于书籍:Java程序设计(苏俊编著 机械工业出版社)写的,其中不少代码是此书里摘取的,但是此程序都是在我不断地学习中点点滴滴实现的,虽说此程序很简单,但让我学到不少基础知识。我觉得,只要能学到东西,特别是学到最基础的知识,都会让我们有所收获。参考文献:叶核亚, Java程序设计实用教程(第三版),北京,电子工业出版社,2010年苏 俊, Java程序设计苏俊编著 , 2005年8月 版次1-1美 Bruce Eckel,译者:陈昊鹏,Java编程思想,机械工业出版社,1999年4月沃纳斯,Java开放源码编程,电子工业出版社,2005年1月唐晓军等,Java项目设计与开放范例,电子工业出版社,2005年4月22

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!