Java大作业简单的学籍管理系统(共28页)

上传人:文**** 文档编号:53416195 上传时间:2022-02-10 格式:DOC 页数:28 大小:327KB
返回 下载 相关 举报
Java大作业简单的学籍管理系统(共28页)_第1页
第1页 / 共28页
Java大作业简单的学籍管理系统(共28页)_第2页
第2页 / 共28页
Java大作业简单的学籍管理系统(共28页)_第3页
第3页 / 共28页
点击查看更多>>
资源描述
精选优质文档-倾情为你奉上上海电力学院期末作业:简单的学籍管理系统课程:Web应用程序设计院系:电气工程学院专业:电力系统及其自动化学生姓名:张富杰学号: 指导教师:曹渝昆2017 年 1月6日专心-专注-专业目录一、设计思路3二具体实现3三运行调试与分析3四设计体会与小结8五程序代码8一、设计思路随着社会经济的发展, 入学的同学越来越多, 为方便对同学学籍信息的的管理,设计学籍管理软件来管理本班级同学的学籍信息。 该软件应支持添加、删除、修改、查询功能。查询方式主要是支持学号查询,例如:输入“1”,则显示该学生的信息。运用流式、卡片、整体布局方式对系统的主界面和各功能界面进行设计; 通过连接数据库的方式来实现对数据的存储; 各功能实现时访问数据库, 并对数据信息进行读取,运用 Java 语句对其进行输出,学号查询时显示在文本框中;系统提示功能用来提醒用户的错误操作和输入时的错误信息,提醒用户进行改正。二具体实现1 向班级里插入一个学生,但必须是插在已经建立的班级里。2 输入学生信息,建立一个班级。3 修改一个学生的所有资料。4 删除某班的一个学生及其所有资料。5 删除一个班级。6根据学生姓名查找某个学生信息。每种功能通过一个类来实现:类分分为主类、查询类、修改类、添加类、增加类。主类各功能界面的连接;精确查询类 (SearchStudent)实现根据学生姓名查找某个学生信息;修改类 (MdifyStudent) 实现修改一个学生的所有资料;添加类(AddStudent)实现向班级里插入一个学生,但必须是插在已经建立的班级里。 ;删除类 (DeleteStudent)实现删除某班的一个学生及其所有资料。 ;删除类 (DeleteClass) 实现删除一个班级;建立类( BuiltClass)实现输入学生信息建立一个班级。三运行调试与分析系统的详细设计代码请查阅附带的代码。以下仅对各个界面进行截图展示:图 1:管理界面图 2:添加学生到指定的班级界面图 3:删除一个学生信息界面图 4:修改一个学生信息界面图 5:查询某个学生信息界面图 6 删除一个班级界面图 7:输入一个学生建立一个班级界面运行 JAVA程序中的 StudentManager 文件,显示系统的主界面,如图 1 所示,主界面有进入其他子功能的按钮, 选择相应的按钮便可进入相应的功能。 添加学生到指定班级功能如图 2 所示,根据提示输入要添加的信息, 点击确定, 将弹出提示框,确认是否添加。 输入一个学生建立一个班级功能如图 7 所示,根据提示输入要添加的信息,点击确定,将弹出提示框,确认是否建立。删除一个班级信息功能如图 6 所示,根据提示输入班级号, 点击删除。删除一个学生信息功能如图 3 所示,根据提示输入学号,点击删除。修改一个学生信息功能如图4 所示,首先输入要修改的人姓名, 点击开始修改, 在下面的文本框现实当前数据库内所存该人的信息,同时录入修改键变化为可点击,在文本框内输入要修改的学号,点击录入修改, 系统将新信息录如数据库。点击查询某个学生信息按钮,将弹出查询对话框, 输入姓名便可以精确查询到此人的所有学籍信息。查询如图 5 所示,将显示数据库中所存的所有号码信息。四设计体会与小结期末大作业的课设,自己通过查找资料、复习课本、编程调试,写实验报告等环节,进一步掌握了以前学到的知识, 并且还对 GUI组键的应用有了更深入的认识与掌握,另外还学到了一些新东西,比如 JAVA 的 SWING、AWT 包,以前是没有接触过的, 可是通过这次课程设计使得我们对这个包更了解。 通过与数据库的连接掌握了 Java与数据库的连接技术。通过实践的学习,我认到学好计算机要重视实践操作,不仅仅是学习语言,还是其它的语言, 以及其它的计算机方面的知识都要重在实践,学习过程中,我会更加注视实践操作,使自己便好地学好计算机。java所以后在五程序代码package simplebighomework;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class StudentManager extends JFrame implements ActionListener / 继承JFrame类JMenuBar jmb;/ 菜单栏JMenu Message;/ 菜单JMenuItem Item1,Item2,Item3,Item4,Item5,Item6;/ 菜单项public StudentManager(String s) / 构造函数StudentManage/ 添加按键jmb = new JMenuBar();Message = new JMenu(学生信息 );Item1 = new JMenuItem(增加学生信息到指定班级);/ 菜单名Item2 = new JMenuItem(删除一个学生学籍信息 );Item3 = new JMenuItem(修改一个学生信息 );Item4 = new JMenuItem(查询某个学生信息 );Item5 = new JMenuItem(删除一个班级信息 );Item6 = new JMenuItem(输入一个学生建立一个班级);Message.add(Item1);Message.add(Item2);Message.add(Item3);Message.add(Item4);Message.add(Item5);Message.add(Item6);jmb.add(Message);Item1.addActionListener(this);Item2.addActionListener(this);Item3.addActionListener(this);Item4.addActionListener(this);Item5.addActionListener(this);Item6.addActionListener(this);setTitle(s);/ 设置窗口标题setBounds(500,300,500,500); /窗口的位置setVisible(true);/ 组件可见setJMenuBar(jmb);validate();/ 菜单栏/ 再次布置容器及其组件setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/设置隐藏,关闭,放大窗口public void actionPerformed(ActionEvent e)/ActionEvent 包含一个事件,该事件为执行动作事件点击按钮等if (e.getSource() = Item1) /e.getSource() = Item2)返回的当前动作所指向的对象,包含对象的所有信息。AddStudent ad = new AddStudent(); else if (e.getSource() = Item2) / 通过获取事件源, 获取相应的对象DeleteStudent ds = new DeleteStudent(); else if (e.getSource() = Item3) ModifyStudent ms = new ModifyStudent(); else if (e.getSource() = Item4) SearchStudent ss = new SearchStudent(); else if (e.getSource() = Item5) DeleteClass dc = new DeleteClass(); else if (e.getSource() = Item6) BuiltClassbc = new BuiltClass();public static void main(String args) StudentManager stu=new StudentManager(学生管理系统 );package simplebighomework;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class AddStudent extends JFrame implements ActionListener /继承 java的窗口体类JLabel JL = new JLabel(添加学生到指定班级 , JLabel.CENTER);JLabel JLNumber = new JLabel(学号 :);/ 显示输入学号JTextField JTNumber = new JTextField(); / 创建文本框JLabel JLName = new JLabel(姓名 :);JTextField JTName = new JTextField();JLabel JLClass = new JLabel(班级 :);ButtonGroup BG = new ButtonGroup();JRadioButton JRB1 = new JRadioButton(一班 );JRadioButton JRB2 = new JRadioButton(二班 );JButton JBAdd = new JButton(添加 ); JButton JBExit = new JButton(退出 );/ 创建按钮public AddStudent() this.setTitle(添加学生到指定班级 );this.setLayout(null);JL.setBounds(100, 30, 200, 40);this.add(JL);JLNumber.setBounds(140, 80, 100, 20);/x轴和y 轴,宽高this.add(JLNumber);JTNumber.setBounds(180, 80, 80, 20);this.add(JTNumber);JLName.setBounds(140, 120, 60, 20);this.add(JLName);JTName.setBounds(180, 120, 80, 20);this.add(JTName);JLClass.setBounds(140, 160, 100, 20);this.add(JLClass);JRB1.setBounds(180, 160, 60, 20);JRB2.setBounds(240, 160, 60, 20);this.add(JRB1);this.add(JRB2);BG.add(JRB1);BG.add(JRB2);JBAdd.setBounds(120, 220, 60, 20);this.add(JBAdd);JBAdd.addActionListener(this);JBExit.setBounds(200, 220, 60, 20);this.add(JBExit);JBExit.addActionListener(this);this.setBounds(500, 300, 500, 400);this.setVisible(true);/ 添加窗口的位置public void actionPerformed(ActionEvent e) /监听接口if (e.getSource() = JBAdd) / 点击建立的时候生效String snumber = JTNumber.getText();/ 获取文本框中的信息String sname = JTName.getText();String sclass = 一班 ;if (JRB1.isSelected()/ 单选按钮sclass = 一班 ;elsesclass = 二班 ;Connection con;/ 声明 Connection 对象String driver = com.mysql.jdbc.Driver;/ 驱动程序名/ 遍历查询结果集try Class.forName(driver);/ 加载驱动程序con=DriverManager.getConnection(jdbc:mysql:/localhost:3306/database?useUnicode=t rue&characterEncoding=utf-8&useSSL=false,root,zfj); /1.getConnection() 方法,连接 MySQL数据库!Statement statement = con.createStatement(); /2. 创建 statement 类对象,用来执行 SQL语句!String sql = select * from student where id=+snumber+;/ 要执行的 SQL语句ResultSet rs = statement.executeQuery(sql);/3.ResultSet类,用来存放获取的结果集! !if (rs.next()JOptionPane.showMessageDialog(null,该号已经存在 );/提示else sql = insert into student values( + snumber + ,+ sname + , + sclass +);int i = statement.executeUpdate(sql);/ 执行SQL语句,把返回值赋给iif (i 0)JOptionPane.showMessageDialog(null, 建立成功 );/ 提示成功elseJOptionPane.showMessageDialog(null, 添加失败 );/ 提示失败catch (Exception ee) / 捕获异常if (e.getSource() = JBExit) / 退出按钮监视setVisible(false);public static void main(String args) new BuiltClass();package simplebighomework;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class BuiltClass extends JFrame implements ActionListener JLabel JL = new JLabel(输入一个学生建立一个班级, JLabel.CENTER);/什么意思JLabel JLNumber = new JLabel(学号 :);/ 显示输入学号JTextField JTNumber = new JTextField();/ 创建文本框JLabel JLName = new JLabel(姓名 :);JTextField JTName = new JTextField();JLabel JLClass = new JLabel(班级 :);JTextField JTClass = new JTextField();JButton JBAdd = new JButton(建立 );/ 创建按钮JButton JBExit = new JButton(退出 );/ 什么意思public BuiltClass() this.setTitle(输入一个学生建立一个班级);this.setLayout(null);JL.setBounds(100, 30, 200, 40);this.add(JL);JLNumber.setBounds(140, 80, 100, 20); /x 轴和 y 轴,宽高 this.add(JLNumber);JTNumber.setBounds(180, 80, 80, 20);this.add(JTNumber);JLName.setBounds(140, 120, 60, 20);this.add(JLName);JTName.setBounds(180, 120, 80, 20);this.add(JTName);JLClass.setBounds(140, 160, 100, 20);this.add(JLClass);JTClass.setBounds(180, 160, 80, 20);this.add(JTClass);JBAdd.setBounds(120, 220, 60, 20);this.add(JBAdd);JBAdd.addActionListener(this);JBExit.setBounds(200, 220, 60, 20);this.add(JBExit);JBExit.addActionListener(this);this.setBounds(500, 300, 500, 400);this.setVisible(true);public void actionPerformed(ActionEvent e) if (e.getSource() = JBAdd) String snumber = JTNumber.getText();/ 什么意思?监听接口/ 点击建立的时候生效/ 获取文本框中的信息String sname = JTName.getText();String sclass = JTClass.getText();Connection con;/ 声明 Connection 对象String driver = com.mysql.jdbc.Driver;/ 驱动程序名/ 遍历查询结果集try Class.forName(driver);/ 加载驱动程序con=DriverManager.getConnection(jdbc:mysql:/localhost:3306/database?useUnicode=t rue&characterEncoding=utf-8&useSSL=false,root,zfj); /1.getConnection() 方法,连接 MySQL数据库!Statement statement = con.createStatement();/2.创建 statement 类对象,用来执行SQL语句!Stringsql=select*fromstudentwhereid=+snumber+;ResultSetrs=statement.executeQuery(sql);/3.ResultSet 类,用来存放获取的结果集! !if (rs.next()JOptionPane.showMessageDialog(null,该号已经存在 );/提示else sql = insert into student values( + snumber + ,+ sname + , + sclass +);int i = statement.executeUpdate(sql);/ 执行SQL语句,把返回值赋给iif (i 0)JOptionPane.showMessageDialog(null, 建立成功 );/ 提示成功elseJOptionPane.showMessageDialog(null, 添加失败 );/ 提示失败catch (Exception ee) / 什么意思?if (e.getSource() = JBExit) setVisible(false);/ 什么意思?public static void main(String args) new BuiltClass();package simplebighomework;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class DeleteClass extends JFrame implements ActionListener JLabel JL = new JLabel(删除一个班级信息 , JLabel.CENTER); JLabel JLClass = new JLabel(班级 :); / 显示班级窗口 JTextField JTClass = new JTextField();输/入班级的窗口JButton JBDel = new JButton(删除 );JButton JBExit = new JButton(退出 );public DeleteClass() this.setTitle(删除一个班级信息 );this.setLayout(null);JL.setBounds(100, 30, 200, 40);this.add(JL);JLClass.setBounds(140, 80, 60, 20);this.add(JLClass);JTClass.setBounds(180, 80, 80, 20);this.add(JTClass);JBDel.setBounds(120, 120, 60, 20);this.add(JBDel);JBDel.addActionListener(this);JBExit.setBounds(200, 120, 60, 20);this.add(JBExit);JBExit.addActionListener(this);this.setBounds(500, 300, 500, 400);this.setVisible(true);public void actionPerformed(ActionEvent e)/ 执行操作if (e.getSource() = JBDel) String sclass = JTClass.getText();/ 获取文本中输入的班级Connection con;/ 声明 Connection 对象String driver = com.mysql.jdbc.Driver;/ 驱动程序名/ 遍历查询结果集try Class.forName(driver);/ 加载驱动程序con=DriverManager.getConnection(jdbc:mysql:/localhost:3306/database?useUnicode=true&characterEncoding=utf-8&useSSL=false,root,zfj);/1.getConnection() 方法,连接 MySQL数据库!Statement statement = con.createStatement();/2.创建 statement 类对象,用来执行SQL语句!Stringsql=select*fromstudentwhereclass=+sclass+;ResultSetrs=statement.executeQuery(sql);/3.ResultSet 类,用来存放获取的结果集! !if (rs.next() sql = delete from student where class= + sclass + ; int n = statement.executeUpdate(sql);if (n 0)JOptionPane.showMessageDialog(null, 删除成功 );elseJOptionPane.showMessageDialog(null, 删除失败 ); else JOptionPane.showMessageDialog(null, 不存在该班级 );catch (Exception er) if (e.getSource() = JBExit) setVisible(false);public static void main(String args) new DeleteClass();package simplebighomework;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class DeleteStudent extends JFrame implements ActionListener JLabel JL = new JLabel(删除一个学生信息 , JLabel.CENTER);JLabel JLNumber = new JLabel(学号 :);/ 显示输入“学号”JTextField JTNumber = new JTextField(); /输入学号的文本框JLabel JLClass = new JLabel(班级 :);/ 显示输入“班级”JTextField JTClass = new JTextField(); 输/入班级的文本框JLabel JLName = new JLabel(姓名 :);/ 显示输入“姓名”JTextField JTName = new JTextField(); 输/入姓名的文本框JButton JBDel = new JButton(删除 );/ 删除键JButton JBExit = new JButton(退出 );/ 退出键public DeleteStudent() this.setTitle(删除一个学生信息 );this.setLayout(null);JL.setBounds(100, 30, 200, 40);this.add(JL);JLNumber.setBounds(140, 80, 100, 20);/x轴和y 轴,宽高this.add(JLNumber);JTNumber.setBounds(180, 80, 80, 20);this.add(JTNumber);JLName.setBounds(140, 120, 80, 20);/x轴和y 轴,宽高this.add(JLName);JTName.setBounds(180, 120, 80, 20);this.add(JTName);JLClass.setBounds(140, 160, 80, 20);/x轴和y 轴,宽高this.add(JLClass);JTClass.setBounds(180, 160, 80, 20);this.add(JTClass);JBDel.setBounds(120, 200, 60, 20);this.add(JBDel);JBDel.addActionListener(this);JBExit.setBounds(200, 200, 60, 20);this.add(JBExit);JBExit.addActionListener(this);this.setBounds(500, 300, 500, 400);this.setVisible(true);public void actionPerformed(ActionEvent e)if (e.getSource() = JBDel) String snumber = JTNumber.getText();/ 获取输入的学号Connection con;/ 声明 Connection 对象String driver = com.mysql.jdbc.Driver;/ 驱动程序名/ 遍历查询结果集try Class.forName(driver);/ 加载驱动程序con=DriverManager.getConnection(jdbc:mysql:/localhost:3306/database?useUnicode=true&characterEncoding=utf-8&useSSL=false,root,zfj);Statement statement = con.createStatement();/2.创建 statement 类对象,用来执行SQL语句!Stringsql=select*fromstudentwhereid=+snumber+;ResultSetrs=statement.executeQuery(sql);/3.ResultSet 类,用来存放获取的结果集! !if (rs.next() sql = delete from student where id= + snumber + ; int n = statement.executeUpdate(sql); if (n 0)JOptionPane.showMessageDialog(null, 删除成功 );/执行了返回删除成功elseJOptionPane.showMessageDialog(null, 删除失败 );else JOptionPane.showMessageDialog(null, 不存在该学号学生 );catch (Exception er) if (e.getSource() = JBExit) setVisible(false);public static void main (String args) new DeleteStudent();package simplebighomework;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class ModifyStudent extends JFrame implements ActionListener JLabel JL = new JLabel(修改一个学生信息 , JLabel.CENTER);JLabel JLNumber = new JLabel(学号 :);/ 显示学号JTextField JTNumber = new JTextField();/ 创建用于输入学号的文本JLabel JLName = new JLabel(姓名 :);JTextField JTName = new JTextField();JLabel JLClass = new JLabel(班级 :);JTextField JTClass = new JTextField();JButton JBGet = new JButton(修改 ); JButton JBExit = new JButton(退出 );/ 修改按钮public ModifyStudent() this.setTitle(修改一个学生信息 );this.setLayout(null);JL.setBounds(100, 30, 200, 40);this.add(JL);JLNumber.setBounds(140, 80, 100, 20); /x 轴和 y 轴,宽高 this.add(JLNumber);JTNumber.setBounds(180, 80, 80, 20);this.add(JTNumber);JLName.setBounds(140, 120, 60, 20);this.add(JLName);JTName.setBounds(180, 120, 80, 20);this.add(JTName);JLClass.setBounds(140, 160, 100, 20);this.add(JLClass);JTClass.setBounds(180, 160, 80, 20);this.add(JTClass);JBGet.setBounds(120, 220, 60, 20);this.add(JBGet);JBGet.addActionListener(this);JBExit.setBounds(200, 220, 60, 20);this.add(JBExit);JBExit.addActionListener(this);this.setBounds(500, 300, 500, 400);this.setVisible(true);public void actionPerformed(ActionEvent e) if (e.getSource() = JBGet) String snumber = JTNumber.getText(); / 读取文本中输入的学号 String sname = JTName.getText(); String sclass = JTClass.getText();Connection con;/ 声明 Connection 对象String driver = com.mysql.jdbc.Driver;/ 驱动程序名/ 遍历查询结果集try Class.forName(driver);/ 加载驱动程序con=DriverManager.getConnection(jdbc:mysql:/localhost:3306/database?useUnicode=t rue&characterEncoding=utf-8&useSSL=false,root,zfj); /1.getConnection() 方法,连接 MySQL数据库!Statement statement = con.createStatement();/2.创建 statement 类对象,用来执行SQL语句!Stringsql=select*fromstudentwhereid=+snumber+;/ 根据 id 对数据库查询ResultSetrs=statement.executeQuery(sql);/3.ResultSet 类,用来存放获取的结果集! !if (rs.next()sql = UPDATE student SET name= +sname+ ,class=+sclass+ where id= + snumber + ;intn=statement.executeUpdate(sql);/ 什么意思?if (n 0)JOptionPane.showMessageDialog(null, 修改成功 );elseJOptionPane.showMessageDialog(null, 修改失败 ); else JOptionPane.showMessageDialog(null, 不存在该学号学生 );catch (Exception er) if (e.getSource() = JBExit) setVisible(false); public static void main(String args) new ModifyStudent();package simplebighomework;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class SearchStudent extends JFrame implements ActionListener JLabel JL = new JLabel(查询某个学生信息 , JLabel.CENTER); JLabel JLNumber = new JLabel(学号 :);JTextField JTNumber = new JTextField();/ 输入学号的文本JLabel JLName = new JLabel(姓名 :);JTextField JTName = new JTextField();JLabel JLClass = new JLabel(班级 :);JTextField JTClass = new JTextField();JButton JBSet = new JButton(查询 );/ 查询按钮JButton JBExit = new
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!