学生管理系统课程设计(java)

合集下载

java学生信息管理系统课程设计

java学生信息管理系统课程设计

java学生信息管理系统课程设计一、课程目标知识目标:1. 理解Java面向对象编程的基本概念,掌握类与对象的关系、封装、继承和多态性;2. 学会使用Java集合框架管理学生信息,掌握ArrayList、HashMap等常用集合类的使用方法;3. 掌握Java异常处理机制,提高程序的健壮性;4. 理解数据库基本概念,学会使用SQLite数据库存储和管理学生信息。

技能目标:1. 能够运用面向对象思想设计学生信息管理系统,实现学生信息的增删改查功能;2. 能够使用Java集合框架对学生信息进行有效管理;3. 能够编写简单的数据库操作语句,实现对学生信息的数据存储和查询;4. 能够运用所学知识解决实际问题,具备一定的编程实践能力。

情感态度价值观目标:1. 培养学生团队协作精神,提高沟通与协作能力;2. 增强学生编程兴趣,激发创新意识,培养探索精神;3. 培养学生良好的编程习惯,注重代码规范和程序优化;4. 培养学生严谨的学习态度,面对问题敢于挑战,勇于克服困难。

课程性质:本课程为信息技术课程,以实践操作为主,注重培养学生的编程能力和实际应用能力。

学生特点:学生具备一定的Java基础,了解面向对象编程概念,但对实际项目开发经验不足。

教学要求:结合学生特点和课程性质,采用项目驱动教学法,引导学生自主探究,注重实践操作,提高学生的编程能力和解决问题的能力。

同时,关注学生的情感态度价值观培养,提高学生的综合素质。

通过本课程的学习,使学生能够独立完成一个简单的学生信息管理系统,为后续学习打下坚实基础。

二、教学内容1. 面向对象编程基础- 类与对象的关系- 封装、继承和多态性- 抽象类和接口2. Java集合框架- ArrayList、LinkedList、HashSet、HashMap等常用集合类- 集合类的使用场景和性能分析3. Java异常处理- 异常分类和异常处理机制- try-catch-finally结构- 自定义异常4. 数据库基础- 数据库概念和SQLite数据库- 数据表的设计与创建- SQL语句:增删改查操作5. 学生信息管理系统功能模块- 系统需求分析- 功能模块划分:学生信息管理、成绩管理、课程管理等- 编程实现各模块功能6. 项目实践与拓展- 系统测试与调试- 代码优化与重构- 项目拓展:增加用户权限管理、数据可视化等教学内容安排与进度:第一周:面向对象编程基础第二周:Java集合框架第三周:Java异常处理第四周:数据库基础第五周:学生信息管理系统功能模块设计第六周:项目实践与拓展教材关联:本教学内容与《Java程序设计》教材相关章节紧密关联,涵盖了面向对象编程、Java集合框架、异常处理和数据库基础等知识点。

学生管理系统java课程设计

学生管理系统java课程设计

学生管理系统java课程设计一、课程目标知识目标:1. 掌握Java语言面向对象编程的基本原理,包括类、对象、继承、封装和多态;2. 学会使用Java集合框架,如List、Set、Map等,进行数据管理;3. 理解数据库连接和SQL语句执行过程,掌握JDBC操作数据库的基本方法;4. 了解学生管理系统的业务需求,掌握系统设计的基本流程。

技能目标:1. 能够运用面向对象思想,独立设计并实现Java类;2. 能够运用Java集合框架,实现对学生信息的增、删、改、查等操作;3. 能够使用JDBC连接数据库,执行SQL语句,实现数据的持久化存储;4. 能够根据需求分析,完成学生管理系统的设计与实现,具备一定的项目实践能力。

情感态度价值观目标:1. 培养学生的团队协作意识,学会与他人共同分析问题、解决问题;2. 培养学生面对实际问题的解决能力,增强自信心和成就感;3. 培养学生对计算机编程的兴趣,激发自主学习和持续探索的热情;4. 培养学生具备良好的编程习惯,注重代码规范和可维护性。

本课程针对高年级学生,结合学科特点和教学要求,以实际项目为载体,使学生掌握Java编程的核心知识,提高实际操作能力,培养团队协作和解决问题的能力。

通过课程学习,为学生今后的软件开发和项目实践打下坚实基础。

二、教学内容1. Java面向对象编程基础:讲解类与对象的概念,属性、方法、构造器的定义与使用,掌握封装、继承和多态等核心概念。

教材章节:第1章 面向对象编程基础内容安排:2课时2. Java集合框架:学习List、Set、Map等集合接口及其实现类的使用,掌握集合的增删改查操作。

