项目一搭建学生信息管理系统开发平台Java语言概述分析
- 格式:ppt
- 大小:1.39 MB
- 文档页数:37
学生信息管理系统介绍学生信息管理系统是一种用于管理学生信息的软件系统,通过该系统可以对学生的个人信息、课程信息、成绩信息等进行管理和查询。
使用该系统可以实现学生信息的整合、统计和分析,方便学校、教师和学生进行信息交流和管理。
功能学生信息管理系统通常包括以下功能:1. 学生信息录入与查询学生信息录入是系统的基本功能之一。
通过学生信息录入功能,学校和教师可以将学生的基本信息、家庭信息、联系方式等录入到系统中。
而学生也可以通过该功能自行更新和完善自己的信息。
学生信息查询是学生信息管理系统的核心功能之一。
通过该功能,学校、教师和学生可以根据不同的条件查询学生信息,比如按照学号、姓名、班级、年级等进行查询。
查询结果可以是单个学生的信息或者符合查询条件的学生列表。
2. 学生课程信息管理学生课程信息管理功能包括了学生选课、退课和查询课程信息等功能。
学生可以通过该功能选择自己感兴趣的课程并将选课结果保存到系统中。
如果学生需要退课,也可以在系统中进行操作。
教师和学校可以通过该功能查询课程的基本信息和选课情况。
3. 学生成绩管理学生成绩管理功能用于记录和查询学生的成绩信息。
教师可以通过该功能录入学生的平时成绩、期中成绩、期末成绩等,并计算学生的总评成绩。
学生可以通过该功能查询自己的成绩和排名情况。
学校和教师可以通过该功能对班级或学校的成绩情况进行统计和分析。
4. 学生信息统计与报表分析学生信息统计与报表分析功能用于对学生信息进行统计和分析。
通过该功能可以获取学生数量、男女比例、年级分布、班级分布等统计数据。
同时,还可以生成各类报表,比如学生成绩报表、学生评价报表等,方便学校和教师对学生情况进行分析和评估。
实现方式学生信息管理系统可以使用不同的编程语言进行实现,如Java、C#、Python等。
本文以Java语言为例,介绍如何使用Java实现学生信息管理系统。
1. 数据库设计在开发学生信息管理系统之前,首先需要设计数据库来存储学生信息、课程信息和成绩信息等。
学生管理系统Java开题报告1. 项目简介学生管理系统是一个基于Java编程语言开发的应用程序,旨在帮助学校进行学生信息的管理和统计。
该系统可以实现学生信息的录入、查询、修改和删除,同时提供了一系列的统计分析功能,能够帮助学校更好地管理学生信息。
本项目将以Java语言为基础,利用面向对象的编程思想,通过图形用户界面的设计,提供一个用户友好的操作界面,方便学校教务人员使用。
2. 项目背景目前,学校教务工作涉及大量的学生信息管理工作,包括录入学生信息、查询学生信息、修改学生信息等。
传统的手工处理方式效率低下,容易出现信息遗漏和错误。
因此,开发一个学生管理系统,能够有效地管理学生信息,提高管理效率,减少人力投入,对学校教务工作的进行提升具有重要意义。
3. 项目目标学生管理系统的目标是提供一个易于使用、功能完善的学生信息管理工具,使学校教务人员能够快速、准确地进行学生信息的录入和管理。
具体的项目目标包括:1.实现学生信息的录入功能,包括学生的基本信息、成绩信息等。
2.提供学生信息的查询功能,支持按照学生姓名、学号、班级等条件进行查询。
3.支持学生信息的修改和删除操作,确保信息的准确性和完整性。
4.提供学生信息的统计分析功能,包括班级人数统计、成绩排名等。
5.设计一个用户友好的图形用户界面,提供方便的操作和信息展示方式。
4. 技术选型为了实现以上目标,我们选择使用Java编程语言进行开发。
Java作为一门面向对象的编程语言,具有良好的跨平台性和可扩展性,适合进行大型软件开发。
在图形用户界面的设计上,我们将使用Java Swing库,该库提供了一系列的用户界面组件,方便我们进行用户界面的开发。
同时,我们也将使用MySQL作为数据库,用于存储学生的信息。
5. 开发计划本项目的开发计划分为以下几个阶段:1.需求分析阶段:明确系统的功能需求、性能需求和非功能需求,完成需求文档的编写。
2.设计阶段:根据需求分析阶段的结果,进行系统的整体设计和详细设计,包括数据库设计、界面设计等。
《Java程序设计实训》学生信息管理系统目录一、项目背景 (2)二、编写目的 (2)三、开发环境 (2)四、需求分析 (2)五、模块说明 (3)六、系统功能设计 (3)七、任务进度表 (4)八、测试结果 (5)九、设计小结 (7)十、用户使用说明 (8)十一、参考文献 (8)一、项目背景随着学校规模的不断扩大,学生数量急剧增加,有关学生的各种信息也成倍增加.面对庞大的信息量,就需要有学生信息管理系统来提高学生管理工作的效率。
通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。
现在的时代是网络普及是时代,学生有条件通过网络方便快捷的查询自己的个人信息.所以,学生信息管理系统既能方便学校管理部门的管理,又能方便学生及时查询个人信息.从自己学习的角度来说:这次系统的制作过程,无疑加深了自身对《JAVA》这门课理论知识的理解,大大提高了理论知识的应用水平,而且增强动手能力,可以说是为毕业设计做了很好准备。
面对以后强大的就业压力,没有熟练的动手能力,光有满脑袋的理论是不行的,因此本次设计显得十分重要二、编写目的《Java语言程序设计实训》课程设计是计算机科学与技术专业及相关专业的集中实践性环节之一,是学习完《Java语言程序设计》后进行的一次全面的综合练习,其目的在于加深对面向过程程序设计的理解,提高解决实际问题的能力,为后续课程、毕业设计以及今后从事设计工作打下良好的基础。
(1)本系统具有很强的可靠行,可以对录入的考生信息进行效验,对数据进行修改、删除,规定招生工作人员的权限。
(2)本系统中的模块具有很强的可续性,可以方便招生工作人员的修改与维护。
(3)本系统操作方便、灵活、简单。
操作人员只需录入考生的基本信息和招生数据。
(4)本系统可高效、快速的查询到考生的基本信息和招生计划,便于招生工作的开展.三、开发环境1、硬件平台: (1)CPU:P41.8GHz;(2)内存:256MB以上;2、软件平台:(1)操作系统:windows XP/windows 2000/windows 7;(2)开发工具:Java四、需求分析1、系统名称:学生信息管理系统2、系统功能:(1)添加学生记录:输入并保存学生信息;(2)显示学生记录:按学号序显示所有学生信息;(3)删除学生记录:显示现有的学生信息,让操作者输入要删除学生的学号,将其删除后再次显示其余的学生信息;(4)查询学生记录:按键盘输入的学号查找并显示学生信息;(5)统计学生记录:统计并显示优、良、中、及格、不及格的人数与比例,以及总人数、及格率、最高分、最低分、平均分。
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学生基本信息管理模块实现1. 引言在现代教育管理系统中,学生基本信息管理是一个非常重要的模块,它涉及到学生的个人信息、学籍信息、成绩信息等多方面内容。
在这个模块中,我们可以对学生信息进行录入、查询、修改和删除操作,从而实现对学生信息的全面管理。
本文将从深度和广度两个维度来探讨Java学生基本信息管理模块的实现。
2. 简单介绍Java学生基本信息管理模块Java是一种广泛应用于企业级应用开发的编程语言,其强大的面向对象特性和丰富的类库资源使得Java成为开发学生基本信息管理模块的理想选择。
在Java中,我们可以通过面向对象的方式来设计学生信息管理模块,利用Java的类、对象、集合等特性来实现学生信息的录入、查询、修改和删除功能。
3. Java学生基本信息管理模块的设计思路在设计Java学生基本信息管理模块时,我们首先需要考虑数据结构的设计。
我们可以使用Java中的类来代表学生,定义学生的基本信息如学号、尊称、性别、芳龄等作为类的属性,并为其提供相应的方法来实现信息的增删改查操作。
我们还可以利用集合框架来存储学生对象,例如使用ArrayList来存储学生信息,使用HashMap来存储学号和尊称的对应关系等。
4. Java学生基本信息管理模块的功能实现在实现Java学生基本信息管理模块的功能时,我们可以按照以下步骤来进行:(1)学生信息的录入:通过Java的输入输出流来实现对学生信息的录入操作,将学生对象存储在文件中或者数据库中。
(2)学生信息的查询:利用Java的集合框架来实现对学生信息的查询操作,通过遍历集合来查找符合条件的学生信息。
(3)学生信息的修改:通过Java的面向对象特性,可以轻松地对学生对象的属性进行修改,并更新到文件或数据库中。
(4)学生信息的删除:同样可以通过集合框架来实现对学生信息的删除操作,将要删除的学生对象从集合中移除即可。
5. Java学生基本信息管理模块的扩展功能除了基本的增删改查功能外,我们还可以在Java学生基本信息管理模块中实现更多的扩展功能,比如:(1)学生信息的统计分析:可以通过Java的流处理和集合框架来实现对学生信息的统计分析,例如计算平均芳龄、男女比例等。
gui学生信息管理系统java课程设计一、概述现代教育管理系统需要一个高效的学生信息管理系统来帮助学校管理学生信息。
本课程设计旨在使用Java语言开发一个图形用户界面(GUI)学生信息管理系统,以便学校能够更好地管理学生信息。
二、系统需求分析1.系统功能需求(1)学生信息管理:包括学生基本信息、课程成绩、奖惩记录等。
(2)教师信息管理:包括教师基本信息、任课课程、教学成果等。
(3)课程管理:包括课程信息、开课情况、课程成绩统计等。
(4)用户权限管理:包括管理员、教师、学生等不同角色的权限管理。
2.系统非功能需求(1)系统安全性:要求数据安全可靠,用户权限严格控制。
(2)系统稳定性:要求系统运行稳定,不易崩溃。
(3)系统易用性:系统界面友好,操作简单。
三、技术选型本系统采用Java语言开发,使用Swing框架构建GUI界面,使用MySQL数据库存储数据。
1.系统架构设计(1)MVC架构:采用Model-View-Controller(MVC)设计模式,实现界面逻辑与数据处理的分离。
(2)分层设计:采用三层架构,包括表示层、业务逻辑层和数据访问层。
2.数据库设计(1)学生表设计:包括学号、尊称、性莂、芳龄等字段。
(2)教师表设计:包括工号、尊称、性莂、职称等字段。
(3)课程表设计:包括课程编号、课程名称、学分、教师编号等字段。
(4)其他相关表设计:包括课程成绩表、奖惩记录表等。
3.GUI界面设计(1)登入界面设计:包括用户名、密码输入框,登入按钮。
(2)学生信息管理界面设计:包括学生信息查询、添加、修改、删除功能。
(3)教师信息管理界面设计:包括教师信息查询、添加、修改、删除功能。
(4)课程管理界面设计:包括课程信息查询、添加、修改、删除功能。
(5)用户权限管理界面设计:包括管理员、教师、学生等角色的权限管理。
1.数据库连接使用JDBC技术连接MySQL数据库,实现数据的读取和写入。
2.业务逻辑实现(1)学生信息管理:实现学生信息的增删改查功能。
简单的java项目实例
Java是一种广泛使用的编程语言,它在软件开发中具有广泛的应用。
在本文中,我们将介绍一个简单的Java项目实例,以帮助初学者了解Java的基本语法和语言特性。
这个项目的目标是创建一个简单的学生管理系统。
这个系统将允许用户添加、编辑和删除学生信息,并能够列出所有学生的信息。
首先,我们将创建一个名为Student的Java类。
这个类将包含学生的姓名、年龄和成绩等基本信息。
接下来,我们将创建一个名为StudentManager的Java类。
这个类将充当学生管理系统的核心,它将包含所有与学生相关的方法,如添加、编辑和删除学生信息的方法。
在这个系统中,我们将使用Java中的ArrayList数据结构来存储学生信息。
这个数据结构允许我们轻松地添加、删除和编辑学生信息。
接下来,我们将创建一个名为Main的Java类。
这个类将包含我们程序的入口点。
在Main类中,我们将创建一个StudentManager对象并调用其方法来执行所有学生相关的操作。
最后,我们将为我们的学生管理系统添加一个用户界面。
我们将使用Java Swing库来创建一个简单的窗口,让用户可以轻松地进行学生信息的添加、编辑和删除操作。
这个简单的Java项目实例可以帮助初学者快速掌握Java语言的基本语法和数据结构。
通过这个项目,我们可以了解Java中常用的
类和方法,并学习如何使用它们来创建一个简单的应用程序。
java课程设计学生信息管理系统一、课程目标知识目标:1. 理解并掌握Java语言面向对象编程的基本概念,包括类、对象、封装、继承和多态;2. 学会运用Java语言构建学生信息管理系统,掌握基本的软件开发流程;3. 熟悉并掌握Java集合框架的使用,如List、Map等,用于存储和管理学生数据;4. 了解并运用Java异常处理机制,提高程序的稳定性和可靠性。
技能目标:1. 能够运用面向对象思想设计合理的类和对象,实现学生信息管理系统的功能模块;2. 掌握使用Java编写数据库连接代码,实现数据的持久化存储;3. 能够运用调试工具进行程序调试,找出并修复程序中的错误;4. 学会使用Java编写用户界面,实现用户与程序的交互。
情感态度价值观目标:1. 培养学生的团队协作精神,学会与他人共同完成项目任务;2. 增强学生的编程自信心,激发对计算机编程的兴趣和热情;3. 培养学生严谨、细心的编程习惯,提高编程素养;4. 培养学生解决问题的能力,使学生能够运用所学知识解决实际问题。
课程性质:本课程为实践性较强的Java编程课程,结合实际项目需求,培养学生的编程能力和实际应用能力。
学生特点:学生已具备一定的Java基础,了解基本的编程概念,但对面向对象编程和实际项目开发尚缺乏深入了解。
教学要求:注重理论与实践相结合,引导学生运用所学知识解决实际问题,提高学生的编程能力和项目开发能力。
在教学过程中,关注学生的个体差异,提供针对性的指导,确保每位学生都能在课程中取得实际的学习成果。
通过本课程的学习,使学生能够独立完成学生信息管理系统的设计与开发。
二、教学内容1. 面向对象编程基础:- 类与对象的概念及其关系- 封装、继承和多态的特性与应用- Java集合框架的使用,包括List、Set、Map等接口及其实现类2. 数据库连接与操作:- JDBC简介及其使用方法- 数据库连接、查询、更新等基本操作- SQL语句的编写与执行3. 学生信息管理系统功能模块设计:- 系统需求分析- 功能模块划分与设计- 类的设计与实现4. 编程实践:- 设计学生类、课程类等实体类- 实现学生信息增删改查功能- 数据的持久化存储与读取5. 用户界面设计:- Java图形用户界面编程基础- 常用组件的使用,如JFrame、JButton、JTable等- 事件处理机制6. 程序调试与优化:- 异常处理机制- 使用调试工具进行程序调试- 优化代码,提高程序性能教学内容安排与进度:1. 第1-2周:面向对象编程基础,学习类与对象、封装、继承和多态等概念;2. 第3-4周:数据库连接与操作,学习JDBC以及SQL语句;3. 第5-6周:学生信息管理系统功能模块设计,进行需求分析和模块设计;4. 第7-8周:编程实践,实现系统的各个功能;5. 第9-10周:用户界面设计,学习图形用户界面编程和事件处理;6. 第11-12周:程序调试与优化,修复程序错误,提高程序性能。
JAVA学⽣信息管理系统实验报告JA V A程序设计实验报告学号:姓名:班级:实验、Java课程设计--------学⽣信息管理系统⼀、实验⽬的1.掌握Java基本语法2.理解⾯向对象编程特点3.理解Java I/O编程4.掌握Java图形界⾯编程5.掌握Java与不同数据库进⾏连接⼆、预习内容Java的基本语法知识、类和对象、Java Swing图形界⾯编程、Java I/O处理以及Java与数据库连接操作三、实验设备与环境通过局域⽹互联,安装Windows 2000/XP操作系统环境的JDK 1.6,my eclipse 或者EditPlus编程⼯具。
并安装MySQL数据库四、实验内容编写并调试运⾏Java程序,进⾏设计,掌握Java开发的基础。
五、实验任务设计学⽣信息管理系统。
要求包括1. 登陆模块:设⽴超级管理员权限,⽤户可以根据不同的权限登陆系统,超级管理员可以对学⽣信息进⾏增、删、改、查操作。
⽽普通⽤户只可以查找学⽣信息。
2. 包括学⽣添加信息模块、学⽣信息删除模块、学⽣信息修改模块和学⽣信息查询模块3.对于管理员,可以对管理员进⾏添加、删除以及修改密码等操作。
六、实验报告(要求独⽴完成参考程序的代码、编译、调试与运⾏)1、程序清单:1.1程序模块清单package Pan;import java.awt.event.ItemListener;import javax.swing.*;import /doc/04245934482fb4daa58d4b93.html ponent;import java.awt.BorderLayout;import java.awt.FlowLayout;import java.awt.event.InputEvent;import java.awt.event.ItemListener;import java.awt.event.KeyEvent;import java.awt.event.ActionListener; import java.awt.event.ActionEvent;import java.util.*;import java.awt.Color;import java.text.DecimalFormat;import java.sql.*;import java.sql.Date;import java.awt.*;import java.util.Vector;public class Res{/*** @param args*/public static void main(String[] args) {FirstWindow win =new FirstWindow("学⽣信息管理系统");}}class FirstWindow extends JFrame implements ActionListener{JMenuBar menubar;JMenu menu1,menu2,menu3,menu4;public final JMenuItem a11,a12,a13,a14,a15,a16,a17; public final JMenuItem a21,a22,a23,a24;public final JMenuItem a3;public final JMenuItem a4;public final JButton btn;JPanel pnl;JLabel label;boolean flag;FirstWindow(String s){setTitle(s);setSize(400,400);setLocation(100,100);setVisible(true);setDefaultCloseOperation(3);pnl=new JPanel();this.getContentPane().add(pnl);pnl.setLayout(new BorderLayout());label=new JLabel("欢迎使⽤学⽣管理系统",JLabel.CENTER); label.setForeground(Color.red);pnl.add(label,BorderLayout.CENTER);menubar=new JMenuBar();menu1=new JMenu("使⽤");menu2=new JMenu("⽤户管理");menu3=new JMenu("帮助");menu4=new JMenu("退出");a11=new JMenuItem("管理员登录");a12=new JMenuItem("查询学⽣信息");a13=new JMenuItem("更改学⽣信息");a14=new JMenuItem("删除学⽣信息");a15=new JMenuItem("添加学⽣信息");a16=new JMenuItem("超级管理员登录");a17=new JMenuItem("普通学⽣登录"); a11.setEnabled(true);a16.setEnabled(true);a17.setEnabled(true);a12.setVisible(false);a13.setVisible(false);a14.setVisible(false);a15.setVisible(false);a21=new JMenuItem("添加⽤户");a22=new JMenuItem("删除⽤户");a23=new JMenuItem("更改⽤户");a24=new JMenuItem("修改密码");a21.setEnabled(false);a22.setEnabled(false);a23.setEnabled(false);a24.setEnabled(false);a3=new JMenuItem("系统介绍");a3.setEnabled(true);a4=new JMenuItem("退出");a4.setEnabled(true);btn=new JButton("再次确认登陆"); pnl.add(btn,BorderLayout.EAST);btn.setSize(10,10); menu1.add(a11); menu1.addSeparator(); menu1.add(a16); menu1.addSeparator(); menu1.add(a17); menu1.addSeparator(); menu1.add(a12); menu1.addSeparator(); menu1.add(a13); menu1.addSeparator(); menu1.add(a14); menu1.addSeparator(); menu1.add(a15); menu1.addSeparator();menu2.add(a21);menu2.addSeparator(); menu2.add(a22); menu2.addSeparator(); menu2.add(a23); menu2.addSeparator();menu2.add(a24);menu2.addSeparator();menu3.add(a3);menu3.addSeparator();menu4.add(a4);menubar.add(menu1); menubar.add(menu2); menubar.add(menu3); menubar.add(menu4); setJMenuBar(menubar);a11.addActionListener(this); a12.addActionListener(this); a13.addActionListener(this); a14.addActionListener(this); a15.addActionListener(this); a16.addActionListener(this); a17.addActionListener(this); a21.addActionListener(this); a22.addActionListener(this); a23.addActionListener(this); a24.addActionListener(this); a3.addActionListener(this);a4.addActionListener(this);btn.addActionListener(this);}public void setColor(Color black) {// TODO Auto-generated method stub}public void actionPerformed(ActionEvent event) {Object temp=new Object();temp=event.getSource();if(temp==a11){Login login=new Login();login.Login();}if(temp==a12){ShowStu show=new ShowStu();show.ShowStu();}if(temp==a13){AlterStu alter=new AlterStu();alter.AlterStu();}if(temp==a14){DeleteStu delete=new DeleteStu();delete.DeleteStu();AddStu add=new AddStu();add.AddStu();}if(temp==a16){superlog superlog=new superlog();superlog.superlog();}if(temp==a17){stuLogin stu=new stuLogin();stu.stuLogin();a12.setVisible(true);}if(temp==a21){AddUser add=new AddUser();add.AddUser();}if(temp==a22){DeleteUser delete=new DeleteUser();delete.DeleteUser();}if(temp==a23){AlterUser alter=new AlterUser();alter.AlterUser();}if(temp==a24){AlterPword pword=new AlterPword(); pword.AlterPword();SystemHelp help=new SystemHelp();help.SystemHelp();}if(temp==a4){SystemExit exit1=new SystemExit();exit1.SystemExit();}if(temp==btn){Connection con;Statement st;Statement st1;ResultSet rs,rs1;try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{con=DriverManager.getConnection("jdbc:odbc:pan","","") ; st=con.createStatement();st1=con.createStatement();rs=st.executeQuery("SELECT * FROM Login");rs1=st1.executeQuery("SELECT * FROM superlog");if(rs.next()){a12.setVisible(true);a21.setEnabled(true);a22.setEnabled(true);a23.setEnabled(true);a24.setEnabled(true);Login login=new Login();login.Clear();}if(rs1.next()){a12.setVisible(true);a13.setVisible(true);a14.setVisible(true);a15.setVisible(true);superlog superlog=new superlog();/doc/04245934482fb4daa58d4b93.html lear(); }con.close();}catch(SQLException e){System.out.println(e);}}}}主页⾯class Login{void Login(){final JFrame loginframe=new JFrame("登陆界⾯"); loginframe.setBounds(200,200,400,500); loginframe.setVisible(true);loginframe.setResizable(true);loginframe.setLayout(null);final JTextField text1=new JTextField(10);final JPasswordField text2=new JPasswordField(10); JButton btn1=new JButton("登陆");JButton btn2=new JButton("取消");JLabel label1=new JLabel("⽤户名"); JLabel label2=new JLabel("密码"); loginframe.add(btn1); loginframe.add(btn2); loginframe.add(text1); loginframe.add(text2); loginframe.add(label1); loginframe.add(label2);label1.setBounds(80, 100, 50, 50); label2.setBounds(80, 200, 50, 50); btn1.setForeground(Color.black); btn2.setForeground(Color.black); text1.setBounds(150, 100, 200, 30); text2.setBounds(150, 200, 200, 30); btn1.setBounds(100, 300, 100, 60); btn2.setBounds(200, 300, 100, 60);。
JA V A程序设计实验报告学号:姓名:班级:实验、Java课程设计--------学生信息管理系统一、实验目的1.掌握Java基本语法2.理解面向对象编程特点3.理解Java I/O编程4.掌握Java图形界面编程5.掌握Java与不同数据库进行连接二、预习内容Java的基本语法知识、类和对象、Java Swing图形界面编程、Java I/O处理以及Java与数据库连接操作三、实验设备与环境通过局域网互联,安装Windows 2000/XP操作系统环境的JDK 1.6,my eclipse 或者EditPlus编程工具。
并安装MySQL数据库四、实验内容编写并调试运行Java程序,进行设计,掌握Java开发的基础。
五、实验任务设计学生信息管理系统。
要求包括1. 登陆模块:设立超级管理员权限,用户可以根据不同的权限登陆系统,超级管理员可以对学生信息进行增、删、改、查操作。
而普通用户只可以查找学生信息。
2. 包括学生添加信息模块、学生信息删除模块、学生信息修改模块和学生信息查询模块3.对于管理员,可以对管理员进行添加、删除以及修改密码等操作。
六、实验报告(要求独立完成参考程序的代码、编译、调试与运行)1、程序清单:1.1程序模块清单package Pan;import java.awt.event.ItemListener;import javax.swing.*;import ponent;import java.awt.BorderLayout;import java.awt.FlowLayout;import java.awt.event.InputEvent;import java.awt.event.ItemListener;import java.awt.event.KeyEvent;import java.awt.event.ActionListener; import java.awt.event.ActionEvent;import java.util.*;import java.awt.Color;import java.text.DecimalFormat;import java.sql.*;import java.sql.Date;import java.awt.*;import java.util.Vector;public class Res{/*** @param args*/public static void main(String[] args) {FirstWindow win =new FirstWindow("学生信息管理系统");}}class FirstWindow extends JFrame implements ActionListener{JMenuBar menubar;JMenu menu1,menu2,menu3,menu4;public final JMenuItem a11,a12,a13,a14,a15,a16,a17;public final JMenuItem a21,a22,a23,a24;public final JMenuItem a3;public final JMenuItem a4;public final JButton btn;JPanel pnl;JLabel label;boolean flag;FirstWindow(String s){setTitle(s);setSize(400,400);setLocation(100,100);setVisible(true);setDefaultCloseOperation(3);pnl=new JPanel();this.getContentPane().add(pnl);pnl.setLayout(new BorderLayout());label=new JLabel("欢迎使用学生管理系统",JLabel.CENTER);label.setForeground(Color.red);pnl.add(label,BorderLayout.CENTER);menubar=new JMenuBar();menu1=new JMenu("使用");menu2=new JMenu("用户管理");menu3=new JMenu("帮助");menu4=new JMenu("退出");a11=new JMenuItem("管理员登录");a12=new JMenuItem("查询学生信息");a13=new JMenuItem("更改学生信息");a14=new JMenuItem("删除学生信息");a15=new JMenuItem("添加学生信息");a16=new JMenuItem("超级管理员登录");a17=new JMenuItem("普通学生登录");a11.setEnabled(true);a16.setEnabled(true);a17.setEnabled(true);a12.setVisible(false);a13.setVisible(false);a14.setVisible(false);a15.setVisible(false);a21=new JMenuItem("添加用户");a22=new JMenuItem("删除用户");a23=new JMenuItem("更改用户");a24=new JMenuItem("修改密码");a21.setEnabled(false);a22.setEnabled(false);a23.setEnabled(false);a24.setEnabled(false);a3=new JMenuItem("系统介绍");a3.setEnabled(true);a4=new JMenuItem("退出");a4.setEnabled(true);btn=new JButton("再次确认登陆");pnl.add(btn,BorderLayout.EAST);btn.setSize(10,10); menu1.add(a11);menu1.addSeparator(); menu1.add(a16);menu1.addSeparator(); menu1.add(a17);menu1.addSeparator(); menu1.add(a12);menu1.addSeparator(); menu1.add(a13);menu1.addSeparator(); menu1.add(a14);menu1.addSeparator(); menu1.add(a15);menu1.addSeparator();menu2.add(a21);menu2.addSeparator(); menu2.add(a22);menu2.addSeparator(); menu2.add(a23);menu2.addSeparator();menu2.add(a24);menu2.addSeparator();menu3.add(a3);menu3.addSeparator();menu4.add(a4);menubar.add(menu1); menubar.add(menu2); menubar.add(menu3); menubar.add(menu4); setJMenuBar(menubar);a11.addActionListener(this); a12.addActionListener(this); a13.addActionListener(this); a14.addActionListener(this); a15.addActionListener(this); a16.addActionListener(this); a17.addActionListener(this); a21.addActionListener(this); a22.addActionListener(this); a23.addActionListener(this); a24.addActionListener(this); a3.addActionListener(this);a4.addActionListener(this);btn.addActionListener(this);}public void setColor(Color black) {// TODO Auto-generated method stub}public void actionPerformed(ActionEvent event) {Object temp=new Object();temp=event.getSource();if(temp==a11){Login login=new Login();login.Login();}if(temp==a12){ShowStu show=new ShowStu();show.ShowStu();}if(temp==a13){AlterStu alter=new AlterStu();alter.AlterStu();}if(temp==a14){DeleteStu delete=new DeleteStu();delete.DeleteStu();}if(temp==a15){AddStu add=new AddStu();add.AddStu();}if(temp==a16){superlog superlog=new superlog();superlog.superlog();}if(temp==a17){stuLogin stu=new stuLogin();stu.stuLogin();a12.setVisible(true);}if(temp==a21){AddUser add=new AddUser();add.AddUser();}if(temp==a22){DeleteUser delete=new DeleteUser();delete.DeleteUser();}if(temp==a23){AlterUser alter=new AlterUser();alter.AlterUser();}if(temp==a24){AlterPword pword=new AlterPword(); pword.AlterPword();}if(temp==a3){SystemHelp help=new SystemHelp();help.SystemHelp();}if(temp==a4){SystemExit exit1=new SystemExit();exit1.SystemExit();}if(temp==btn){Connection con;Statement st;Statement st1;ResultSet rs,rs1;try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{con=DriverManager.getConnection("jdbc:odbc:pan","","") ;st=con.createStatement();st1=con.createStatement();rs=st.executeQuery("SELECT * FROM Login");rs1=st1.executeQuery("SELECT * FROM superlog");if(rs.next()){a12.setVisible(true);a21.setEnabled(true);a22.setEnabled(true);a23.setEnabled(true);a24.setEnabled(true);Login login=new Login();login.Clear();}if(rs1.next()){a12.setVisible(true);a13.setVisible(true);a14.setVisible(true);a15.setVisible(true);superlog superlog=new superlog();lear();}con.close();}catch(SQLException e){System.out.println(e);}}}}主页面class Login{void Login(){final JFrame loginframe=new JFrame("登陆界面");loginframe.setBounds(200,200,400,500);loginframe.setVisible(true);loginframe.setResizable(true);loginframe.setLayout(null);final JTextField text1=new JTextField(10);final JPasswordField text2=new JPasswordField(10);JButton btn1=new JButton("登陆");JButton btn2=new JButton("取消");JLabel label1=new JLabel("用户名");JLabel label2=new JLabel("密码");loginframe.add(btn1);loginframe.add(btn2);loginframe.add(text1);loginframe.add(text2);loginframe.add(label1);loginframe.add(label2);label1.setBounds(80, 100, 50, 50);label2.setBounds(80, 200, 50, 50);btn1.setForeground(Color.black);btn2.setForeground(Color.black);text1.setBounds(150, 100, 200, 30);text2.setBounds(150, 200, 200, 30);btn1.setBounds(100, 300, 100, 60);btn2.setBounds(200, 300, 100, 60);btn1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){String name=text1.getText();String password=text2.getText();try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{Connection con;Statement sql,st;ResultSet rs;con=DriverManager.getConnection("jdbc:odbc:pan","","") ;sql=con.createStatement();st=con.createStatement();rs=sql.executeQuery("SELECT username,password FROM users where username='"+name+"'");if(!rs.next()){JOptionPane b=new JOptionPane();b.showMessageDialog(null,"账号有误" ,"消息对话框",RMATION_MESSAGE);}else{String username=rs.getString(1);String pass=rs.getString(2);if( Integer.parseInt(password)==Integer.parseInt(pass) ){st.executeUpdate("INSERT INTO Login VALUES('"+username+"','"+pass+"')");loginframe.dispose();JOptionPane b=new JOptionPane();b.showMessageDialog(null,"登录成功" ,"消息对话框",RMATION_MESSAGE);}else{text1.setText("");text2.setText("");JOptionPanea=new JOptionPane();a.showMessageDialog(null,"您的账户名或者密码有误","消息对话框" ,RMATION_MESSAGE);}}}catch(SQLException e){System.out.println(e);}}});btn2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){loginframe.dispose();}});}void Clear(){Connection con;Statement st;ResultSet rs;try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{con=DriverManager.getConnection("jdbc:odbc:pan","","") ;st=con.createStatement();st.executeUpdate("DELETE FROM Login");con.close();}catch(SQLException e){System.out.println(e);}}}管理员登陆与权限class superlog{superlog(){final JFrame loginframe=new JFrame("登陆界面");loginframe.setBounds(200,200,400,500);loginframe.setVisible(true);loginframe.setResizable(true);loginframe.setLayout(null);final JTextField text1=new JTextField(10);final JPasswordField text2=new JPasswordField(10);JButton btn1=new JButton("登陆");JButton btn2=new JButton("取消");JLabel label1=new JLabel("超级用户名",JLabel.CENTER);JLabel label2=new JLabel("密码",JLabel.CENTER);loginframe.add(btn1);loginframe.add(btn2);loginframe.add(text1);loginframe.add(text2);loginframe.add(label1);loginframe.add(label2);label1.setBounds(80, 100, 100, 50);label2.setBounds(80, 200, 100, 50);btn1.setForeground(Color.black);btn2.setForeground(Color.black);text1.setBounds(150, 100, 200, 30);text2.setBounds(150, 200, 200, 30);btn1.setBounds(100, 300, 100, 60);btn2.setBounds(200, 300, 100, 60);btn1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){String name=text1.getText();@SuppressWarnings("deprecation")String password=text2.getText();tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{Connection con;Statement sql;ResultSet rs;con=DriverManager.getConnection("jdbc:odbc:pan","","") ;sql=con.createStatement();rs=sql.executeQuery("SELECT Cusername,Cpassword FROM super where Cusername='"+name+"'");if(!rs.next())JOptionPane b=new JOptionPane();b.showMessageDialog(null,"超级账号错误" ,"消息对话框",RMATION_MESSAGE);}else{String username=null;String pass=null;username=rs.getString(1);pass=rs.getString(2);if( Integer.parseInt(password)==Integer.parseInt(pass) ){sql.executeUpdate("INSERT INTO superlog VALUES('"+username+"',"+"'"+pass+"')");JOptionPane b=new JOptionPane();b.showMessageDialog(null,"登录成功" ,"消息对话框",RMATION_MESSAGE);loginframe.dispose();}else{text1.setText("");text2.setText("");JOptionPane a=new JOptionPane();a.showMessageDialog(null,"您的账户名或者密码有误","消息对话框" ,RMATION_MESSAGE);}}}catch(SQLException e){System.out.println(e);}}});btn2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){loginframe.dispose();}});}public void superlog() {// TODO Auto-generated method stub }void Cclear(){Connection con;Statement st;ResultSet rs;try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{con=DriverManager.getConnection("jdbc:odbc:pan","","") ;st=con.createStatement();st.executeUpdate("DELETE FROM superlog");con.close();}catch(SQLException e){System.out.println(e);}}}超级管理员登陆界面与权限class stuLogin{void stuLogin(){final JFrame loginframe=new JFrame("登陆界面");loginframe.setBounds(200,200,400,500);loginframe.setVisible(true);loginframe.setResizable(true);loginframe.setLayout(null);final JTextField text1=new JTextField(15);final JPasswordField text2=new JPasswordField(15);JButton btn1=new JButton("登陆");JButton btn2=new JButton("取消");JLabel label1=new JLabel(" 学生姓名",JLabel.CENTER);JLabel label2=new JLabel("密码",JLabel.CENTER);loginframe.add(btn1);loginframe.add(btn2);loginframe.add(text1);loginframe.add(text2);loginframe.add(label1);loginframe.add(label2);label1.setBounds(80, 100, 100, 50);label2.setBounds(80, 200, 100, 50);btn1.setForeground(Color.black);btn2.setForeground(Color.black);text1.setBounds(150, 100, 200, 30);text2.setBounds(150, 200, 200, 30);btn1.setBounds(100, 300, 100, 60);btn2.setBounds(200, 300, 100, 60);btn1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){String name=text1.getText();String password=text2.getText();try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{Connection con;Statement sql;ResultSet rs;con=DriverManager.getConnection("jdbc:odbc:pan","","") ;sql=con.createStatement();rs=sql.executeQuery("SELECTsname,sphone FROM student where sname='"+name+"' AND sphone='"+password+"'");if(rs.next()){JOptionPane a=new JOptionPane();a.showMessageDialog(null,"登陆成功","消息对话框" ,RMATION_MESSAGE);loginframe.dispose();}else{text1.setText("");text2.setText("");JOptionPane a=new JOptionPane();a.showMessageDialog(null,"您的账户名或密码有误","消息对话框" ,RMATION_MESSAGE);}con.close();}catch(SQLException e){System.out.println(e);}}});btn2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){loginframe.dispose();}});}}普通学生登陆与权限class ShowStu{void ShowStu(){JFrame frame1=new JFrame("学生信息窗口");frame1.setBounds(300,300,500,400);frame1.setDefaultCloseOperation(2);JTable table;Object a[][]=null;Object name[]={"学号","姓名","年龄","性别","籍贯","电话"};Connection con;Statement st;ResultSet rs;try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{con=DriverManager.getConnection("jdbc:odbc:pan",""," ");st=con.createStatement(ResultSet.TYPE_SCROLL_SENSITI VE,ResultSet.CONCUR_READ_ONLY);rs=st.executeQuery("SELECT * FROM student");st();int lastnumber=rs.getRow();a=new Object[lastnumber][6];int i=0;rs.beforeFirst();while(rs.next()){a[i][0]=rs.getString(1);a[i][1]=rs.getString(2);a[i][2]=rs.getString(3);a[i][3]=rs.getString(4);a[i][4]=rs.getString(5);a[i][5]=rs.getString(6);i++;}con.close();}catch(SQLException e){System.out.println(e);}table=new JTable(a,name);frame1.setLayout(new BorderLayout());frame1.add(newJScrollPane(table),BorderLayout.CENTER);frame1.setVisible(true);frame1.validate();}}class AlterStu{void AlterStu(){JFrame deleteframe=new JFrame("更改学生信息");deleteframe.setLayout(null);JLabel label=new JLabel("需要修改的学生学号",JLabel.CENTER);deleteframe.setVisible(true);deleteframe.setBounds(350,350,450,350);JButton btn=new JButton("确定");deleteframe.add(label);label.setForeground(Color.red);final JTextField text=new JTextField(10);text.setSize(100,60);deleteframe.add(text);deleteframe.add(btn);label.setBounds(150, 50, 150, 20);text.setBounds(150, 100, 100, 20);btn.setBounds(150, 150, 100, 20);btn.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){String sno=text.getText();Connection con;Statement st;ResultSet rs;try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println(e);}try{con=DriverManager.getConnection("jdbc:odbc:pan","","") ;st=con.createStatement();rs=st.executeQuery("SELECT * FROM student WHERE sno=+'"+sno+"'");if(rs==null){JOptionPane b=new JOptionPane();b.showMessageDialog(null,"该学生不存在" ,"消息对话框",RMATION_MESSAGE);}else{rs.next();final String no1=rs.getString(1);final String name1=rs.getString(2);final String age1=rs.getString(3);final String sex1=rs.getString(4);final String address1=rs.getString(5);final String phone1=rs.getString(6);JFrame addframe=new JFrame("修改学生信息");addframe.setDefaultCloseOperation(2);addframe.setBounds(400,200,450,600);addframe.setVisible(true);addframe.setResizable(true);addframe.validate();addframe.setLayout(newBorderLayout());Box basebox,box1,box2,box3,box4;basebox=Box.createHorizontalBox();box1=Box.createVerticalBox();box2=Box.createVerticalBox();box3=Box.createVerticalBox();box4=Box.createVerticalBox();JLabel no=new JLabel("学号");JLabel name=new JLabel("姓名");JLabel age=new JLabel("年龄");box1.add(Box.createVerticalStrut(90));box1.add(no);box1.add(Box.createVerticalStrut(90));box1.add(name);box1.add(Box.createVerticalStrut(90));box1.add(age);JLabel sex=new JLabel("性别");JLabel address =new JLabel("籍贯");JLabel phone=new JLabel("电话");box3.add(Box.createVerticalStrut(90));box3.add(sex);box3.add(Box.createVerticalStrut(90));box3.add(address);box3.add(Box.createVerticalStrut(90));box3.add(phone);final JTextField notext=new JTextField(15);final JTextField nametext=new JTextField(15);final JTextField agetext=new JTextField(15);final JTextField sextext=new JTextField(15);final JTextField addresstext=new JTextField(15);final JTextField phonetext=new JTextField(15);box2.add(Box.createVerticalStrut(90));box2.add(notext);box2.add(Box.createVerticalStrut(90));box2.add(nametext);box2.add(Box.createVerticalStrut(90));box2.add(agetext);box4.add(Box.createVerticalStrut(90));box4.add(sextext);box4.add(Box.createVerticalStrut(90));box4.add(addresstext);box4.add(Box.createVerticalStrut(90));box4.add(phonetext);basebox.add(box1);basebox.add(box2);basebox.add(box3);basebox.add(box4);。