收藏 分销(赏)

java学生信息标准管理系统.doc

上传人:精**** 文档编号:2881189 上传时间:2024-06-07 格式:DOC 页数:35 大小:170.54KB
下载 相关 举报
java学生信息标准管理系统.doc_第1页
第1页 / 共35页
java学生信息标准管理系统.doc_第2页
第2页 / 共35页
java学生信息标准管理系统.doc_第3页
第3页 / 共35页
java学生信息标准管理系统.doc_第4页
第4页 / 共35页
java学生信息标准管理系统.doc_第5页
第5页 / 共35页
点击查看更多>>
资源描述

1、目录1 引 言11.1背景及意义11.2 试验技术选择11.3 课题实现技术简明说明51.4可行性分析62系统需求分析63 学生信息管理系统设计73.1数据模型分析和设计83.2 结构设计和结构功效图103.2.1 结构设计103.2.2 功效结构图104 系统实现125 系统调试和测试175.1系统功效测试175.2系统调试常见错误176 试验小结19参考文件19附录代码1 引 言1.1背景及意义利用计算机进行学生信息管理,不仅能够确保正确、无误、快速输出,而且还能够利用计算机对相关信息进行查询,检索快速、查找方便、可靠性高、存放量大、保密性好。要科学地实现信息化管理,开发一个适合学校,能够

2、进行信息存放、查询、修改等功效信息管理系统是十分关键。本课题就是针对便于学生信息管理问题而设计一个管理系统。1.2 试验技术选择 本课题设计关键利用技术有两个:java项目开发和oracle对数据库操作。这里关键介绍本课题为何选择这两个开发技术:首先了解一下Java语言特点 Java是一个跨平台,适合于分布式计算环境面向对象编程语言。具体来说,它含有以下特征: 简单性、面向对象、分布式、解释型、可靠、安全、平台无关、可移植、高性能、多线程、动态性等。 下面我们将关键介绍Java语言面向对象、平台无关、分布式、多线程、可靠和安全等特征。 面向对象 面向对象其实是现实世界模型自然延伸。现实世界中任

3、何实体全部能够看作是对象。对象之间经过消息相互作用。另外,现实世界中任何实体全部可归属于某类事物,任何对象全部是某一类事物实例。假如说传统过程式编程语言是以过程为中心以算法为驱动话,面向对象编程语言则是以对象为中心以消息为驱动。用公式表示,过程式编程语言为:程序=算法+数据;面向对象编程语言为:程序=对象+消息。 全部面向对象编程语言全部支持三个概念:封装、多态性和继承,Java也不例外。现实世界中对象全部有属性和行为,映射到计算机程序上,属性则表示对象数据,行为表示对象方法(其作用是处理数据或同外界交互)。所谓封装,就是用一个自主式框架把对象数据和方法联在一起形成一个整体。能够说,对象是支持

4、封装手段,是封装基础单位。Java语言封装性较强,因为Java无全程变量,无主函数,在Java中绝大部分组员是对象,只有简单数字类型、字符类型和布尔类型除外。而对于这些类型,Java也提供了对应对象类型方便和其它对象交互操作。 多态性就是多个表现形式,具体来说,能够用“一个对外接口,多个内在实现方法”表示。举一个例子,计算机中堆栈能够存放多种格式数据,包含整型,浮点或字符。不管存放是何种数据,堆栈算法实现是一样。针对不一样数据类型,编程人员无须手工选择,只需使用统一接口名,系统可自动选择。运算符重载(operatoroverload)一直被认为是一个优异多态机制表现,但因为考虑到它会使程序变得

