收藏 分销(赏)

学生信息管理系统设计毕业论文正文.docx

上传人:可**** 文档编号:3005746 上传时间:2024-06-12 格式:DOCX 页数:19 大小:119.18KB
下载 相关 举报
学生信息管理系统设计毕业论文正文.docx_第1页
第1页 / 共19页
学生信息管理系统设计毕业论文正文.docx_第2页
第2页 / 共19页
学生信息管理系统设计毕业论文正文.docx_第3页
第3页 / 共19页
学生信息管理系统设计毕业论文正文.docx_第4页
第4页 / 共19页
学生信息管理系统设计毕业论文正文.docx_第5页
第5页 / 共19页
点击查看更多>>
资源描述

1、摘 要随着21世纪的到来, 人们更深刻的感受到了计算机在生活和工作中的作用越来越重要,越来越多的职业需要具有计算机的应用技能。掌握计算机是职业的需要,社会的需要,更是事业发展的需要。今天,计算机技术不但广泛地应用在办公自动化中,还全面渗透到各行各业。所有与计算机相关的职业都要求工作者有很强的计算机操作技能,做到运用自如,熟练而且深入的掌握软件的应用。随着计算机技术的飞速发展,今后,计算机作为一种崭新的生产力,将在信息社会即新技术革命中发挥越来越重要的作用,并进一步推动人类社会更快的向前发展。而信息资源已成为各个部门的重要财富和资源。建立一个满足各级部门信息处理要求的行之有效的处理系统也成为一个

2、企业或组织生存和发展的重要条件。本系统是由Java开发工具编写的。由Microsoft Access作为后台数据库进行管理维护。本文主要讲述了利用Java来开发一套学生信息管理系统的设计方法。该系统采用多个模块,实现了学生成绩、基本信息的录入、修改、和查询等功能。关键词: 学生信息 Java 数据库目 录摘要.1第一章绪论. 3 1.1选题的背景及意义.3 1.2本系统主要功能模块.3第二章 学生信息管理系统分析.4 2.1系统的可行性调查. .4 2.2 系统的需求分析.4 2.2.1学生信息管理系统的功能要求.4 2.2.2学生信息管理系统的性能需求.4 2.2.3学生信息管理系统的数据需

3、求.5第三章Java简介.7 3.1 Java起源.7 3.2 Java的某些特点.7 3.3 Java与中间件.8 3.4 Java的弱点. . .8 第四章Access数据库.94.1 Access概述.94.2 Access的使用.94.2.1 新数据库文件的创建.94.2.2 数据库文件的打开及数据库对象.10第五章 系统的实现.115.1总体设计.115.2数据库数据结构设计.125.3 Java程序实现.135.4各功能模块和流程图.165.4.1各功能模块.165.4.2流程图.17结束语. .18参考文献. .18第一章绪论1. 1选题的背景及意义学生信息管理系统是一个教育单位

4、不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生信息进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能

5、够极大地提高学生信息管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。1.2本系统主要功能模块本系统的主要任务就是负责对学生信息管理。主要用户为老师和学生,其中,学生可对自己的信息进行查询,老师则可对学生的信息和成绩进行添加和修改、删除。系统提供友好界面,操作简单。为实现这些功能,系统一个包含如下几个基本模块:1. 用户登陆模块。用户可以选择自己的登陆身份。2. 添加信息模块。教师可以实现对学生信息的添加。3. 修改信息模块。教师可以实现对学生信息的修改。4. 查询信息模块。学生只可以在此界面进行操作。5. 删除信息模块。教师可以实现对学生信息的删除。第二章 学生信息管理系统分析

6、21系统的可行性调查 可行性研究的目的是为了对问题进行研究,以最小的代价在最短的时间内确定问题是否可解。 建立学生信息管理系统,采用计算机对学生信息进行管理,进一步提高办学效益和现代化水平。帮助广大教师提高工作效率,实现学生信息管理工作流程的系统化、规范化和自动化。 经过对此项目进行详细调查研究,初拟系统实现报告,对软件开发中将要面临的问题及其解决方案进行初步设计及合理安排。明确开发风险及其所带来的经济效益。本报告经审核后,交软件负责人审查。 可行性分析包括两部分内容:分析建立新的管理信息系统的必要性和可能性。分析建立信息系统的必要性时要注意用户提出的理由是否充分和合理;分析建立信息系统的可能