教材章节:第2章 Java集合框架内容安排:2课时3. 数据库基础与JDBC:介绍数据库的基本概念,讲解JDBC连接数据库、执行SQL语句、处理结果集等方法。

教材章节:第3章 数据库编程内容安排:3课时4. 学生管理系统需求分析:分析学生管理系统的功能模块,明确系统需求,学习如何进行需求调研和撰写需求文档。

学生管理系统JAVA课课程设计

学生管理系统JAVA课课程设计

学生管理系统JAVA课课程设计一、教学目标本课程的目标是让学生掌握学生管理系统的Java编程知识,能够运用Java语言实现一个简单的学生管理系统。

具体目标如下:1.知识目标:–理解Java语言的基本语法和数据结构。

–掌握Java中的控制结构和面向对象编程思想。

–了解Java中的文件操作和数据库连接。

2.技能目标:–能够使用Java编写简单的程序,实现学生的增删改查功能。

–能够使用Java连接数据库,实现对学生信息的持久化存储。

–能够使用Java的文件操作,读写学生数据。

3.情感态度价值观目标:–培养学生的编程兴趣,提高学生解决问题的能力。

–培养学生团队协作的精神,提高学生的沟通表达能力。

二、教学内容根据课程目标,本课程的教学内容主要包括以下几个部分:1.Java语言基础:包括基本语法、数据类型、变量、运算符等。

2.控制结构:包括条件语句、循环语句等。

3.面向对象编程:包括类、对象、继承、多态等。

4.文件操作:包括文件的读写、文件管理等。

5.数据库连接:包括JDBC的概念、数据库的连接与操作等。

6.学生管理系统的设计与实现:包括系统需求分析、系统设计、功能实现等。

三、教学方法为了达到课程目标,本课程将采用以下几种教学方法:1.讲授法:用于讲解Java语言基础、控制结构、面向对象编程等理论知识。

2.案例分析法:通过分析实际案例,让学生理解并掌握文件操作和数据库连接的方法。

3.实验法:让学生动手编写代码,实现学生管理系统,提高学生的实际操作能力。

4.小组讨论法:分组让学生讨论问题,培养学生的团队协作和沟通能力。

四、教学资源为了支持课程的顺利进行,我们将准备以下教学资源:1.教材:《Java编程思想》等。

2.参考书:《Java核心技术》、《Java Web开发》等。

3.多媒体资料:教学PPT、视频教程等。

4.实验设备:计算机、网络环境、数据库服务器等。

五、教学评估本课程的评估方式包括平时表现、作业和考试三个部分,以保证评估的客观性和公正性。

学生学籍管理系统java课程设计

学生学籍管理系统java课程设计

学生学籍管理系统Java课程设计一、介绍学生学籍管理系统是一套用于学校管理学生信息的软件系统。

本系统旨在通过Java编程,实现学生信息的录入、管理、修改和查询等功能。

在课程设计中,我们将使用Java语言和相关技术,如面向对象的编程思想、GUI设计等,来完成这一学生学籍管理系统的设计与实现。

二、功能需求1.学生信息录入:包括学生的学号、姓名、性别、年龄等基本信息的录入;2.学生信息查询:根据学生学号或姓名等信息进行查询,并将查询结果显示在界面上;3.学生信息修改:可以修改学生的基本信息,如姓名、性别、年龄等;4.界面友好:设计简洁、美观的用户界面,提高用户体验。

三、设计思路1.数据结构设计:使用类和对象来表示学生信息,构建学生类(Student类),包含学号、姓名、性别、年龄等属性;2.界面设计:使用Java Swing库来构建用户界面,包括菜单栏、文本框、按钮等组件;3.功能模块设计:将学生信息录入、查询、修改等功能封装成不同的方法,并在主程序中调用;4.异常处理:在程序中添加异常处理机制,以应对用户错误输入等异常情况。

四、具体实现步骤1.创建学生类:定义一个Student类,包含学号、姓名、性别、年龄等属性,并编写构造方法和getter、setter方法;2.设计主界面:使用Swing库创建主界面,包括菜单栏和各个功能按钮;3.实现学生信息录入功能:在录入界面添加文本框和确认按钮,将输入的信息保存到学生类实例中;4.实现学生信息查询功能:在查询界面设计查询条件输入框和查询按钮,根据条件查询学生信息并在界面展示;5.实现学生信息修改功能:在修改界面允许用户选择要修改的学生信息,并提供文本框供用户修改;6.异常处理:在程序中添加必要的异常处理代码,如输入非法字符、查询结果为空等情况。

五、总结通过本次课程设计,我们深入学习了Java编程语言,掌握了面向对象的程序设计思想,提高了对GUI界面设计的理解。

java学生管理系统课程设计报告