5、难以了解,所以Java最终还是把它取消了。 继承是指一个对象直接使用另一对象属性和方法。实际上,我们碰到很多实体全部有继承含义。比如,若把汽车看成一个实体,它能够分成多个子实体,如:卡车、公共汽车等。这些子实体全部含有汽车特征,所以,汽车是它们“父亲”,而这些子实体则是汽车“孩子”。Java提供给用户一系列类(class),Java类有层次结构,子类能够继承父类属性和方法。和另外部分面向对象编程语言不一样,Java只支持单一继承。 平台无关性 Java是平台无关语言是指用Java写应用程序不用修改就可在不一样软硬件平台上运行。平台无关有两种:源代码级和目标代码级。C和C+含有一定程度源代码级平

6、台无关,表明用C或C+写应用程序不用修改只需重新编译就能够在不一样平台上运行。Java关键靠Java虚拟机(JVM)在目标码级实现平台无关性。JVM是一个抽象机器,它附着在具体操作系统之上,本身含有一套虚机器指令,并有自己栈、寄存器组等。但JVM通常是在软件上而不是在硬件上实现。(现在,SUN系统企业已经设计实现了Java芯片,关键使用在网络计算机NC上。 另外,Java芯片出现也会使Java更轻易嵌入到家用电器中。)JVM是Java平台无关基础,在JVM上,有一个Java解释器用来解释Java编译器编译后程序。Java编程人员在编写完程序后,经过Java编译器将Java源程序编译为JVM字节

7、代码。任何一台机器只要配置了Java解释器,就能够运行这个程序,而不管这种字节码是在何种平台上生成。另外,Java采取是基于IEEE标准数据类型。经过JVM确保数据类型一致性,也确保了Java平台无关性。 Java平台无关性含有深远意义。首先,它使得编程人员所梦寐以求事情(开发一次软件在任意平台上运行)变成事实,这将大大加紧和促进软件产品开发。其次Java平台无关性恰好迎合了“网络计算机”思想。假如大量常见应用软件(如字处理软件等)全部用Java重新编写,而且放在某个Internet服务器上,那么含有NC用户将不需要占用大量空间安装软件,她们只需要一个Java解释器,每当需要使用某种应用软件时

8、,下载该软件字节代码即可,运行结果也能够发回服务器。现在,已经有数家企业开始使用这种新型计算模式构筑自己企业信息系统。 分布式 分布式包含数据分布和操作分布。数据分布是指数据能够分散在网络不一样主机上,操作分布是指把一个计算分散在不一样主机上处理。 Java支持WWW用户机/服务器计算模式,所以,它支持这两种分布性。对于前者,Java提供了一个叫作URL对象,利用这个对象,你能够打开并访问含有相同URL地址上对象,访问方法和访问当地文件系统相同。对于后者,Javaapplet小程序能够从服务器下载到用户端,即部分计算在用户端进行,提升系统实施效率。 Java提供了一整套网络类库,开发人员能够利

9、用类库进行网络程序设计,方便得实现Java分布式特征。 可靠性和安全性 Java最初设计目标是应用于电子类消费产品,所以要求较高可靠性。Java即使源于C+,但它消除了很多C+不可靠原因,能够预防很多编程错误。首先,Java是强类型语言,要求显式方法申明,这确保了编译器能够发觉方法调用错误,确保程序愈加可靠;其次,Java不支持指针,这杜绝了内存非法访问;第三,Java自动单元搜集预防了内存丢失等动态内存分配造成问题;第四,Java解释器运行时实施检验,能够发觉数组和字符串访问越界,最终,Java提供了异常处理机制,程序员能够把一组错误代码放在一个地方,这么能够简化错误处理任务便于恢复。 因为

10、Java关键用于网络应用程序开发,所以对安全性有较高要求。假如没有安全确保,用户从网络下载程序实施就很危险。Java经过自己安全机制预防了病毒程序产生和下载程序对当地系统威胁破坏。当Java字节码进入解释器时,首先必需经过字节码校验器检验,然后,Java解释器将决定程序中类内存布局,随即,类装载器负责把来自网络类装载到单独内存区域,避免应用程序之间相互干扰破坏。最终,用户端用户还能够限制从网络上装载类只能访问一些文件系统。 上述多个机制结合起来,使得Java成为安全编程语言。 多线程 线程是操作系统一个新概念,它又被称作轻量进程,是比传统进程更小可并发实施单位。 C和C+采取单线程体系结构,而