7、性主要包括经济可行性、技术可行性和社会可行性。经济可行性研究的目的是使新系统能达到以最小的开发成本取得最佳的经济效益。需要作投资估算,对开发中所需人员、硬软件支持以及其它费用进行估算,并对系统投入使用后带来的经济效益进行估计。技术可行性研究就是弄清现有技术条件能否顺利完成开发工作,硬软件配置能否满足开发的需要等等。社会可行性研究是指新系统在投入使用后,对社会可能带来的影响进行分析。 2.2系统的需求分析2.2.1学生信息管理系统的功能要求 学生信息管理系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好

8、人机交互界面的学生信息管理系统,实现学校教师和学生共同使用的一个信息管理系统,为教师对学生信息的添加、修改、删除、查询和学生查询自己信息提供方便。2.2.2学生信息管理系统的性能需求学生信息管理系统主要提供信息查询,方便管理的网上的信息查阅平台,学生可以通过该系统查阅与自己有关的各科成绩,教师可以通过该系统对学生的信息进行添加、删除、修改和查询。为了保证系统能够长期、安全、稳定、可靠、高效的运行,学生信息管理系统应该满足以下的性能需求:1系统处理的准确性和及时性系统处理的准确性和及时性是系统的必要性能。在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间

9、能够满足各使用者对信息处理的需求。由于信息查询系统的查询功能对于整个系统的功能和性能完成举足轻重。作为系统的很多数据来源,而学生的信息的准确性很大程度上决定了学生信息管理系统的成败。在系统开发过程中,必须采用一定的方法保证系统的准确性。2系统的开放性和系统的可扩充性学生信息管理系统在开发过程中,应该充分考虑以后的可扩充性。例如科目的改变和学生基本信息的改变,学生查询的需求也会不断的更新和完善。所有这些,都要求系统提供足够的手段进行功能的调整和扩充。而要实现这一点,应通过系统的开放性来完成,既系统应是一个开放系统,只要符合一定的规范,可以简单的加入和减少系统的模块,配置系统的硬件。通过软件的修补

10、、替换完成系统的升级和更新换代。3系统的易用性和易维护性学生信息管理系统是直接面对使用人员的,而使用人员往往对计算机并不是非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提供足够的在线帮助,缩短用户对系统熟悉的过程。学生信息管理系统中涉及到的数据是学生的重要的信息,系统要提供方便的手段供系统维护人员进行数据的备份,日常的安全管理,系统意外崩溃时数据的恢复等工作。4系统的标准性系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。所有这些都要符合主流国际、国家和行业标准。例如在开

11、发中使用的操作系统、网络系统、开发工具都必须符合通用标准。如规范的数据库操纵界面、作为业界标准的TCP/IP网络协议及ISO9002标准所要求的质量规范等;同时,在自主开发本系统时,要进行良好的设计工作,制订行之有效的软件工程规范,保证代码的易读性、可操作性和可移植性。5系统的响应速度 学生信息管理系统系统在日常处理中的响应速度为秒级,达到实时要求,以及时反馈信息。在进行统计分析时,根据所需数据量的不同而从秒级到分钟级,原则是保证操作人员不会因为速度问题而影响工作效率。2.2.3学生信息管理系统的数据需求学生信息管理系统的数据需求包括如下几点:1.数据录入和处理的准确性和实时性数据的输入是否准

12、确是数据处理的前提,错误的输入会导致系统输出的不正确和不可用,从而使系统的工作失去意义。数据的输入来源是手工输入。手工输入要通过系统界面上的安排系统具有容错性,并且对操作人员要进行系统的培训。在系统中,数据的输入往往是大量的,因此系统要有一定的处理能力,以保证迅速的处理数据。2. 数据的一致性与完整性由于系统的数据是共享的,对于不同的教师,学生的信息是共享数据,所以如何保证这些数据的一致性,是系统必须解决的问题。要解决这一问题,要有一定的人员维护数据的一致性,在数据录入处控制数据的去向,并且要求对数据库的数据完整性进行严格的约束。对于输入的数据,要为其定义完整性规则,如果不能符合完整性约束,系

13、统应该拒绝该数据。3. 数据的共享与独立性整个学生信息管理系统的数据是共享的。然而,从系统开发的角度上看,共享会给设计和调试带来困难。因此,应该提供灵活的配置,使各个分系统能够独立运行,而通过人工干预的手段进行系统数据的交换。这样,也能提供系统的强壮性。第三章Java简介3.1 Java起源起源于80年代的中末期,当时西方有一种很时髦的产品:Active TV,Java就是Sun公司为这种产品开发的一种语言,其目标是在小型嵌入式系统上运行。但是由于动态图像压缩标准MPEG却始终未能出台,因而这个时期的Java也就中途夭折了。到了1990年,Sun公司副总裁James Gosling再次提出Ja