java学生管理系统课程设计报告

Java学生管理系统课程设计报告1. 引言学生管理系统是针对学校或教育机构开发的一款软件系统,旨在方便学校管理学生信息、课程安排和学生成绩等方面的工作。

本报告将详细介绍Java学生管理系统的设计与实现过程。

2. 系统需求分析学生管理系统通常需要具备以下功能:•学生信息管理:包括学生基本信息的录入、修改、删除和查询等操作。

•课程管理:可以添加、编辑、删除课程信息,并能将课程分配给相应的学生。

•成绩管理:记录学生的成绩,并可以按照课程和学生进行查询和统计。

•用户权限管理:对不同的系统用户进行权限管理,确保系统安全和数据保密性。

根据需求分析,我们将使用Java编程语言来设计和实现学生管理系统。

3. 系统设计3.1 技术选型本系统将使用Java语言进行开发,选择使用Java的原因如下:•Java具有较高的跨平台性,可以在不同的操作系统上运行。

•Java拥有丰富的类库和开发工具,可以方便地进行系统开发和维护。

•Java具有良好的面向对象特性,可以实现系统的模块化设计和复用。

3.2 系统结构设计学生管理系统可以按照MVC(Model-View-Controller)设计模式进行结构设计。

具体的系统结构如下:•模型(Model):负责处理与数据相关的操作,包括学生信息、课程和成绩等的存储和管理。

•视图(View):负责显示系统界面和获取用户输入,将用户的操作请求传递给控制器。

•控制器(Controller):负责处理用户的操作请求,调用模型和视图来完成相应的业务逻辑。

3.3 类设计系统将包括以下核心类:•学生管理类(StudentManager):负责学生信息的添加、修改、查询和删除等操作。

•课程管理类(CourseManager):负责课程信息的添加、修改、查询和删除等操作。

•成绩管理类(ScoreManager):负责学生成绩的录入、查询和统计等操作。

•用户权限管理类(UserManager):负责用户的登录和权限管理。

java课程设计学生管理系统6

java课程设计学生管理系统6

java课程设计学生管理系统6一、教学目标本节课的教学目标是使学生掌握Java语言在学生管理系统开发中的应用。

通过本节课的学习,学生将能够理解并运用Java语言的基本语法、数据结构、控制流程和文件操作等知识,以实现对学生的增删改查等管理功能。

同时,学生将能够运用面向对象编程思想,理解并实践封装、继承、多态等概念,提高代码的可读性和可维护性。

此外,学生将能够通过团队协作,进行项目开发,培养团队合作精神和问题解决能力。

二、教学内容本节课的教学内容主要包括Java语言的基本语法、数据结构、控制流程、文件操作和面向对象编程思想。

首先,将介绍Java语言的基本语法,包括变量、数据类型、运算符等。

然后,将讲解Java中的数据结构,如数组、链表、树等。

接下来,将介绍Java的控制流程,包括条件语句、循环语句等。

然后,将讲解Java中的文件操作,如文件的创建、读取、写入等。

最后,将介绍面向对象编程思想,包括类、对象、封装、继承、多态等概念,并通过实例讲解如何运用这些概念来实现学生管理系统的功能。

三、教学方法为了达到本节课的教学目标,将采用多种教学方法进行教学。

首先,将采用讲授法,系统地讲解Java语言的基本语法、数据结构、控制流程和文件操作等知识。

然后,将采用案例分析法,通过分析实际的学生管理系统案例,使学生理解和掌握面向对象编程思想。

此外,还将学生进行小组讨论和实验,让学生在实践中巩固所学知识,培养团队合作精神和问题解决能力。

四、教学资源为了支持本节课的教学内容和教学方法的实施,将准备相应的教学资源。

教材方面,将使用《Java编程思想》作为主教材,辅助以《Java核心技术》等参考书。

多媒体资料方面,将制作PPT课件,演示学生管理系统的案例和实验操作。

实验设备方面,将准备计算机实验室,确保每个学生都能进行实验操作。

通过这些教学资源的支持,将丰富学生的学习体验,提高学习效果。

五、教学评估本节课的教学评估将采用多元化的评估方式,以全面、客观、公正地评价学生的学习成果。

学生管理系统java课设

学生管理系统java课设

学生管理系统java课设学生管理系统是一个常见的课程设计项目,旨在让学生掌握基本的软件开发技能,特别是使用Java进行后端开发。

以下是一个简单的学生管理系统的设计概述,以及如何使用Java来实现它。

项目目标:1.实现学生信息的增、删、改、查功能。

2.使用数据库进行数据存储。

3.了解基础的Java Web开发技术。

4.掌握基本的软件设计和架构概念。