11、Java却提供了多线程支持。Java在两方面支持多线程。首先,Java环境本身就是多线程。若干个系统线程运行负责必需无用单元回收,系统维护等系统级操作;其次,Java语言内置多线程控制,能够大大简化多线程应用程序开发。Java提供了一个类Thread,由它负责开启运行,终止线程,并可检验线程状态。Java线程还包含一组同时原语。这些原语负责对线程实施并发控制。利用Java多线程编程接口,开发人员能够方便得写出支持多线程应用程序,提升程序实施效率。必需注意地是,Java多线程支持在一定程度上受运行时支持平台限制。比如,假如操作系统本身不支持多线程,Java多线程特征可能就表现不出来。 oracl

12、e数据库特点无范式要求,可依据实际系统需求结构数据库。 采取标准SQL结构化查询语言。含有丰富开发工具,覆盖开发周期各阶段。支持大型数据库,数据类型支持数字、字符、大至4GB二进制数据,为数据库面向存放提供数据支持。含有第四代语言开发工具(SQL*formS、SQL*REPORTS、SQL*MENU等)。含有字符界面和图形界面,易于开发。经过SQL*DBA控制用户权限,提供数据保护功效,监控数据库 运行状态,调整数据缓冲区大小。 分布优化查询功效。含有数据透明、网络透明,支持异种网络、异构数据库系统。并行 处理采取动态数据分片技术。支持用户机/服务器体系结构及混合体系结构(集中式、分布式、 用

13、户机/服务器)。实现了两阶段提交、多线索查询手段。 支持多个系统平台(HPUX、SUNOS、OSF/1、VMS、 WINDOWS、WINDOWS/NT、OS/2)。数据安全保护方法:没有读锁,采取快照SNAP方法完全消除了分布读写冲突。自动检测死锁和冲突并处理。 数据安全等级为C2级(最高级)。 数据库内模支持多字节码制,支持多个语言文字编码。含有面向制造系统管理信息系统和财务系统应用系统。总而言之,选择java作为开发语言,oracle作为数据库开发工具是个不错选择。java语言面向对象、平台无关、分布式、多线程、可靠和安全等特征,使得开发出来项目含有健壮性、可维护性、可移植性等特点。Ora

14、cle是现在最具权威数据库产品,它含有兼容性、可移植性、可联结性、高生产率和开放性特点,使它成为当今众多程序开发人员首选数据库开发工具。所以本课题选择java和oracle作为开发技术是为以后开发更复杂项目打下基础,以免到时候碰到相关技术问题而不知所措。1.3 课题实现技术简明说明 本课题关键利用了java图形编程和oracle数据库操作。Java图形编程给用户提供了一个直观、易于和用户进行交互图形界面。在图形编程中,利用了大量java.swing包中类,之所以选择swing包中类而不选java.awt包中类,关键是swing包中类能给用户提供愈加好观感。oracle数据库操作这部分内容分成三

15、部分来实现:首先,编写对数据库操作类,包含:连接数据库、实施sql语句、关闭数据库连接等。其次,编写一个用于对学生信息进行数据库操作类,包含:学生信息增加、修改、删除和查询等。最终,编写一个用于对课程相关信息进行数据库操作类,包含:对课程信息增加、修改、删除、查询等等。经过结合图形编程和数据库编程,从而基础上实现了学生信息管理基础功效,因为本人技术上不足,难免有些地方需要改善,这些存在问题全部将成为本人前进动力,并在以后愈加完善本课题设计。1.4可行性分析 系统性质为管理软件,所以数据库设计和操纵是系统设计关键。这里从两方面分析技术上可行性。首先,对于java编程部分,java课已经开过。所以