14、va的设计,其目标是希望仿效C和C+那样设计出一种更简单、更有效、更容易使用的跨多种计算机平台(硬件、操作系统等),可移植的通用语言。到了90年代中期,互联网迅速崛起,短短几年得到了巨速的发展,成千上万的计算机,其中有个人的、企业的、政府的,公司加入到了互联网上,致使互联网深入到了生活、社会、经济、政治、军事的每一个角落,因此急需开发一种跨平台软件开发工具,这给Java得到了一个极好的发展机遇,1995年Sun公司首次推出Java语言。短短的几年中Java得到了极大的发展,成立互联网开发和应用发展的一个重要工具。3.2 Java的某些特点1通用性:指的是跨平台、跨网络、跨语种和跨时间。跨平台:

15、指的是Java与计算机平台(硬件、操作系统)无关。跨网络:指的是Java与网络平台无关,可以穿越多种常用的网络类型(平台)。它的结构确切地说是B/S模型(浏览器/服务器模型,亦称Web模型)。B/S模型是一种三层结构的模型:客户端/应用服务器(Web服务器)/数据库服务器。跨语种:指的是Java的应用软件不存在语言本地化问题,它本身带有语言机制。它主要是通过所谓“国际语言管理”(International Language Management)模块实现的。跨时间:技术更新和保护投资的方案、产品升级容易,只需编写一个新的模块,替换老模块即可。2可移植性:Java的源代码是可移植的,而且对现有的

16、几乎所有操作系统无须修改便能运行,还具有多线程同步、与平台无关的用户接口、内置联网功能、对象会打印功能、出错处理、内存管理等功能。CPU可移植性和虚拟操作系统。3支持分布式环境:1) 分布式对象支持:类似于微软的OLE(对象的链接和嵌入Object Linking and Embedding)。支持面向对象的“继承”特性。2) 分布式计算环境支持:通过不断扩充的Java网络类库支持分布式计算环境。Java提供一个URL(统一资源定位器)对象,用以打开并访问网上对象。其方式几乎与访问文件系统几乎完全相同。Java的客户机/服务器模式把运算从服务器分散到客户端。以提高系统执行效率,增加动态可扩充性

17、。Java虚拟机(JVM):这是一种软CPU,是Java环境最重要的组件,它是仿照一种小巧高效的CPU设计的,Java的编译器就是把Java的源代码编译成VM可执行的伪标代码,而伪目标代码转换成实际的硬件调用。3.3 Java与中间件Java的客户端,一般都做的很“瘦”,因此必须通过中间件才能与后台数据库相连接,由中间件来完成主要的处理操作,问题是中间件在什么平台上运行,是UNIX还是NT?网络内有不同子网,子网间也有中间件连接(运行在网点上)。因此比较合适的办法是在Java上建立中间件,来解决跨平台问题。3.4 Java的弱点1 跨平台速度慢。因为需要处理诸如中间件JVM等以及网络网关的连接

18、。这是以增加网络系统开销来换取跨平台的功能,为提高速度,需要Java的未用总线来支持(至少三线)。2 全开放性,造成易于攻击。自身一定的抗病毒能力,但最易受ActiveX的攻击。3 以松散耦合构架的应用程序结构,仍然是牺牲网络系统性能(开销)来换取应用程序以整体、完整的连续性。4 以互联网为环境的应用程序、总体而言,安全性是值得质疑的。5 用Java开发的小程序性能要比大程序性能优秀得多。第四章Access数据库4.1 Access概述Access是Office系列软件中用来专门管理数据库的应用软件。所谓数据库是指经过组织的、关于特定主题或对象的信息集合。数据库管理系统分为两类:文件管理系统和

19、关系型管理系统。Access应用程序就是一种功能强大且使用方便的关系型数据库管理系统,一般也称关系型数据库管理软件。它可运行于各种Microsoft Windows系统环境中,由于它继承了Windows的特性,不仅易于使用,而且界面友好,如今在世界各地广泛流行。它并不需要数据库管理者具有专业的程序设计水平,任何非专业的用户都可以用它来创建功能强大的数据库管理系统。本章将专门介绍Access 2002(下面简称为Access)的基本功能及其常用的操作,主要内容包括创建和使用数据表,建立和使用查询、窗体,以及数据表与其他数据文件之间的转换等流行的桌面数据库管理系统之一。数据库技术是计算机软件的一个

