(完整版)JAVA课程设计_基于mysql的学生信息管理系统毕业论文
毕业设计(论文)--基于java学生信息管理系统

江西科技师范大学毕业设计(论文)学生姓名:题目(中文):基于Java的学生信息管理系统(外文):Student Information Management Systembased on Java院(系):数学与计算机科学学院专业:计算机科学与技术年级:学号:指导教师:时间:2016 年 4 月2016年4月20日目录1.引言 (1)1.1 项目开发背景和意义 (1)1.2 国内外的研究现状 (1)2.系统主要技术及开发环境介绍 (2)2.1 Java语言 (2)2.2 Eclipse简介 (2)2.3 Mysql概述 (2)2.4 jsp技术概述 (3)3.系统需求分析 (3)3.1功能需求分析 (3)3.2框架结构设计分析 (4)3.3用户需求分析 (4)4.系统概要设计 (5)4.1系统结构图 (5)4.2系统主要功能模块设计 (5)4.3程序流程图 (7)4.4数据库设计 (8)4.4.1数据库概念结构设计 (9)4.4.2数据库逻辑结构设计 (11)5.系统实现 (13)5.1登录模块系统实现 (13)5.2基本信息管理实现 (14)5.3成绩管理实现 (21)5.4课程管理实现 (23)5.5班级管理实现 (26)6.总结和展望 (28)6.1总结 (28)6.2 展望 (29)参考文献 (29)基于Java的学生信息管理系统摘要:基于Java的学生信息管理系统分为五大模块:登录管理、学生基本信息管理、成绩管理、课程管理和班级管理。
本文详细介绍了前台界面的操作及后台数据库的链接,根据模块制定各个功能的所需界面的实现方法。
该系统具有十分清晰友好的界面,操作界面简洁,便于使用。
关键字:学生信息管理;MYSQL;JA VA1.引言1.1 项目开发背景和意义随着科学技术的快速发展和不断提高,尤其是计算机科学技术的日渐普及,其功能的强大以及运行速度已经被人们深刻地了解。
近几年来高校的办学模式多元化和学校规模的扩大,为了实现对学生信息进行科学管理,因此开发一个简单快速规范的平台。
java毕业设计学生信息管理系统

java毕业设计学生信息管理系统学生信息管理系统是一种电子化的管理工具,可以方便学校或教育机构对学生信息进行统一管理和查询。
它通过建立一个数据库来存储学生的个人信息,包括姓名、学号、性别、出生日期、联系方式等。
这个系统的主要功能有以下几个方面:1.学生信息管理:可以对学生的个人信息进行录入、修改和删除操作。
管理员可通过表单录入学生的基本信息,并且可以对已有的信息进行修改和删除。
系统还可以对学生的信息进行分类,比如按年级、班级或专业进行分类,以方便查询。
2.成绩管理:可以对学生的各科成绩进行管理和查询。
管理员可以录入学生的课程成绩,并能够根据需要对特定学生或特定科目的成绩进行查询和统计。
系统还可以自动生成成绩单或成绩报告,以方便教师或家长查看。
3.考勤管理:可以记录学生的出勤情况,并进行统计和分析。
系统可以记录学生每一天的出勤情况,包括请假、迟到、早退等情况,以方便教师和学校对学生的出勤进行监控和管理。
4.奖惩管理:可以记录学生的奖励和惩罚情况,并进行统计和分析。
系统可以记录学生获得的奖项,比如先进个人、先进班集体等,同时也记录学生的违纪情况,比如违反校规、作弊等,以便学校对学生的表现进行奖惩。
5.学生档案管理:可以存储和查看学生的各类档案资料,比如入学档案、体检档案、毕业档案等。
系统可以建立学生的个人档案,存储学生的各类资料,以方便学校和教师查看和管理。
以上是学生信息管理系统的主要功能,实际的系统还可以根据具体的需求进行扩展和完善。
这个系统可以提供给学校的管理部门、教职工和家长使用,通过电子化的方式管理和查询学生的信息,提高信息管理的效率和可靠性。
在设计和开发这个系统时,需要使用Java编程语言,结合数据库技术来存储和管理学生的信息。
可以使用MySQL、Oracle等关系型数据库来存储学生的信息,并通过Java的数据库连接工具实现对数据库的操作。
同时,可以使用Java的GUI编程工具,比如Swing或JavaFX,来设计界面,实现对学生信息的录入、修改和查询等功能。
基于MySQL学生信息管理系统本科论文

基于MySQL学生信息管理系统本科论文
简介
本论文旨在设计并实现一套基于MySQL数据库的学生信息管
理系统。
该系统将实现对学生信息的录入、查询、修改以及删除等
功能。
同时,通过对学生信息的统计分析可以在一定程度上评估学
校教学质量,为学校教学管理提供参考依据。
系统架构
该系统采用MySQL数据库作为数据存储后端,前端使用Java Swing进行开发,使用JDBC进行数据的增删改查操作。
系统分为
三个主要模块:学生信息管理、用户权限管理和数据统计分析模块。
功能模块
学生信息管理模块
学生信息管理模块包括学生信息的录入、查询、修改和删除四
个功能。
用户权限管理模块
用户权限管理模块包括用户登录、注册、修改密码等功能,保
证系统安全可靠。
数据统计分析模块
数据统计分析模块通过对学生信息进行数据分析,得出一些关
键数据,为学校教学质量的评估和对教学管理的决策提供数据支持。
总结
MySQL学生信息管理系统是一个将数据库技术、面向对象技术、统计分析和网络技术相结合的综合性学生信息管理系统。
它具
有操作简便、信息共享、数据安全稳定、维护方便等特点。
同时,
该系统为学校教学管理提供了一种新的、全面、系统的管理思路和
方案。
最新java+mysql学生信息管理系统课程设计报告