功能需求:1.学生信息管理:可以添加、删除、修改和查询学生信息。

2.登录功能:管理员可以登录系统进行学生信息的操作。

3.权限管理:不同权限的管理员可以对系统进行不同的操作。

4.数据统计:能够统计学生的数量等基础数据。

技术栈:1.后端:Java Spring Boot。

2.前端:HTML, CSS, JavaScript (配合Spring Boot的Thymeleaf或JSP)。

3.数据库:MySQL或其他关系型数据库。

4.服务器:Tomcat或其他Servlet容器。

开发步骤:1.需求分析:明确项目目标和功能需求,绘制简单的ER图或流程图。

2.数据库设计:根据需求设计数据库表结构,如学生表、管理员表等。

3.后端开发:使用Spring Boot创建RESTful API,实现增删改查功能。

4.前端开发:使用HTML, CSS, JavaScript (配合Thymeleaf或JSP)创建用户界面。

5.测试与部署:进行单元测试和集成测试,确保系统稳定,然后部署到服务器上。

6.文档编写:编写用户手册和技术文档。

7.验收与答辩:进行项目答辩,接受老师和同学的提问和反馈。

关键点:•数据库连接:确保能够正确地连接和使用数据库。

•安全性:考虑登录密码的加密存储和防止SQL注入等安全措施。

•错误处理:合理处理异常和错误,为用户提供友好的错误提示。

•代码规范与优化:保持代码的清晰和易于维护,考虑性能优化。

•文档与注释:为代码添加必要的注释和文档,方便他人理解。

这只是一个基础的学生管理系统设计概述,根据实际需求和时间,可以增加更多的功能和细节。

java学生管理系统课程设计

java学生管理系统课程设计

目录一、需求分析 (1)1.1课程设计目的 (1)1.2课程设计要求 (1)1.3选题与操作流程 (1)1.4开发环境与开发平台 (2)二、总体设计 (2)2.1总体设计概念 (2)2.2系统功能 (2)2.3系统架构 (3)2.4 模块划分 (3)三、详细设计 (4)3.1 SQL数据库表 (4)3.2程序系统设计图: (5)3.3主要的类及类间关系: (5)四、系统实现编码及运行结果 (6)4.1登陆界面: (6)4.2管理员权限: (7)4.3学生权限: (13)4.4核心代码: (14)五、结论与总结 (28)5.1课程设计结论 (28)5.2课程设计总结与体会 (28)一、需求分析1.1课程设计目的a)掌握面向对象程序设计基本要素(封装、继承、多态)b)掌握JAVA语言常用类包及其常用方法和JAVA语言基本语法c)掌握基于AWT的图形用户界面设计i.常用标准控件的使用,如标签、按钮、菜单、文本框、单选按钮、滚动条等。

ii.事件处理机制d)掌握布局、对话框的使用e)掌握发布JAVA应用程序1.2课程设计要求1.学生学籍管理系统的需求分析。

2.学生学籍管理系统的总体设计,列出主要的类和类间关系。

3.列出具体的实现代码。

4.写出程序的实现细节,主要的功能界面,实现说明。

5.写出总结和评价1.3选题与操作流程在一些学校等机构,随着学生数量的不断增加,学生的信息不断增多,人工管理信息的难度也越来越大。

而且效率也是很低的。

所以如何自动高效地管理信息是这些年来许多人所研究的。

学生学籍管理系统,以SQL数据库作为后台信息存储,Java作为前台系统的语言。

提供了对学生信息添加,查询,修改,删除的功能。

实现了最基本的信息管理。

1.4开发环境与开发平台操作系统:Windows 8数据库: SQL 2012Java开发工具: My Eclipse2014JDK: JDK1.7二、总体设计2.1总体设计概念学生学籍管理系统,可用于学校等机构的学生信息管理,查询,更新与维护,使用方便,易用性强,图形界面清晰明了。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Java课程设计报告题目学生管理系统学生姓名侯旻燊专业班级计科完成日期 2014年12月30日摘要学校的学生学籍信息管理是学校管理中的一项重要任务,以往的手工操作已经不能适应现在办公的需要.为了摆脱繁琐的劳动,提高工作效率,利用计算机进行信息处理成为必然.开发功能完善及安全可靠的管理系统可以大大提高学校资源的利用率,及时,准确地获取需要的信息,充分发挥人员的工作潜力。

因此,不难想象,正是咨询业的迅速发展使得人们从过去的手工劳动中得以解脱.同时,编写一套完善的学生学籍管理系统的任务就显得尤为重要。

软件开发的意图为便于学校的管理,方便查看有关学校及学生的情况。

如教务处对学生成绩的修改、删除、查找、添加等。