16、在课题设计中,对java图形编程方面问题全部能迎韧而解。其次,对于数据库相关知识,本人利用了大量时间对相关书籍阅读和上机试验,基础上掌握了利用oracle数据库技术,含有一定系统分析和设计能力,熟悉数据库设计和操纵;所以该系统实现在技术上是可行。 2系统需求分析本课题依据学生信息管理综合分析,便出于方便管理考虑,将学生信息管理系统功效总结起来,共需要实现以下多个方面功效:管理学生信息管理全部学生基础信息,对学生信息操作包含添加、修改、删除等;能够依据多种条件查询出需要信息,比如修改,能够经过学生学号查询出学生基础信息,然后经过对需要修改项进行修改并保留修改后结果存入数据库学生表中。管理课程信息

17、管理全部课程基础信息,包含对课程信息添加、修改、删除等操作;能够依据多种条件查询出需要信息,并对对应信息进行操作。比如修改和删除,能够经过学生学号查询出学生对应课程信息,对对应课程进行修改、删除操作。学生选课和成绩依据学生学号进行选课,登记所选课程成绩;能够依据学号查询出选课信息和成绩。经过以上功效设计和实现,并实现学生信息管理系统基础功效。 3 学生信息管理系统设计3.1数据模型分析和设计数据库模型描述了在数据库中结构化和操纵数据方法,模型结构部分要求了数据怎样被描述(比如树、表等);模型操纵部分要求了数据添加、删除、显示、维护、打印、查找、选择、排序和更新等操作。数据库模型分类:分层模型、

18、关系模型、网络模型和对象模型。本课题选择关系模型,关系模型是现在最关键一个数据模型。关系数据库系统采取关系模型作为数据组织方法。关系数据模型含有下列优点: 关系模型和非关系模型不一样,它是建立在严格数学概念基础上。 关系模型概念单一。不管实体还是实体之间联络全部用关系表示。对数据检索结构也是关系(即表)。所以其数据结构简单、清楚,拥护易懂易用。 关系模型存取路径对用户透明,从而含有更高数据独立性、愈加好安全保密性,也简化了程序员工作和数据库开发建立工作。所以,关系数据模型诞生以后发展快速,深受拥护喜爱,这也是本课题选择关系数据模型原因。当然,关系数据模型也有缺点,其中最关键缺点是,因为存取路件

19、对用户透明,查询效率往往不如非关系数据模型。所以为了提升性能,必需对用户查询请求进行优化,增加了开发数据库管理系统难度。本课题关系数据模型数据结构可分为三个表来表示:学生信息表(Student)、课程信息表(Course)、学生选课表(SC);学生信息表用于统计学生基础信息,如表3-1;课程信息表用于统计课程基础信息,如表3-2;学生选课表以下表3-3。这三个表对应E-R图分别是:图3.1 学生信息E-R图;图3.2 课程信息E-R图;图 3.3 学生选课E-R图;以下图。表3-1 学生信息表(Student)名称数据类型主键非空学号Number(10)YesYes学生姓名Varchar2No

20、Yes性别Char(2)NoNo年纪Char(2)NoNo专业Varchar2NoNo学院Char(8)NoNo表3-2 课程信息表(Course)名称数据类型主键非空课程编号Char(4)YesYes课程名称Varchar2NoYes讲课老师Varchar2NoNo上课地点Varchar2NoNo课程类别Char(1)NoNo表3-3 学生选课表(SC)名称数据类型主键非空学号Char(10)YesYes课程编号Char(4)YesYes成绩Number(4,1)NoNo学生学号学生姓名性别专业年级出生图3.1 学生信息E-R图课程课程编号上课地点课程名称讲课老师课程类别图3.2 课程信息E