20、重要分支,它产生于20世纪60年代,最早是由IBM公司推出的IMS数据库系统。数据库技术从开始到现在大致经历了三个阶段,分别是:人工管理阶段、文件管理阶段和数据库管理阶段。Access使用标准的SQL(Structured Query Language,结构化查询语言)作为它的数据库语言,从而提供了强大的数据处理能力和通用性,使其成为一个功能强大而且易于使用的桌面关系型数据库管理系统和应用程序生成器。一个Access数据库中可以包含表、查询、窗体、报表、宏、模块以及数据访问页。不同于传统的桌面数据库(dbase、 FoxPro、Paradox), Access数据库使用单一的*.mdb文件管理

21、所有的信息,这种针对数据库集成的最优化文件结构不仅包括数据本身,也包括了它的支持对象。4.2 Access的使用4.2.1 新数据库文件的创建Access中创建和处理的文件是数据库文件,其扩展名为 .mdb。与Microsoft Office中其他的应用程序(Word、Excel等)不同的是,Access启动后,并不自动创建一个空的文件,然后让用户输入数据,再保存。在Access中,需要用户自己来创建一个新的数据库文件。单击任务窗格中的“新建空数据库”项,Access会马上弹出一个对话框让用户给出要新建的数据库的文件名。这也是和Office中其他的软件不同的。输入文件名后,Access打开一个

22、新窗口。 在该窗口的标题栏中显示了新建数据库文件的名称,窗口工作区的左窗格中列出了数据库可包含的主要对象类型,右窗格中列出的是创建当前对象的向导和具体的对象名称。另外,还可以在任务窗格中单击“根据模板新建”,使用数据库向导来创建新的数据库。4.2.2 数据库文件的打开及数据库对象Access可打开的文件类型包括Excel电子表格、Dbase数据库、文本文件、Paradox数据库、Web页以及Access自己生成的mdb文件。在任务窗格的“打开文件”项下,可以选择曾经使用过的文件直接打开,也可以使用菜单【文件】【打开】或常用工具栏的打开按钮,在“打开对话框”中选择文件来打开。在一个Access窗

23、口中,同一时刻只能打开一个Access数据库,当打开或新建一个数据库时,会自动关闭原来打开的数据库。如果需要打开多个数据库,则要启动多个Access窗口。Access具有全环绕数据库文件结构,可以在一个mdb文件中包含数据对象(表、索引、查询)和应用对象(窗体、报表、宏、VBA代码模块)。在一个打开的Access数据库窗口中,分组显示了数据库包含的对象,其类型包括表、查询、窗体、报表、页、宏、模块等。一个Access数据库可以包含多达32768个对象(表、查询、报表等的组合),下面对这些对象作一简要介绍。表:存储数据的容器,是关系数据库系统的基础。表以行列格式存储数据项,这一点和电子表格有些类

24、似。表中的单个信息单元(列)称为字段,在表的顶部可以看到这些字段名;表的一行中所有数据字段的集合,称为记录。用户可以从其他的应用系统(如 dBASE、FoxPro、Paradox)、客户服务器数据库(如 SQL Server)以及电子表格(如Excel工作表和Lotus1-2-3)中导入表。Access可以同时打开1024个表。通常我们可以直接选择表然后再创建表,并对表格做一些设计或向表中添加内容即可。查询:显示从多个表(最多为16个)中选取的数据。通过使用查询,用户可以指定如何表示数据,选择构成查询的表,并可以从所选表中提取出最多255个特定的字段。用户可以通过指定要查询数据的条件来决定显示

25、的数据项。窗体:窗体是数据库和用户的一个联系界面,用于显示包含在表或查询结果中的数据,或操作数据库中的数据。窗体中可以包含图片、图形、声音、视频等多种对象,也可以包含VBA代码来提供事件处理。子窗体是包含于主窗体中的窗体,主要是用来简化用户的操作。报表:用友好和实用的形式来打印表和查询结果数据。报表中可以加入图形来美化打印效果。Access的报表处理能力比起其他关系数据库管理系统来(包括那些为小型机和大型机设计的应用管理系统在内),其报表的处理能力显得更为灵活方便。报表中同样也可以添加VBA代码来实现一定的功能。宏:宏主要是用于执行特殊的操作和响应用户激发的事件,如单击命令按钮操作等。现在宏已

26、经过时了,Access 2002之所以支持宏,是为了能够与早期的 Access 版本所创建的数据库应用系统保持兼容。Microsoft建议在Access应用系统中采用VBA代码来进行事件的处理,这一原则在Office系列中均适用。模块:在模块中使用VBA代码的目的主要有两个:一是创建在窗体、报表和查询中使用的自定义函数;二是提供在所有类模块中都可以使用的公共子过程。通过在数据库中添加VBA代码,用户就可以创建出自定义菜单、工具栏和具有其他功能的数据库应用系统。第五章 系统的实现5.1总体设计学生机上的输入信息为姓名和密码。输出为学生的信息,和确认或出错信息。其内部处理流程如下:教师机上的输入信