目录1.总体设计 (1)1.1本系统的主要功能 (1)1.2系统包含的类及类之间的关系 (1)1.3功能概要 (1)1.3.1学生登录 (1)1.3.2管理员登录 (1)1.3.3程序总逻辑 (2)2.详细设计 (2)2.1主类Client (2)2.2类AdminGUI (2)2.3类UpdateAndInsert (3)3.运行效果 (4)3.1登陆界面 (4)3.2学生登陆界面 (4)3.3管理员登陆 (6)3.4数据库 (7)参考文献 (8)附录1 软件源程序 (8)1.StudentGUI.java (8)2.AdminGUI.java (14)课程设计实践总结: (26)1.总体设计1.1本系统的主要功能该项目主要功能为:学生学籍基本信息查看,管理员信息处理1.2系统包含的类及类之间的关系如图1-1所示。

图1-1 类之间的关系1.3功能概要学生管理系统分为两大功能:1.3.1学生登录1.完成查询自己的学籍信息2.修改自己的登录密码3.修改自己的籍贯4.修改自己的电话号码1.3.2管理员登录1.删除指定学生学籍2.增加指定学生学籍3.修改指定学生学籍4.查询指定学生学籍5.列出全部学生学籍信息1.3.3程序总逻辑图1-2程序总逻辑2.详细设计2.1主类Client(1)成员变量见表2-1成员变量描述变量类型名称主入口标识LoginGUI lg (3)源代码见文件Client.java2.2类AdminGUI(1)成员变量见表2-2(2)方法见表2-3(3)源代码见文件AdminGUI.java2.3类UpdateAndInsert(1)成员变量见表2-4表2-4主要成员变量(2)方法见表2-5表2-5 主要方法(3)源代码见文件UpdateAndInsert.java3.运行效果3.1登陆界面主界面输入登录信息下拉菜单选择登录方式:学生登录管理员登陆图3-1登陆界面功能描述登陆界面要求输入用户名(Int,非空),密码(String,非空),选择登录方式(学生登录,管理员登陆),调用相应的数据库进行验证消息的正确性,如果通过验证进入程序处理模块,未通过则需要用户重新输入。

3.2学生登陆界面图3-2-1学生登陆界面点击显示本人信息显示文本区点击修改本人信息点击退出程序点击学生登陆界面的修改信息后弹出的界面在此处编辑自己的籍贯在此处编辑自己的联系电话在此处编辑自己的密码点击确定生效修改点击则取消修改点击退出点击退出图3-2-2学生登陆修改信息界面功能说明点击我的信息,调用数据库相关信息,查看自己的全部学籍信息,在新密码输入框里输入新密码,点击密码修改,更新数据库(password),完成密码修改功能。

3.3管理员登陆输入查询,修改,删除所需学号查询,列出全部学生信息显示区域滚动条,以显示所有信息图3-3-1管理员登陆使用修改,增加按钮出现的界面,实现增加,修改条目功能显示学生学籍信息图3-3-2管理员登陆修改,增加功能说明根据输入在学号文本框内的学号,调用数据库相关连的记录,完成查询,修改,删除功能。

单击修改,增加按钮,在出现的文本中填入相应的修改或增加信息,点击确定,更新数据库。

点击查询全部学生信息则在中间文本框内列出全部的学籍信息。

3.4数据库MS-DOS界面3.4.1登陆MYSQL 数据库图3-4-1登陆MYSQL 数据库3.4.2检索学生表图3-4-2检索学生3.4.3检索学生表图3-4-3检索学生功能说明创建数据库并建立学生表与管理员表,记录相应的信息,作为后台运行,使用java 编程语言,使用JDBC作为连接桥梁,实时调用修改数据库记录。