课设名称:学生成绩管理系统院(系):姓名:学号:年级:专业班级:指导教师:时间: 2012年6月目录第一部分摘要 (3)第二部分目的背景与意义 (4)第三部分需求分析 (4)第四部分系统设计 (4)4.1 结构设计 (4)4.2 功能结构图 (5)4.3 功能流程以及工作流描述 (6)第五部分数据库的设计 (6)5.1数据库设计 (6)5.2数据表的设计 (7)第六部分详细设计 (8)6.1 学生管理系统主界面模块 (8)6.2 学生信息管理模块 (9)6.3 课程信息管理模块 (11)6.4 查询模块 (12)图6.5 数据库操作模块 (13)第七部分课程设计心得 (13)第八部分附录(按名称排序) (14)第一部分摘要该项目开发的软件为学校学生信息管理系统软件,是鉴于目前学校学生人数剧增,学生信息呈爆炸性增长的前提下,学校对学生信息管理的自动化与准确化的要求日益强烈的背景下构思出来的,该软件设计完成后可用于所有教育单位(包括学校,学院等等)的学生信息的管理.目前社会上信息管理系统发展飞快,各个企事业单位都引入了信息管理软件来管理自己日益增长的各种信息,学生管理系统也是有了很大的发展,商业化的学生信息管理软件也不少.但本系统完全独立开发,力求使系统功能简洁明了,但功能齐全且易于操作学生信息管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要。
本文介绍了学生信息管理系统的开发整个过程,阐述了系统分析、系统设计、数据库设计和系统实施的全过程。
在开发方法上本系统利用了软件工程化的思想和方法,总体上采用结构化生命周期开发方法,具体模块实施采用了原型法和面向对象系统开发方法。
并采用JAVA作为开发工具,mysql作为后台数据库。
本系统具有学生管理、课程管理、成绩管理、信息查询等功能,分成四大模块,每个模块都相互联系,但不相互干扰,这符合了软件模块开发的思想。
本系统完成了学生信息的增加、修改、删除、查询和选课,课程信息的增加、修改、删除、查询,成绩的添加、修改、查询等功能。
Java版学生管理系统毕业设计论文

Java版学生管理系统毕业设计论文目录摘要............................................... 错误!未定义书签。
引言............................................... 错误!未定义书签。
第一章可行性分析. (2)1.1 问题的定义 (2)1.2 系统可行性分析 (3)第二章需求分析 (3)2.1 系统开发环境 (3)2.1.1 Java的主要特性 (3)2.1.2 SQL介绍 (5)2.1.3 C/S结构介绍 (5)2.2 系统需要解决的主要问题 (6)2.3 系统具备的基本功能 (6)第三章系统设计 (7)3.1 系统目标设计 (7)3.2 开发设计思想 (8)3.3 系统功能分析 (8)3.4 系统功能模块设计 (8)第四章数据库设计 (10)4.1 数据库需求分析 (10)4.2 数据库概念结构设计 (10)4.3 数据库逻辑结构设计 (11)4.4 SQL脚本实现 (11)第五章系统主要功能模块 (13)5.1 登陆和主窗体界面设计 (13)5.1.1 管理员界面主要代码 (16)5.2 学生界面设计 (18)5.2.1 学生界面主要代码 (21)5.3 教师界面设计 (23)5.3.1 教师界面主要代码 (25)结论 (27)参考文献 (28)附录............................................... 错误!未定义书签。
谢辞............................................... 错误!未定义书签。
第一章可行性分析1.1 问题的定义学生信息的管理是学校日常工作的重要组成部分。
高校招生规模逐渐扩大和认识制度的改革,在校学生人数将不断增加,而学生管理人员则相对减少。
加上我国高等学校基层学生管理头绪多,容杂,管理细,要求高,传统管理办法以基本不适用新形势的要求。
大学JAVA课程设计——学生信息管理系统

⼤学JAVA课程设计——学⽣信息管理系统摘要Java语⾔是当前最为流⾏的程序设计语⾔之⼀,诸多优秀的的特性使其成为被业界⼴泛认可和采⽤的⼯具。
本设计可以帮助同学掌握和应运所学的⾯向对象程序设计学⽣学籍信息管理系统的编程内容,培养同学们建⽴对象模型,处理对象和对象集关系和对图形⽤回界⾯设计编程以及⽂件和流的编程问题的能⼒,训练同学为解决实际问题⽽创建较完整的简单⾯向对象和管理系统编程应运程序的独⽴编程能⼒.本设计是⼀个常见的学⽣学籍管理系统应运程序.系统实现的功能:界⾯操作实现学⽣学籍信息的添加、删除、查询、修改功能,在⽂本⽂件中的的信息的动态处理。
关键词:学⽣学籍管理系统;图形⽤户界⾯设计;⽂件和流;java⽬录⼀、课程设计的⽬的与意义 (1)1.⽬的 (1)2.意义 (1)⼆、需求分析 (1)1. 学⽣学籍管理系统主界⾯模块 (1)2. 录⼊学⽣基本信息模块 (1)3. 修改学⽣基本信息模板 (1)3. 查询学⽣基本信息模板 (1)4. 删除学⽣基本信息模板 (1)三、分案设计 (3)1. 定义四个Panel⾯板 (3)四、⽅案的实施 (3)五、⼼得体会 (15)六、参考⽂献 (16)⼀、课程设计的⽬的与意义⽬的:深⼊理解java语⾔的语法规则及其优势,掌握类与⽅法的构造⽅法,掌握基于java的各种操作的实现⽅法,训练对基础知识和基本⽅法的综合运⽤能⼒,增强对算法的理解能⼒,提⾼软件设计能⼒。
在实践中培养独⽴分析问题和解决问题的作风和能⼒。
意义:熟练运⽤java语⾔、基本构造⽅法和算法的基础知识,独⽴编制⼀个具有中等难度的、解决实际应⽤问题的应⽤程序。
通过题意分析、选择类结构、算法设计、编制程序、调试程序、软件测试、结果分析、撰写课程设计报告等环节完成软件设计的全过程,不断地完善程序以提⾼程序的性能。
⼆、需求分析该学⽣学籍管理系统的所有功能均在⼀个Frame窗体中实现。
1.学⽣学籍管理系统主界⾯模块:采⽤Frame窗体来设置欢迎界⾯包括背景图⽚及字幕(可以设计成滚动字幕效果),左上⽅的菜单条设计成下拉式。
JAVA课程设计报告,基于mysql的学生信息管理系统