27、息为姓名和密码。教师登陆以后可以对学生信息进行查询、修改、添加和删除。其内部处理流程如下:输入姓名和密码(选择教师)无此教师输入错误查询信息修改信息添加信息删除信息输入正确对信息进行查询对信息进行修改添加学生信息删除学生信息总体结构和模块外部设计输入姓名和密码 选择学生 选择教师 查询信息删除信息添加信息修改信息查询信息 5.2数据库数据结构设计DBMS 的使用上系统将采用 SQL SERVER, 系统主要需要维护3张表:其中:U:唯一(Unique) P:主键(Primary) N:非空(Not Null) I:索引(Index) 学生基本信息表:序号名称类型位数属性备注1学号char8P、

28、N、I2姓名char8N3数学int6N4英语int6N5计算机int6N6性别char6N7年龄char6N8班级char6N9籍贯char6N10身高int6N 学生基本信息表保存了所有在校生的信息,它的主键为学号。当其不在在校时则将其信息删除。登陆基本信息表: 序号名称类型位数属性备注1姓名char8N,P,I2密码int8N登陆基本信息表保存了所有用户的信息,它的主键为姓名。当其不在在校时则将其信息删除。5.3 Java程序实现首先,有一个用户登录界面student.java连接到数据库student中的表admin,如果有这个用户存在则登录成功,若没有泽登录失败。同时在这个界面用户还

29、可以选择自己的登陆身份。主要代码如下:package node;import javax.swing.UIManager;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class Student boolean packFrame = false; /Construct the application public Student() MainFrame frame = new MainFrame(); /主界面 /Validate frames that have

30、 preset sizes /Pack frames that have useful preferred size info, e.g. from their layout if (packFrame) frame.pack(); else frame.validate(); /Center the window Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = frame.getSize(); if (frameSize.height screenSize.he

31、ight) frameSize.height = screenSize.height; if (frameSize.width screenSize.width) frameSize.width = screenSize.width; frame.setLocation( (screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2); frame.setVisible(true); public static void main(String args) /主函数 try UIMana

32、ger.setLookAndFeel(UIManager.getSystemLookAndFeelClassName(); catch (Exception e) e.printStackTrace(); new Student(); 用户登陆之后,系统将进入MainFrame.java面板,如果你是以学生身份登陆,则只查询信息,如果你是以教师身份登陆,则可以进行学生信息的添加,删除,查询,修改。部分主要代码如下:void jbutton1_actionPerformed(ActionEvent e) String user = textField1.getText().trim(); Str

33、ing pass = textField2.getText().trim(); String dept = t6.getSelectedItem().toString(); try String strurl = jdbc:odbc:driver=Microsoft Access Driver (*.mdb);DBQ=DataBase/student.mdb; Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); Connection conn = DriverManager.getConnection(strurl); Statement stmt = c

34、onn.createStatement(); if (user.equals()| pass.equals() JOptionPane.showMessageDialog(null, 用户名或密码或身份不能为空!, 警告, JOptionPane.WARNING_MESSAGE); else ResultSet rs = stmt.executeQuery(select * from admin where username= + user + AND password= + pass + ); if (dept.equals(教师) JOptionPane.showMessageDialog

35、(null, 登陆成功!); login = true; jlabel1.setVisible(false); textField1.setVisible(false); jlabel2.setVisible(false); textField2.setVisible(false); jbutton1.setVisible(false); jlabel5.setVisible(false); t6.setVisible(false); jlabel3.setVisible(true); jlabel4.setVisible(true); jbutton2.setVisible(true); j

36、button3.setVisible(true); jbutton4.setVisible(true); jbutton5.setVisible(true); jbutton6.setVisible(false); jMenuItem1.setEnabled(true); jMenuItem2.setEnabled(true); jMenuItem3.setEnabled(true); jMenuItem4.setEnabled(true); else if(dept.equals(学生) JOptionPane.showMessageDialog(null, 登陆成功!); login = true; jlabel1.setVisible(false); textField1.setVisible(false); jlabel2.setVisible(false); textField2.setVisible(false); jbutton1.setVisible(false); jlabel5.setVisible(false); t6.setVisible(false); jlabel3.setVisible(true); jlabel4.setVisible(true);

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 学术论文 > 毕业论文/毕业设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服