参考文献[1] 软件工程导论(第5版)清华大学出版社张海藩编著[2] Java从入门到精通(第2版)清华大学出版社周小彤,陈丹丹等编著[3] 数据库系统概论(第4版) 高等教育出版社王珊,萨师煊著附录1 软件源程序1.StudentGUI.java/*学生操作图形界面*/package ms;import java.awt.BorderLayout;import java.awt.GridLayout;import java.awt.TextField;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JDialog;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;public class StudentGUI{JDialog log=null;//学生登入类主窗口JPanel jp1=null;//用于存放登入块JPanel jp2=null;//用于存放信息块JPanel jp3=null;//用于密码存放修改块JPanel jp4=null;//用于存放我的信息按钮JLabel jl1=null;//学生登入标签JLabel jl2=null;//学号标签JLabel jl3=null;//学生姓名标签JLabel jl4=null;//性别标签JLabel jl5=null;//出生日期标签JLabel jl6=null;//民族标签JLabel jl7=null;//籍贯标签JLabel jl8=null;//专业标签JLabel jl9=null;//班级标签JLabel jl10=null;//联系电话标签JLabel jl11=null;//请输入密码标签JButton jb1=null;//我的信息按钮JButton jb2=null;//密码修改按钮TextField t1=null;//学号文本框TextField t2=null;//学生姓名文本框TextField t3=null;//性别文本框TextField t4=null;//出生日期文本框TextField t5=null;//民族文本框TextField t6=null;//籍贯文本框TextField t7=null;//专业文本框TextField t8=null;//班级文本框TextField t9=null;//联系电话文本框TextField t10=null;//密码文本框JPanel jp5=new JPanel();//存放密码输入框String id=null;public StudentGUI(JFrame log,String str){super();this.log = new JDialog(log,"学生登入",true);jp1=new JPanel();jp2=new JPanel();jp3=new JPanel();jp4=new JPanel();jl1=new JLabel(new ImageIcon("image/student.jpg"));jl2=new JLabel("学号:");jl3=new JLabel("学生姓名:");jl4=new JLabel("性别:");jl5=new JLabel("出生日期:");jl6=new JLabel("民族:");jl7=new JLabel("籍贯:");jl8=new JLabel("专业:");jl9=new JLabel("班级:");jl10=new JLabel("联系电话:");jl11=new JLabel("请输入新密码:");jb1=new JButton("我的信息");jb2=new JButton("密码修改");t1=new TextField();t2=new TextField();t3=new TextField();t4=new TextField();t5=new TextField();t6=new TextField();t7=new TextField();t8=new TextField();t9=new TextField();t10=new TextField();this.id=str;}public void studentGo(){BorderLayout bl=new BorderLayout();bl.setHgap(30);bl.setVgap(30);log.setLayout(bl);log.add(jp1,BorderLayout.NORTH);//将登入块信息块密码修改块放入主窗口log.add(jp2,BorderLayout.CENTER);log.add(jp3,BorderLayout.SOUTH);log.add(jp4,BorderLayout.WEST);jp1.add(jl1,BorderLayout.CENTER);jp2.setLayout(new GridLayout(5,2,20,10));jp2.add(jl2);jp2.add(t1);jp2.add(jl3);jp2.add(t2);jp2.add(jl4);jp2.add(t3);jp2.add(jl5);jp2.add(t4);jp2.add(jl6);jp2.add(t5);jp2.add(jl7);jp2.add(t6);jp2.add(jl8);jp2.add(t7);jp2.add(jl9);jp2.add(t8);jp2.add(jl10);jp2.add(t9);jp4.add(jb1);BorderLayout bl1=new BorderLayout();bl1.setHgap(38);jp3.setLayout(bl1);jp3.add(jb2,BorderLayout.WEST);jp3.add(jp5,BorderLayout.CENTER);jp5.setLayout(new GridLayout());jp5.add(jl11);jp5.add(t10);jb1.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {Select sel=new Select();sel.selectStudent(id);Student student=sel.getStudent();t1.setText(new Integer(student.getId()).toString());t2.setText(student.getName());t3.setText(student.getSex());t4.setText(student.getBornDate());t5.setText(student.getNationality());t6.setText(student.getHometown());t7.setText(student.getMaj());t8.setText(student.getCla());t9.setText(student.getTelNum());}});jb2.addActionListener(new ActionListener(){@Overridepublic void actionPerformed(ActionEvent e){String password=StudentGUI.this.t10.getText();UpdateAndInsert up=new UpdateAndInsert();if(up.updatePassword(id, password)==true){JOptionPane.showMessageDialog(StudentGUI.this.log,"修改成功");}}});log.addWindowListener(new WindowAdapter(){@Overridepublic void windowClosing(WindowEvent e){System.exit(0);}});log.setSize(550,420);log.setLocationRelativeTo(null);log.setResizable(false);log.setVisible(true);}}2.AdminGUI.java/*管理员登陆图形界面*/package ms;import java.awt.BorderLayout;import java.awt.GridLayout;import java.awt.TextArea;import java.awt.TextField;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JDialog;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;public class AdminGUI{JDialog log=null;//管理员登陆主窗口JPanel jp1=null;//用于存放管理员登陆标签和 jp5JPanel jp2=null;//用于存放查询修改增加删除按钮JPanel jp3=null;//用于存放信息块和jp5JPanel jp4=null;//用于存放修改插入删除按钮JPanel jp5=null;//用于存放请输入学号文本框JLabel jadminLog=null; //管理员登陆标签JLabel jLabel=null; //请输入学号标签TextField tf=null; //请输入学号文本框JButton jb1=null;//查询按钮JButton jb2=null;//修改按钮JButton jb3=null;//增加按钮JButton jb4=null;//删除按钮JButton jb5=null; //列出全部学生信息TextArea ta=null;//信息文本框JLabel jl=null; //用于站位String id=null; //用于保存用户输入查询学号TextField[] jtf = new TextField[9] ;JDialog jdialog=null;public AdminGUI(JFrame log){super();this.log = new JDialog(log,"管理员登陆",true);jp1=new JPanel();jp2=new JPanel();jp3=new JPanel();jp4=new JPanel();jp5=new JPanel();jadminLog=new JLabel(new ImageIcon("image/admin.jpg"));jLabel=new JLabel("请输入学号");tf=new TextField();jb1=new JButton("查询");jb2=new JButton("修改");jb3=new JButton("增加");jb4=new JButton("删除");jb5=new JButton("列出全部学生信息");ta=new TextArea("点击查询按钮将在此显示查询信息");jl=new JLabel();}public void adminGo(){BorderLayout bl=new BorderLayout();bl.setVgap(30);bl.setHgap(30);log.setLayout(bl);log.add(jp1,BorderLayout.NORTH);BorderLayout bl1=new BorderLayout();bl1.setVgap(20);jp1.setLayout(bl1);jp1.add(jadminLog,BorderLayout.CENTER);jp5.setLayout(new GridLayout(1,2,200,200)); jp5.add(jLabel);jp5.add(tf);log.add(jp2,BorderLayout.WEST);jp2.setLayout(new GridLayout(2,1,200,300)); jp2.add(jb1);jp2.add(jb5);log.add(jp3,BorderLayout.CENTER);jp3.setLayout(new BorderLayout(10, 10));jp3.add(jp5,BorderLayout.NORTH);jp3.add(ta);jp5.setLayout(new GridLayout(1,5,10,10));jp5.add(jLabel);jp5.add(tf);log.add(jp4,BorderLayout.SOUTH);jp4.setLayout(new GridLayout(1,3,200,30)); jp4.add(jb2);jp4.add(jb3);jp4.add(jb4);log.addWindowListener(new WindowAdapter() {@Overridepublic void windowClosing(WindowEvent e)System.exit(0);}});jb1.addActionListener(new ActionListener(){@Overridepublic void actionPerformed(ActionEvent e){AdminGUI.this.id=AdminGUI.this.tf.getText();Select sel=new Select();sel.selectStudent(AdminGUI.this.id);if(sel.getStudent()!=null){Student student=sel.getStudent();AdminGUI.this.ta.setText("学号\t\t"+"姓名\t\t"+"性别\t\t"+"出生日期\t\t"+"民族\t\t"+"籍贯\t\t"+"专业\t\t"+"班级\t\t"+"联系电话\t\t"+"密码\t\t");AdminGUI.this.ta.append("\n"+student.getId()+"\t\t"+student.getName()+"\ t\t"+student.getSex()+"\t\t"+student.getBornDate()+"\t\t"+student.getNationality()+"\t\t"+student.getNationality()+"\t\t"+student .getMaj()+"\t"+student.getCla()+"\t\t"+student.getTelNum()+"\t\t"+student.getPassword( )+"\n");}else{AdminGUI.this.ta.setText("查无此人");}});jb5.addActionListener(new ActionListener(){@Overridepublic void actionPerformed(ActionEvent e){Select sel=new Select();sel.selectAllStudent();AdminGUI.this.ta.setText("学号\t\t"+"姓名\t\t"+"性别\t\t"+"出生日期\t\t"+"民族\t\t"+"籍贯\t\t"+"专业\t\t"+"班级\t\t"+"联系电话\t\t"+"密码\t\t\n");for(int i=0;i<sel.getAllStudent().size();i++){Student student=sel.getAllStudent().get(i);AdminGUI.this.ta.append(student.getId()+"\t\t"+student.getName()+"\t\t"+ student.getSex()+"\t\t"+student.getBornDate()+"\t\t"+student.getNationality()+"\t\t"+student.getHometown()+"\t\t"+student.ge tMaj()+"\t"+student.getCla()+"\t\t"+student.getTelNum()+"\t\t"+student.getPassword( )+"\n");}}});log.setSize(850,580);log.setLocationRelativeTo(null);log.setResizable(false);jb3.addActionListener(new ActionListener(){@Overridepublic void actionPerformed(ActionEvent e){jdialog=new JDialog(AdminGUI.this.log);String[] str=new String[]{"姓名","性别","出生日期","民族","籍贯","专业","班级","联系电话","密码"};JLabel[] jlabel=new JLabel[9];for(int i=0;i<9;i++){jlabel[i]=new JLabel(str[i]);jtf[i]=new TextField();}JPanel jpanel1=new JPanel();JPanel jpanel2=new JPanel();JButton jbutton1=new JButton("确定");JButton jbutton2=new JButton("取消");jdialog.setLayout(new BorderLayout());jdialog.add(jpanel1,BorderLayout.CENTER);jdialog.add(jpanel2,BorderLayout.SOUTH);jpanel1.setLayout(new GridLayout(9,2,10,10));for(int i=0;i<9;i++){jpanel1.add(jlabel[i]);jpanel1.add(jtf[i]);}jpanel2.add(jbutton1);jpanel2.add(jbutton2);jbutton1.addActionListener(new ActionListener(){@Overridepublic void actionPerformed(ActionEvent e){Student student=new Student();student.setName(AdminGUI.this.jtf[0].getText());student.setSex(AdminGUI.this.jtf[1].getText());student.setBornDate(AdminGUI.this.jtf[2].getText());student.setNationality(AdminGUI.this.jtf[3].getText());student.setHometown(AdminGUI.this.jtf[4].getText());student.setMaj(AdminGUI.this.jtf[5].getText());student.setCla(AdminGUI.this.jtf[6].getText());student.setTelNum(AdminGUI.this.jtf[7].getText());student.setPassword(AdminGUI.this.jtf[8].getText());UpdateAndInsert up=new UpdateAndInsert();if(up.insertStudent(student)==true){JOptionPane.showMessageDialog(AdminGUI.this.log,"添加成功");}jdialog.dispose();}});jbutton2.addActionListener(new ActionListener(){@Overridepublic void actionPerformed(ActionEvent e){jdialog.dispose();}});jdialog.setSize(500,400);jdialog.setLocationRelativeTo(null);jdialog.setResizable(false);jdialog.setVisible(true);}});jb4.addActionListener(new ActionListener(){@Overridepublic void actionPerformed(ActionEvent e){if(new Delete().delete(AdminGUI.this.tf.getText())==true){JOptionPane.showMessageDialog(AdminGUI.this.log,"刪除成功");}elseJOptionPane.showMessageDialog(AdminGUI.this.log,"刪除失敗");}});jb2.addActionListener(new ActionListener(){@Overridepublic void actionPerformed(ActionEvent e){Select sel=new Select();AdminGUI.this.id=AdminGUI.this.tf.getText();sel.selectStudent(AdminGUI.this.tf.getText());Student student=sel.getStudent();if(student==null){JOptionPane.showMessageDialog(AdminGUI.this.log,"请检查输入的学号");}else{jdialog=new JDialog(AdminGUI.this.log);String[] str=new String[]{"姓名","性别","出生日期","民族","籍贯","专业","班级","联系电话","密码"};JLabel[] jlabel=new JLabel[9];for(int i=0;i<9;i++){jlabel[i]=new JLabel(str[i]);}jtf[0]=new TextField(student.getName());jtf[1]=new TextField(student.getSex());jtf[2]=new TextField(student.getBornDate());jtf[3]=new TextField(student.getNationality());jtf[4]=new TextField(student.getHometown());jtf[5]=new TextField(student.getMaj());jtf[6]=new TextField(student.getCla());jtf[7]=new TextField(student.getTelNum());jtf[8]=new TextField(student.getPassword());JPanel jpanel1=new JPanel();JPanel jpanel2=new JPanel();JButton jbutton1=new JButton("确定");JButton jbutton2=new JButton("取消");jdialog.setLayout(new BorderLayout());jdialog.add(jpanel1,BorderLayout.CENTER);jdialog.add(jpanel2,BorderLayout.SOUTH);jpanel1.setLayout(new GridLayout(9,2,10,10));for(int i=0;i<9;i++){jpanel1.add(jlabel[i]);jpanel1.add(jtf[i]);}jpanel2.add(jbutton1);jpanel2.add(jbutton2);jbutton1.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e){Student student=newStudent(Integer.parseInt(AdminGUI.this.id), jtf[0].getText(),jtf[1].getText(), jtf[2].getText(), jtf[3].getText(), jtf[4].getText(), jtf[5].getText(), jtf[6].getText(), jtf[7].getText(), jtf[8].getText());UpdateAndInsert up=new UpdateAndInsert();if(up.updateStudent(student)==true){JOptionPane.showMessageDialog(AdminGUI.this.log,"更改成功");;}jdialog.dispose();}});jbutton2.addActionListener(new ActionListener(){@Overridepublic void actionPerformed(ActionEvent e){jdialog.dispose();}});jdialog.setSize(500,400);jdialog.setLocationRelativeTo(null);jdialog.setResizable(false);jdialog.setVisible(true);}}});log.setVisible(true);}}课程设计实践总结:。

相关文档
最新文档