21、-R图选课表学号课程编号成绩图3.3 学生选课E-R图3.2 结构设计和结构功效图3.2.1 结构设计依据对系统进行需求分析,本系统将分为4个模块: 学生管理管理学生基础信息,包含个人信息添加、修改、删除和选课信息添加。 课程管理管理课程基础信息,包含课程信息添加、修改和删除。 成绩管理管理学生选课成绩信息,包含成绩登记和修改。 信息查询查询已经登记信息,包含学生基础信息、课程基础信息和成绩信息。3.2.2 功效结构图学生管理系统功效结构图3.4所表示。学生管理系统学生管理课程管理成绩管理信息查询添加增加删除学生查询增加课程查询修改修改修改删除学生选课成绩查询按姓名查询按学号查询按性别查询按专

22、业查询按学院查询按课程名称查询查询全部科目成绩按讲课老师查询图3.4 学生管理系统功效结构图 4 系统实现该系统由6个模块组成,包含学生管理系统主界面模块、学生信息管理模块、课程信息管理模块、成绩信息管理模块、信息查询模块和数据操作模块。下面分别加以叙述: 学生管理系统主界面模块学生管理系统主界面模块包含StuMS.java和StuMain.java两个文件。StuMS是学生管理系统主运行类,其中有运行整个程序main方法,该文件生成了StuMain类一个实例,从而生成了学生管理系统界面,图4.1所表示。StuMain类继承自JFrame类,实现了ActionListener接口,她有一个不带

23、参数结构方法StuMain(),用来生成StuMain实例。StuMain类将全部功效集中到菜单栏中,并经过调用其它模块来实现学生管理系统各个功效。图4.1 学生管理系统主界面 学生信息管理模块学生信息管理模块关键由StuInfo.java、AddStuInfo.java、EdiStuInfo.java、DelStuInfo.java、SelectCourse.java和StuInfoSearchSnum.java累计6个文件组成,其组成关系图4.2所表示。学生信息超类StuInfo.java增加学生信息AddStuInfo.java修改学生信息EdiStuInfo.java删除学生信息Del

24、StuInfo.java学生选课SelectCourse.java按学号查询StuInfoSearchSnum.java按学号查询StuInfoSearchSnum.java图4.2 学生信息管理模块功效结构图学生信息管理模块6个文件组成了主界面中“学生管理”菜单内容,其中包含增加、修改、删除和学生选课功效,图4.3所表示。图4.3 学生信息管理模块运行界面 课程信息管理模块课程信息管理模块关键由CourseInfo.java、AddCourseInfo.java、EditCourseInfo.java、DelCourseInfo.java、CourseInfoSearchCnum.java这

25、5个文件组成,其组成关系图4.4所表示。课程信息超类CourseInfo.java增加课程信息AddCourseInfo.java修改课程信息EditCourseInfo.java删除课程信息DelCourseInfo.java按课程号查询CourseInfoSearchCnum.java按课程号查询CourseInfoSearchCnum.java图4.4 课程信息管理模块功效结构图课程信息管理模块中5个类文件组成了主界面中“课程管理”菜单内容,其中包含增加、修改和删除功效,图4.5所表示。图4.5 课程信息管理模块运行界面 成绩信息管理模块成绩信息管理模块关键由GradeInfo.java

26、、AddGradeInfo.java、EditGradeInfo.java这3个文件组成,其组成关系图4.6所表示。成绩管理超类GradeInfo.java增加成绩信息AddGradeInfo.java修改成绩信息EditGradeInfo.java图4.6 成绩信息管理模块功效结构图成绩信息管理模块中3个类文件组成了主界面中“成绩管理”菜单内容,其中包含增加和修改功效,图4.7所表示。图4.7 成绩信息管理模块运行界面 信息查询模块信息查询模块关键包含学生查询、课程查询和成绩查询3个部分。信息查询运行主截面图4.8所表示。图4.8 学生信息查询模块运行界面学生查询由StuSearchSnum