总结16一、课题介绍课题介绍 ...................................... ...................................... 3二、目的和要求目的和要求 ................................... ................................... 3三、任务计划任务计划 ...................................... .. (3)需求分析需求分析 (5)一、学生管理系统的发展现状学生管理系统的发展现状 ................................ ................................ 5二、系统功能分析系统功能分析 ................................... .. (5)三、系统结构框图系统结构框图 ................................... .. (5)数据库设计.........................................创建数据表的结构创建数据表的结构 ................................. (7)各表功能及其关系各表功能及其关系 ................................. (7)系统模块功能的实现与界面设计 (8)一、系统主要模块系统主要模块 ................................... ................................... 8二、欢迎界面欢迎界面 ..................................... ..................................... 9三、主菜单界面主菜单界面 ............................ ............................ 错误!未定义书签。
基于mysql的学生成绩管理系统毕业设计

基于mysql的学生成绩管理系统毕业设计题目:基于MySQL的学生成绩管理系统毕业设计在现代信息技术飞速发展的时代,数据库管理系统已经成为了各行各业不可或缺的一部分。
特别是在教育领域,学生成绩管理系统的建设对于学校和教师来说至关重要。
在这篇文章中,我将围绕着基于MySQL的学生成绩管理系统毕业设计展开一番讨论。
一、引言MySQL作为世界上最流行的开源关系数据库管理系统,其稳定性和高效性备受赞誉。
结合学生成绩管理系统的需求,借助MySQL数据库的特性,可以实现学生成绩的高效管理和统计分析。
接下来,我将从数据库设计、系统功能和使用体验三个方面,对基于MySQL的学生成绩管理系统毕业设计进行详细探讨。
二、数据库设计1. 数据库表结构设计在设计学生成绩管理系统数据库时,需要考虑如何构建合理的表结构,以便存储学生信息、课程信息和成绩信息等。
对于学生成绩管理系统而言,一般情况下包括学生表、课程表、成绩表等几个核心表。
其中,学生表包括学生ID、尊称、性别等字段;课程表包括课程ID、课程名称、学分等字段;成绩表包括学生ID、课程ID、成绩等字段。
通过合理的表结构设计,可以实现数据的高效存储和查询。
2. 索引和约束设计在数据库设计中,索引和约束的设计也是至关重要的。
通过对关键字段添加索引,可以提高数据的检索速度;利用约束来保证数据的完整性和一致性。
可以通过主键约束来保证学生ID和课程ID的唯一性;通过外键约束来建立表与表之间的关联关系。
这些都是数据库设计中不可或缺的一部分。
三、系统功能基于MySQL的学生成绩管理系统,其功能应该覆盖学生信息管理、课程信息管理、成绩录入和成绩查询等方面。
通过一个直观的用户界面,教师可以方便地录入学生成绩,并进行统计分析;学生和家长也可以通过系统进行成绩查询和学习进度跟踪。
在毕业设计中,需要考虑系统的易用性、稳定性和安全性,以确保其能够满足实际应用的需求。
四、使用体验从用户角度来看,基于MySQL的学生成绩管理系统应该具有良好的使用体验。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.目录概述 (3)一、课题介绍 (3)二、目的和要求 (3)三、任务计划 (3)需求分析 (5)一、学生管理系统的发展现状 (5)二、系统功能分析 (5)三、系统结构框图 (5)数据库设计 (7)一、创建数据表的结构 (7)二、各表功能及其关系 (7)系统模块功能的实现与界面设计 (8)一、系统主要模块 (8)二、欢迎界面 (9)三、主菜单界面 (9)四、子菜单 (10)五、学生信息录入 (11)六、学生信息查找 (12)七、学生信息删除 (13)八、学生信息修改 (14)课程设计心得 (15)一、程序结构设计培养 (15)二、书写习惯养成 (15)三、注意程序简洁 (15)总结 (16)参考文献 (17)附录:项目源代码 (18)一、数据库连接(D B C ONNECTION.JAVA) (18)二、学生信息数据库管理(S TUDENT_D AO.JAVA) (18)三、欢迎界面(W ELCOME.JAVA) (23)四、主菜单界面(M ENU.JAVA) (24)五、子菜单界面(S ON_M ENU.JAVA) (27)六、添加功能(A DD_M ENU.JAVA) (31)七、查找功能(F IND_M ENU.JAVA) (34)八、删除功能(D ELET_M ENU.JAVA) (36)九、修改功能(C HANGE_M ENU.JAVA) (38)概述一、课题介绍本次课程设计要求实现一个面向学生信息的管理系统。
学生信息系统是一个非常通用的管理系统。
很多大、中、小学校都需要拥有自己的学生档案管理系统,以便对本校学生的基本信息和学习情况进行管理,另一方面,较完整的学校信息管理系统同样也需要有学生信息管理系统的支持。
由通用的学生相关数据分析可知,系统包括院系管理、学生基本信息管理、课程管理、学生从成绩管理等主要功能。
该系统要求使用JA V A和MySQL作为开发工具和数据库管理系统,因此,系统设计涉及系统功能设计、数据库设计和系统界面等几个方面内容。
二、目的和要求2.了解JA V A语言的特点及使用的范围,掌握开发软件平台的搭建。
3.要求使用JA V A和MySQL开发一个学生信息管理系统,系统主要功能如下:1)院系信息管理院系系统信息的录入,包括院系编号、院系名称等信息;院系信息的修改、删除、查询。
2)学生基本信息管理学生基本信息的录入,包括学号、姓名、性别、出生日期、所在院系、班级等信息;学生基本信息的修改、删除、查询。
3)课程设置管理课程信息的录入,包括课程编号、课程名称、学分、课程内容等信息;课程信息的修改、删除、查询。
4)学生成绩管理学生成绩的录入,包括课程编号、课程名称、学分、课程内容等信息;学生信息的修改、删除、查询。
三、任务计划考虑到本次课程设计是独立完成,所以,不需要进行细致的分工,只要对框架和时间进行一定的规划就行。
需求分析一、学生管理系统的发展现状经过了一段时间的发展,当今,各大高校普遍都有了相对完善的学生管理系统,但在部分中小学中,这种高效的管理手段,仍未能全面普及。
目前已有的学生管理系统存在界面和操作相对繁琐,实现成本较高等缺点,仍需改进。
二、系统功能分析由通用的学生相关数据分析可知,系统包括院系管理、学生基本信息管理、课程管理、学生从成绩管理等主要功能1。
实现以上各模块的功能,需要以下子功能:1数据库连接的建立与断开2数据库的数据操作,包括插入、查询、删除、修改4.系统操作界面与数据库操作相关联三、系统结构框图从系统功能表述可以看出,该系统可以实现几个功能,根据这些功能设计出系统的功能模块如错误!未找到引用源。
所示:1因各模块基本功能相近,故本文仅以学生基本信息管理功能为例数据库设计一、创建数据表的结构(以学生基本信息管理系统为例)1.主要数据项学号、姓名、性别、出生年月、所在院系、所在班级2.数据类型及要求为操作方便,均定义为字符串。
其中学号不得重复。
3.MySQL建表语句二、各表功能及其关系1.本系统各表分别存储相应数据。
2.涉及的数据表之间相对独立,但仍有少量关联。
1)学生成绩表包含对学生基本信息表和课程设置表的映射2)学生基本信息表包含对院系信息表的映射系统模块功能的实现与界面设计一、系统主要模块本次课程设计的主要目的,是通过实践,让我对所学到的知识进行考验和巩固。
经过一点时间的了解。
设计出了系统的总体框架,参看错误!未找到引用源。
由于各模块的功能及原理基本相同,只是涉及的数据类型有所不同,所以本次只对学生基本信息管理的功能进行了较为全面的设计。
由于时间关系,其余功能没有进行具体设计。
(具体的在以下说明中会提及)系统界面设计如下:模块名称相关的类菜单界面Menu.class数据库管理模块:模块名称相关的类学生信息数据库管理StudentDao.class院系信息数据库管理DepartDao.class课程信息数据库管理CourseDao.class成绩信息数据库管理ScoreDao.class模块功能界面设计如下:模块名称相关的类添加功能Add_Menu.class查询功能Find_Menu.class删除功能Delet_Menu.class二、欢迎界面1.实际运行效果(错误!未找到引用源。
)2.实现方法1)继承了JPanel,并在构造函数中建立JFrame做外框;2)用JLabel显示欢迎信息内容;3)确定按钮在监听到事件后,new出一个Menu类;三、主菜单界面1.实际运行效果(错误!未找到引用源。
)2.实现方法1)继承JFrame类,在内部建立的JPanel插入JButton;2)定义相应按钮的响应事件,调用子菜单的不同建立函数(如new Son_menu().studentmenu(););四、子菜单1.实际运行效果(错误!未找到引用源。
)2.实现方法1)建立JFrame,JTable,JButton等工具;2)建立数据库链接;3)将数据库里的数据逐个读入到JTable类;4)对JButton加入ActionListener,并关联相应的功能菜单,如:五、学生信息录入1.实际运行效果(图表5)实现方法1)由输入的学生信息构造一个Student类;2)利用SQL语句,将Student类插入到数据库;六、学生信息查找1.实际运行效果(图标6)实现方法1)由输入的学号,利用SQL语句找到相关数据,返回一个Student类;2)有则将student的相关信息显示到JTextArea上,没有则显示“学生信息未找到”;七、学生信息删除1.实际运行效果(图表7)2.实现方法1)应用查找功能相似的原理先搜索到要删除的信息;2)利用SQL语句将找到的信息删除,并显示“学生信息以删除”。
八、学生信息修改1.实际运行效果2.实现方法1)应用查找功能相似的原理先搜索到要修改的信息;2)应用删除功能相似的原理删除要修改的信息;3)调用录入类,录入要修改的新信息;课程设计心得一、程序结构设计思路培养为了简化程序,我并没有为每个窗口都建一个类,而是把类似的窗口例如student_add,depart_add等建一个类Add_Menu,调用不同的函数建立不同窗口,如:student_add(),depart_add();二、书写习惯的养成好的书写习惯是一个优秀程序员的必备品质。
在写代码的时候要随时注意书写的格式。
如:1.赋值语句的“=”的左右应该用空格隔开;a=1;改为a = 1;这样更为清晰;2.大括号一定要对齐;class {……public void …..{…….}}三、注意程序简洁在逐渐适应面向对象编程以后。
依然应道保持过去在编程中的一些好习惯。
使用Vector等,也需要留意效率。
不能只顾用法方便。
总结系统设计过程中,主要涉及了包括JA V A基本语法、AWT,Java Swing,MySQL等方面的相关知识。
设计中遇到不少问题,到图书馆查阅了不少资料,向王宋君老师请教过不少问题,老师都一一细心解答,非常感谢。
由于时间仓促,原本设想的功能还没有一一实现,待进一步完善。
参考文献1.《Thinking in Java(Java编程思想)》第四版,机械工业出版社,【美】Bruce Eckel著,陈昊鹏译;2.《精通Java Swing程序设计》中国铁道出版社,林智扬、范明翔、陈锦辉编著;3.《深入浅出Java Swing程序设计》中国铁道出版社,林智扬、范明翔、陈锦辉编著;4.《Java GUI程序设计》清华大学出版社,肖刚等编著;5.《Java信息系统设计与开发实例》机械工业出版社,黄明、梁旭、曹利超编著;6.《Java范例大全》机械工业出版社,尹继平、张帆编著;附录:项目源代码一、数据库连接(DbConnection.java)package dao;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;public class DbConnection {public static Connection getConnection(){Connection con = null;String url = "jdbc:mysql:localhost:3306java";String userName= "root";String password = "l057788y";try {Class.forName("com.mysql.jdbc.Driver");con = DriverManager.getConnection(url,userName,password);System.out.println("数据库连接成功");} catch (ClassNotFoundException e) {TODO Auto-generated catch blocke.printStackTrace();return null;} catch (SQLException e) {TODO Auto-generated catch blocke.printStackTrace();}return con;}public static void closeConnection(Connection con){ if(con!=null){try {con.close();con = null;} catch (SQLException e) {TODO Auto-generated catch blocke.printStackTrace();}}}public static void main(String args[]){getConnection();}}}二、学生信息数据库管理(Student_Dao.java)package dao;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.util.ArrayList;import model.Depart;import model.Student;public class StudentDao {public boolean addInfo(Student student){boolean flag;Connection con = DbConnection.getConnection();PreparedStatement ps;String sql = "";ResultSet rs;try {sql = "insert into student values(?,?,?,?,?,?)"; 用问号代替ps = con.prepareStatement(sql);ps.setInt(1, student.getId());ps.setString(2, student.getName());ps.setString(3, student.getSex());ps.setString(4, student.getBorn_date());ps.setString(5, student.getDepart_id());ps.setString(6, student.getClass_name());ps.execute();System.out.println("添加了一条记录");flag = true;} catch (SQLException e) {TODO Auto-generated catch blocke.printStackTrace();flag = false;}finally{DbConnection.closeConnection(con);}return flag;}public ArrayList<Student> findAll(){ArrayList<Student> students = new ArrayList<Student>();Connection con = DbConnection.getConnection();Statement sta;ResultSet rs;try {sta = con.createStatement();rs = sta.executeQuery("SELECT * FROM student"); 从表depart中查询所有数据while(rs.next()){Student student = new Student();student.setId(rs.getInt(1));student.setName(rs.getString(2));student.setSex(rs.getString(3));student.setBorn_date(rs.getString(4));student.setDepart_id(rs.getString(5));student.setClass_name(rs.getString(6));System.out.println(student.getName());students.add(student);}rs.close();sta.close();} catch (SQLException e) {TODO Auto-generated catch blocke.printStackTrace();}finally{DbConnection.closeConnection(con);}return students;}public Student findOne(int id){Student student = new Student();Connection con = DbConnection.getConnection();PreparedStatement ps;String sql = "";ResultSet rs;try {sql = "SELECT * FROM student where id=?";ps = con.prepareStatement(sql);ps.setInt(1, id);rs = ps.executeQuery(); 从表depart中查询所有数据if(rs.next()){student.setId(rs.getInt("id")); 注意数据类型要对应student.setName(rs.getString("Name"));student.setSex(rs.getString("Sex"));student.setBorn_date(rs.getString("birthday"));student.setDepart_id(rs.getString("Depart"));student.setClass_name(rs.getString("Class"));System.out.println("id:"+student.getId()+" name:"+student.getName());}else{System.out.println("没有数据");}rs.close();ps.close();} catch (SQLException e) {TODO Auto-generated catch blocke.printStackTrace();}finally{DbConnection.closeConnection(con);}return student;}public boolean deleteInfo(Student student){boolean flag;Connection con = DbConnection.getConnection();PreparedStatement ps;String sql = "";try {sql = "delete from student where id=?"; 用问号代替ps = con.prepareStatement(sql);ps.setInt(1, student.getId());ps.execute();System.out.println("成功删除了一条记录");flag = true;} catch (SQLException e) {TODO Auto-generated catch blocke.printStackTrace();flag = false;}finally{DbConnection.closeConnection(con);}return flag;}}三、欢迎界面(Welcome.java)package menu;import java.awt.BorderLayout;import java.awt.Font;import java.awt.GridLayout;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.swing.*;public class Welcome {JFrame w = new JFrame("managementsystem");JPanel p1 = new JPanel();JPanel p2 = new JPanel();JLabel l = new JLabel("欢迎进入学生信息管理系统!");JButton b = new JButton("确定");Welcome(){w.addWindowListener(new Wind());b.addMouseListener(new Monitor2());Font font = new Font( "欢迎进入学生信息管理系统!", Font.PLAIN, 40);l.setFont(font);w.add(p1,BorderLayout.CENTER);w.add(p2,BorderLayout.SOUTH);p1.add(l);l.setBounds(p1.WIDTH2-100,p1.HEIGHT);p2.add(b);b.setBounds(p2.WIDTH2-10,p2.HEIGHT);w.setBounds(400, 200, 600, 200);w.setVisible(true);}private class Monitor2 extends MouseAdapter{p ublic void mousePressed(MouseEvent e) {new Menu();w.setVisible(false);}}public static void main(String args[]){new Welcome();}private class Wind extends WindowAdapter{public void windowClosing(WindowEvent e) {w.setVisible(false);System.exit(0);}}}四、主菜单界面(Menu.java)package menu;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.swing.*;public class Menu {JFrame f = new JFrame("菜单");JPanel p = new JPanel();Menu(){JButton b_depart = new JButton("院系信息"); JButton b_student = new JButton("学生信息"); JButton b_course = new JButton("课程信息"); JButton b_score = new JButton("成绩信息"); JButton ex = new JButton("退出");b_score.addActionListener(new Monitor2()); ex.addActionListener(new Monitor2());b_depart.addActionListener(new Monitor2()); b_student.addActionListener(new Monitor2()); b_course.addActionListener(new Monitor2());f.addWindowListener(new Wind());f.add(p);p.setLayout(new GridLayout(1,2));JLabel l = new JLabel();JPanel p2 = new JPanel();p.add(l);p.add(p2);p2.setLayout(new GridLayout(5,1));p2.add(b_depart);p2.add(b_student);p2.add(b_course);p2.add(b_score);p2.add(ex);f.setBounds(400);f.setVisible(true);}public static void main(String args[]){new Menu();}private class Wind extends WindowAdapter{ public void windowClosing(WindowEvent e) {f.setVisible(false);System.exit(0);}}private class Monitor2 implements ActionListener{p ublic void actionPerformed(ActionEvent e) { if(e.getActionCommand().equals("退出")){new Menu();System.exit(0);}if(e.getActionCommand().equals("学生信息")){ new Son_menu().studentmenu();f.setVisible(false);}i f(e.getActionCommand().equals("院系信息")){new Son_menu().departmenu();f.setVisible(false);}i f(e.getActionCommand().equals("课程信息")){new Son_menu().coursemenu();f.setVisible(false);}i f(e.getActionCommand().equals("成绩信息")){new Son_menu().scoremenu();f.setVisible(false);}}}}五、子菜单界面(Son_Menu.java)package menu;import java.awt.BorderLayout;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.ArrayList;import java.util.Vector;import javax.swing.*;import javax.swing.table.DefaultTableModel; import model.Student;import dao.StudentDao;public class Son_menu {JFrame f ;JPanel p1 = new JPanel();JPanel p2 = new JPanel();JButton b_add = new JButton("录入");JButton b_delet = new JButton("删除");JButton b_change = new JButton("修改");JButton b_find = new JButton("查找");JButton b_return = new JButton("返回");JTable t;DefaultTableModel tableModel= null;public static void main(String args[]){ new Son_menu().studentmenu();}学生信息菜单public void studentmenu(){f = new JFrame("学生信息");ArrayList scan = new ArrayList();Vector columnNames = new Vector();columnNames.add("学号");columnNames.add("姓名");columnNames.add("性别");columnNames.add("出生年月");columnNames.add("学院代码");columnNames.add("所在班级");tableModel = new DefaultTableModel(columnNames,0); tableModel.addRow(columnNames);StudentDao ddao = new StudentDao();scan = ddao.findAll();for(int i=0;i<scan.size();i++){Vector v = new Vector();Student student = (Student)scan.get(i);v.add(student.getId());v.add(student.getName());v.add(student.getSex());v.add(student.getBorn_date());v.add(student.getDepart_id());v.add(student.getClass_name());tableModel.addRow(v);}t = new JTable(tableModel);t.setVisible(true);f.setLayout(new BorderLayout());f.add(p1,BorderLayout.NORTH);f.add(p2,BorderLayout.SOUTH);f.setBounds(400);p1.add(t);b_add.setActionCommand("学生录入");b_delet.setActionCommand("学生删除");b_change.setActionCommand("学生修改");b_find.setActionCommand("学生查找");b_add.addActionListener(new Monitor2());b_delet.addActionListener(new Monitor2());b_change.addActionListener(new Monitor2());b_find.addActionListener(new Monitor2());b_return.addActionListener(new Monitor2());p2.add(b_add);p2.add(b_delet);p2.add(b_change);p2.add(b_find);p2.add(b_return);f.setVisible(true);}院系信息菜单public void departmenu(){f = new JFrame("院系信息");t = new JTable(100,2);t.setVisible(true);f.setLayout(new BorderLayout());f.add(p1,BorderLayout.NORTH);f.add(p2,BorderLayout.SOUTH);f.setBounds(400);p1.add(t);b_add.setActionCommand("院系录入");b_delet.setActionCommand("院系删除");b_change.setActionCommand("院系修改");b_find.setActionCommand("院系查找");b_add.addActionListener(new Monitor2());b_delet.addActionListener(new Monitor2());b_change.addActionListener(new Monitor2());b_find.addActionListener(new Monitor2());b_return.addActionListener(new Monitor2());p2.add(b_add);p2.add(b_delet);p2.add(b_change);p2.add(b_find);p2.add(b_return);f.setVisible(true);}课程信息菜单public void coursemenu(){f = new JFrame("课程信息");t = new JTable(100,2);t.setVisible(true);f.setLayout(new BorderLayout());f.add(p1,BorderLayout.NORTH);f.add(p2,BorderLayout.SOUTH);f.setBounds(400);p1.add(t);b_add.setActionCommand("课程录入");b_delet.setActionCommand("课程删除");b_change.setActionCommand("课程修改");b_find.setActionCommand("课程查找");b_add.addActionListener(new Monitor2());b_delet.addActionListener(new Monitor2());b_change.addActionListener(new Monitor2());b_find.addActionListener(new Monitor2());b_return.addActionListener(new Monitor2());p2.add(b_add);p2.add(b_delet);p2.add(b_change);p2.add(b_find);p2.add(b_return);f.setVisible(true);}成绩信息菜单public void scoremenu(){f = new JFrame("成绩信息");t = new JTable(100,2);t.setVisible(true);f.setLayout(new BorderLayout());f.add(p1,BorderLayout.NORTH);f.add(p2,BorderLayout.SOUTH);f.setBounds(400);p1.add(t);b_add.setActionCommand("成绩录入");b_delet.setActionCommand("成绩删除");b_change.setActionCommand("成绩修改");b_find.setActionCommand("成绩查找");b_add.addActionListener(new Monitor2());b_delet.addActionListener(new Monitor2());b_change.addActionListener(new Monitor2());b_find.addActionListener(new Monitor2());b_return.addActionListener(new Monitor2());p2.add(b_add);p2.add(b_delet);p2.add(b_change);p2.add(b_find);p2.add(b_return);f.setVisible(true);}private class Monitor2 implements ActionListener{ p ublic void actionPerformed(ActionEvent e) {if(e.getActionCommand().equals("返回")){f.setVisible(false);new Menu();}if(e.getActionCommand().equals("学生录入")){f.setVisible(false);new Add_Menu().student_add();}if(e.getActionCommand().equals("学生删除")){f.setVisible(false);new Delet_Menu().student_delet();}if(e.getActionCommand().equals("学生修改")){f.setVisible(false);new Change_Menu().student_change();}if(e.getActionCommand().equals("学生查找")){f.setVisible(false);new Find_Menu().student_find();}}}}六、添加功能(Add_Menu.java)package menu;import java.awt.BorderLayout;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;import model.Student;import dao.StudentDao;public class Add_Menu {JFrame add_menu;JPanel p1,p2,p11,p12,p13,p14,p15,p16;JLabel l1,l2,l3,l4,l5,l6;JTextField t1,t2,t3,t4,t5,t6;JButton b_ok,b_cancel;public void student_add(){add_menu = new JFrame("录入学生信息");p1 = new JPanel();p2 = new JPanel();p11 = new JPanel();p12 = new JPanel();p13 = new JPanel();p14 = new JPanel();p15 = new JPanel();p16 = new JPanel();p1.setLayout(new GridLayout(6,1));l1 = new JLabel(" 学号:");l2 = new JLabel(" 姓名:");l3 = new JLabel(" 性别:");l4 = new JLabel("出生日期:");l5 = new JLabel("院系代码:");l6 = new JLabel("所在班级:");t1 = new JTextField(16);t2 = new JTextField(16);t3 = new JTextField(16);t4 = new JTextField(16);t5 = new JTextField(16);t6 = new JTextField(16);p11.add(l1);p11.add(t1);p12.add(l2);p12.add(t2);p13.add(l3);p13.add(t3);p14.add(l4);p14.add(t4);p15.add(l5);p15.add(t5);p16.add(l6);p16.add(t6);p1.add(p11);p1.add(p12);p1.add(p13);p1.add(p14);p1.add(p15);p1.add(p16);p2.add(b_ok = new JButton("确定"));p2.add(b_cancel = new JButton("取消"));b_ok.addActionListener(new Monitor2());b_cancel.addActionListener(new Monitor2()); add_menu.add(p1,BorderLayout.NORTH);add_menu.add(p2,BorderLayout.SOUTH);add_menu.setBounds(300);add_menu.setVisible(true);}public static void main(String args[]){new Add_Menu().student_add();}private class Monitor2 implements ActionListener{ p ublic void actionPerformed(ActionEvent e) {if(e.getActionCommand().equals("取消")){add_menu.setVisible(false);new Son_menu().studentmenu();}if(e.getActionCommand().equals("确定")){Student s = new Student();s.setId(Integer.parseInt(t1.getText()));s.setName(t2.getText());s.setSex(t3.getText());s.setBorn_date(t4.getText());s.setDepart_id(t5.getText());s.setClass_name(t6.getText());new StudentDao().addInfo(s);add_menu.setVisible(false);new Son_menu().studentmenu();}}}}七、查找功能(Find_Menu.java)package menu;import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;import dao.StudentDao;import model.Student;public class Find_Menu {Student find_student;JFrame find_menu;JPanel p1,p2;JLabel l1;JTextField text;JTextArea show;JButton find_find,find_cancel;public void student_find(){find_menu = new JFrame("学生信息查找");p1 = new JPanel();p2 = new JPanel();l1 = new JLabel("学号:");text = new JTextField(16);show = new JTextArea();find_find = new JButton("搜索");find_cancel = new JButton("取消");find_cancel.addActionListener(new Monitor2());find_find.addActionListener(new Monitor2());find_menu.add(p1,BorderLayout.NORTH);find_menu.add(show,BorderLayout.CENTER);find_menu.add(p2,BorderLayout.SOUTH);p1.add(l1);p1.add(text);p2.add(find_find);p2.add(find_cancel);find_menu.setBounds(400);find_menu.setVisible(true);}private class Monitor2 implements ActionListener{ p ublic void actionPerformed(ActionEvent e) {if(e.getActionCommand().equals("取消")){find_menu.setVisible(false);new Son_menu().studentmenu();}if(e.getActionCommand().equals("搜索")){find_student = newStudentDao().findOne(Integer.parseInt(text.getText()));if(find_student.getName()!= null){String str = " 姓名:"+find_student.getName()+"\n 学号:"+find_student.getId()+"\n 性别:"+find_student.getSex()+"\n 生日:"+find_student.getBorn_date()+"\n 院系代号:"+find_student.getDepart_id()+"\n 班级:"+find_student.getClass_name()+" ";show.setText("");show.insert(str, 1);}else{show.setText("");show.insert("学生信息未找到", 1);}}if(e.getActionCommand().equals("删除")){new StudentDao().deleteInfo(find_student);show.setText("");show.insert("学生信息已删除", 1);}}}public static void main(String args[]){ new Find_Menu().student_find();}}八、删除功能(Delet_Menu.java)package menu;import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;import model.Student;import dao.StudentDao;public class Delet_Menu {Student delet_student;JFrame delet_menu;JPanel p1,p2;JLabel l1;JTextField text;JTextArea show;JButton delet_ok,delet_find,delet_cancel;public void student_delet(){delet_menu = new JFrame("学生信息删除");p1 = new JPanel();p2 = new JPanel();l1 = new JLabel("学号:");text = new JTextField(16);show = new JTextArea();delet_ok = new JButton("删除");delet_find = new JButton("搜索");delet_cancel = new JButton("取消");delet_ok.setEnabled(false);delet_cancel.addActionListener(new Monitor2());delet_find.addActionListener(new Monitor2());delet_ok.addActionListener(new Monitor2());delet_menu.add(p1,BorderLayout.NORTH);delet_menu.add(show,BorderLayout.CENTER);delet_menu.add(p2,BorderLayout.SOUTH);p1.add(l1);p1.add(text);p2.add(delet_find);p2.add(delet_ok);p2.add(delet_cancel);delet_menu.setBounds(400);delet_menu.setVisible(true);}private class Monitor2 implements ActionListener{p ublic void actionPerformed(ActionEvent e) {if(e.getActionCommand().equals("取消")){delet_menu.setVisible(false);new Son_menu().studentmenu();}if(e.getActionCommand().equals("搜索")){delet_student = newStudentDao().findOne(Integer.parseInt(text.getText()));if(delet_student.getName()!= null){String str = "找到学生姓名:"+delet_student.getName()+" 学号:"+delet_student.getId()+" ";show.setText("");show.insert(str, 1);delet_ok.setEnabled(true);}else{show.setText("");show.insert("学生信息未找到", 1);}}if(e.getActionCommand().equals("删除")){new StudentDao().deleteInfo(delet_student);show.setText("");show.insert("学生信息已删除", 1);}}}public static void main(String args[]){new Delet_Menu().student_delet();}}九、修改功能(Change_Mene.java)package menu;import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;import dao.StudentDao;import model.Student;public class Change_Menu {Student change_student;JFrame change_menu;JPanel p1,p2;JLabel l1;JTextField text;JTextArea show;JButton delet_change,delet_find,delet_cancel;public void student_change(){change_menu = new JFrame("学生信息修改");p1 = new JPanel();p2 = new JPanel();l1 = new JLabel("学号:");text = new JTextField(16);show = new JTextArea();delet_change = new JButton("修改");delet_find = new JButton("搜索");delet_cancel = new JButton("取消");delet_change.setEnabled(false);delet_cancel.addActionListener(new Monitor2());delet_find.addActionListener(new Monitor2());delet_change.addActionListener(new Monitor2());change_menu.add(p1,BorderLayout.NORTH);change_menu.add(show,BorderLayout.CENTER);change_menu.add(p2,BorderLayout.SOUTH);p1.add(l1);p1.add(text);p2.add(delet_find);p2.add(delet_change);p2.add(delet_cancel);change_menu.setBounds(400);change_menu.setVisible(true);}private class Monitor2 implements ActionListener{p ublic void actionPerformed(ActionEvent e) {if(e.getActionCommand().equals("取消")){change_menu.setVisible(false);new Son_menu().studentmenu();}if(e.getActionCommand().equals("搜索")){change_student = newStudentDao().findOne(Integer.parseInt(text.getText()));if(change_student.getName()!= null){String str = "找到学生姓名:"+change_student.getName()+" 学号:"+change_student.getId()+" ";show.setText("");show.insert(str, 1);delet_change.setEnabled(true);}else{show.setText("");show.insert("学生信息未找到", 1);}}if(e.getActionCommand().equals("修改")){new StudentDao().deleteInfo(change_student);show.setText("");change_menu.setVisible(false);new Add_Menu().student_add();}}}public static void main(String args[]){new Change_Menu().student_change();}}。