27、.java、StuSearchSsex.java、StuSearchScollege.java、StuSearchSmajor.java和ResultStudent.java这6个文件组成,关键实现功效包含:按学号查询、按学生姓名查询、按性别查询、按学院查询和按专业查询。5 系统调试和测试5.1系统功效测试功效测试关键是测试程序模块是否实现了设计中所要求功效。功效测试中需要注意有:(1)查询功效中,有按单一查询条件进行查询,也有按多个查询条件组合查询。这里要注意多个查询条件之间关系。还有部分常识性问题,比如按月查询,闰月中二月天数。(2)录入功效中,需要注意是前台设置数值长度是否大于后台数值长

28、度,和前台和后台数据结构是否相符,很多时候录入功效无法实现是因为这些原因。还有就是必需录入字段设置时候有误。(3)测试删除功效中需要注意是单击删除按钮后,通常会出现提醒信息,问询是否确定删除。通常情况下,我们单击确定按钮查看信息是否被删除掉了,而忽略了单击取消按钮后程序反应:这时有可能是没有删除,还有一个可能是即便单击了取消按钮,也一样删除了数据。另外,在删除多条统计时候,要注意连续选中几条统计是否真正全部被删除掉了,即假如再根据这种查询方法查询,时候还能查询出来。有时候需要在数据库中设置一个标志位,而不是真正物理删除。所以在下一次查询中,可能还会被查询出来,这关键是因为在查询条件中没有将标志

29、考虑在内。(4)相关修改功效测试关键是看修改确定后是否数据真正已被修改了。这是最基础功效,需要注意是看是否能把不应该修改数据也修改成功了。 5.2系统调试常见错误1.NullPointerException异常通常是对一个为NULL值变量进行操作引发。为避免这种异常,最好在对变量操作之前检验,看它是否为NULL值。2.SQLException异常通常是因为SQL语句不正确引发。为避免这种异常,最好在使用SQL语句程序中捕捉此SQL异常。3.NumberFormatException异常这是因为数字格式错误而出现例外。为了避免出现这类错误,通常必需确保数据格式输入正确。4.数据库连接垃圾回收在实

30、际开发应用中,通常出现某一个对象未能关闭情况,为了预防这种情况发生,能够在相关对数据库操作Java类文件中增加自动回收函数,在JVM自动地回收对象时,取出使用连接对象,判定是否关闭,假如没相关闭则关掉。代码以下所表示:protected void finalize() try If(getConn()!=null&!getConn().isClosed() rs.cloes(); stm.close(); conn.close(); catch(SQLException e)6 试验小结经过这次课题设计并实现,尽管会碰到很多难题,不过让我愈加受益是在这次课题中得到经验、心得和锻炼。我发觉做试验

31、过程其实就是个不停处理问题过程,从中也感觉到试验成功愉快,一个人永远有学不玩知识,就算是试验中知识点全部学了,但在实际应用过程中仍然会碰到不少问题,碰到问题时要做到两点:一个是“查”,一个是“问”。不懂地方就得要自己找答案,能够从书本、网络中查找处理答案;再一个就是问周围同学。这次课程设计给我所学知识做了一个总结,为我深入学习编程做了铺垫。在本课题中存在不足之处是在所难免,本人将在以后加于改善。参考文件1 王克宏、郝建文. Java技术教程 M. 北京:清华大学出版社,9月.2 蔡敏、徐慧慧、黄炳强. UML基础和Rose建模教程 M. 北京:人民邮电出版社,5月.3 萨师煊、王珊. 数据库系

32、统概论(第三版)M. 北京:高等教育出版社,12月.4 蒙祖强、龚涛. Oracle 10g 数据库Java开发. 北京:中国水利水电出版社,6月.附录代码/ AddStuInfo.javapackage com.main;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import javax.swing.JButton;import javax.swing.JComboBox;import javax.swing.JFrame;import j

33、avax.swing.JLabel;import javax.swing.JTextField;import javax.swing.JOptionPane;import com.bean.Student;import com.dao.StudentDao;import com.db.DB;import com.main.DelteStudent.delAction;public class AddStuInfo extends JFrame StudentDao studao = new StudentDao();DB db = new DB();Connection conn = db.g

34、etConnection();JTextField snoText = null;JTextField snameText = null;JComboBox sexcom = null;JTextField ageText = null;JComboBox classcom = null;JComboBox departcom = null;public void init() / 窗体设计this.setLayout(null);this.setTitle(学生信息管理系统);this.setSize(500, 400);JLabel title = new JLabel(学生信息维护模块-

35、录入数据);title.setBounds(180, 20, 200, 30);this.add(title);JLabel snoLabel = new JLabel(学号);snoText = new JTextField();snoLabel.setBounds(20, 60, 40, 25);snoText.setBounds(60, 60, 120, 25);this.add(snoLabel);this.add(snoText);JLabel snameLabel = new JLabel(姓名);snameText = new JTextField();snameLabel.se

36、tBounds(220, 60, 40, 25);snameText.setBounds(260, 60, 120, 25);this.add(snameLabel);this.add(snameText);JLabel sexlabel = new JLabel(性别);String sex = 男, 女 ;sexcom = new JComboBox(sex);sexlabel.setBounds(20, 90, 40, 25);sexcom.setBounds(60, 90, 120, 25);this.add(sexlabel);this.add(sexcom);JLabel ageL

37、abel = new JLabel(年纪);ageText = new JTextField();ageLabel.setBounds(220, 90, 40, 25);ageText.setBounds(260, 90, 120, 25);this.add(ageLabel);this.add(ageText);JLabel classlabel = new JLabel(班级);String classes = 信息081, 信息082, 物流081 ;classcom = new JComboBox(classes);classlabel.setBounds(20, 120, 40, 2

38、5);classcom.setBounds(60, 120, 120, 25);this.add(classlabel);this.add(classcom);JLabel departlabel = new JLabel(学院);String depart = 造纸, 理学院, 机电学院 ;departcom = new JComboBox(depart);departlabel.setBounds(220, 120, 40, 25);departcom.setBounds(260, 120, 120, 25);this.add(departlabel);this.add(departcom

39、);/ 录入数据JButton addbtn = new JButton(录入);addbtn.setBounds(150, 180, 60, 30);addbtn.addActionListener(new addAction();this.add(addbtn);/ 返回JButton backbtn = new JButton(返回);backbtn.setBounds(230, 180, 60, 30);backbtn.addActionListener(new BackAction ();this.add(backbtn);this.setLocationRelativeTo(nul

40、l); / 使窗体居中this.setResizable(false);/ 固定窗体大小this.setVisible(true); / 设置窗体可见/this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); / 窗体关闭时,程序结束/ 获取文本框或选择框值public Student getStudent() Student stu = new Student();String sno = snoText.getText(); / 获取输入学号String sname = snameText.getText(); / 获取姓名String se

41、x = (String) sexcom.getSelectedItem();/ 获取性别int age = Integer.parseInt(ageText.getText().trim(); / 获取年纪String className = (String) classcom.getSelectedItem(); / 获取班级String depart = (String) departcom.getSelectedItem(); / 获取学院/ 封装信息stu.setSno(sno);stu.setName(sname);stu.setSex(sex);stu.setAge(age);st

42、u.setClassName(className);stu.setDepart(depart);return stu;public static void main(String args) AddStudent addstu = new AddStudent();addstu.init();/ 录入监听器class addAction implements ActionListener public void actionPerformed(ActionEvent e) Student stu = getStudent();boolean b = studao.save(stu, conn)

43、;if (b) JOptionPane.showMessageDialog(null, 数据录入成功!); else JOptionPane.showMessageDialog(null, 学号已存在,数据录入失败!);class BackAction implements ActionListenerpublic void actionPerformed(ActionEvent e) MainFrame m=new MainFrame (); m.init();/DelStuInfo.javapackage com.main;import java.awt.event.ActionEvent

44、;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.SQLException;import java.util.Vector;import javax.swing.JButton;import javax.swing.JComboBox;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import com.bean.Student;import com.dao.StudentDao;import com.db.D

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信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 

客服