java学生管理系统界面设计

article/2025/9/28 8:12:12

关于学生管理系统的界面设计:代码如下:
数据库设计

DROP TABLE IF EXISTS `stu`;
CREATE TABLE `stu` (`stuId` int(11) NOT NULL AUTO_INCREMENT,`stuName` varchar(30) DEFAULT NULL,`stuSex` varchar(30) DEFAULT NULL,`stuAge` int(11) DEFAULT NULL,`stuJg` varchar(30) DEFAULT NULL,`stuDept` varchar(30) DEFAULT NULL,PRIMARY KEY (`stuId`)
) ENGINE=MyISAM AUTO_INCREMENT=10002 DEFAULT CHARSET=utf8;

添加学生信息界面

/*** @author 逸軒* https://www.jianshu.com/u/1b1f7b0b32d6*/
import java.awt.BorderLayout;  
import java.awt.Dialog;  
import java.awt.Frame;  
import java.awt.GridLayout;  
import java.awt.event.ActionEvent;  
import java.awt.event.ActionListener;  import javax.swing.*;  public class StuAddDialog extends JDialog implements ActionListener{  //=========面板控件  //......左侧标题栏  private JLabel idLab,nameLab,sexLab,ageLab,jgLab,deptLab;  //......右侧信息选择填写栏  private JTextField idTxt,nameTxt,sexTxt,ageTxt,jgTxt,deptTxt;  //......添加和取消按钮  private JButton addBtn,cancelBtn;  //......布局控件  private JPanel left,center,bottom;  //构造函数  public StuAddDialog(Frame owner, String title, boolean modal)   {  //========重写父类方法  super(owner, title, modal);  //========左侧标签栏  idLab = new JLabel("学号: ");  nameLab = new JLabel("姓名: ");  sexLab = new JLabel("性别: ");  ageLab = new JLabel("年龄: ");  jgLab = new JLabel("籍贯: ");  deptLab = new JLabel("系别: ");  //========右侧信息填写栏  idTxt = new JTextField();  nameTxt = new JTextField();  sexTxt = new JTextField();  ageTxt = new JTextField();  jgTxt = new JTextField();  deptTxt = new JTextField();  //========添加和取消按钮  addBtn = new JButton("添加");  cancelBtn = new JButton("取消");  //......添加监听  addBtn.addActionListener(this);  addBtn.setActionCommand("add");  cancelBtn.addActionListener(this);  cancelBtn.setActionCommand("cancel");  //========创建布局  //......创建左边栏  left = new JPanel();  left.setLayout(new GridLayout(6, 1));  left.add(idLab);  left.add(nameLab);   left.add(sexLab); left.add(ageLab);   left.add(jgLab);  left.add(deptLab);   //......创建右边栏  center = new JPanel();  center.setLayout(new GridLayout(6, 1));  center.add(idTxt);  center.add(nameTxt);  center.add(sexTxt); center.add(ageTxt);  center.add(jgTxt);  center.add(deptTxt);  //========底层添加和取消按钮  bottom = new JPanel();  bottom.add(addBtn);  bottom.add(cancelBtn);  //========整体布局  this.add(left,BorderLayout.WEST);  this.add(center,BorderLayout.CENTER);  this.add(bottom,BorderLayout.SOUTH);  //========设置窗口属性  this.setSize(300, 250);  this.setResizable(false);  this.setVisible(true);  }  @Override  public void actionPerformed(ActionEvent e)   {  // TODO Auto-generated method stub  if(e.getActionCommand().equals("add")) {  /***********************添加学生信息**************************/  StuModel tmp = new StuModel();  String sql = "insert into stu values(?,?,?,?,?,?)";  String []paras = {idTxt.getText(),nameTxt.getText(),sexTxt.getText(),  ageTxt.getText(),jgTxt.getText(),deptTxt.getText()};  if(!tmp.cudStu(sql, paras))  JOptionPane.showMessageDialog(this, "添加学生信息失败");  //========关闭窗口  this.dispose();  } else if(e.getActionCommand().equals("cancel")) {  //========关闭窗口  this.dispose();  }  }  
}  

数据库连接

/*** @author 逸軒* https://www.jianshu.com/u/1b1f7b0b32d6*/
import java.sql.*;  public class SqlHelper {  //========数据库  private Connection ct = null;  private PreparedStatement ps = null;  private ResultSet rs = null;  private String driver = "com.mysql.jdbc.Driver";  //后面加上utf-8 不然中文乱码private String url = "jdbc:mysql://localhost:3306/test?characterEncoding=utf-8";  private String user = "root";  private String passwd = "";  //========查询  public ResultSet queryExecute(String sql, String []paras)  {  try {  //========1、加载驱动  Class.forName(driver);  //========2、连接  ct = DriverManager.getConnection(url, user, passwd);  //========3、创建PreparedStatement  ps = ct.prepareStatement(sql);  //========4、给问号赋值  if(paras != null) {  for(int i = 0; i < paras.length; i++) {  ps.setString(i + 1, paras[i]);  }  }  //========5、执行  rs = ps.executeQuery();  } catch (Exception e) {  // TODO: handle exception  e.printStackTrace();  } finally {  //this.close();  }  //========返回值  return rs;  }  //========增删改  public boolean cudExecute(String sql, String []paras)  {  boolean b = true;  try {  //========1、加载驱动  Class.forName(driver);  //========2、连接  ct = DriverManager.getConnection(url, user, passwd);  //========3、创建PreparedStatement  ps = ct.prepareStatement(sql);  //========4、给问号赋值  for(int i = 0; i < paras.length; i++) {  ps.setString(i + 1, paras[i]);  }  //========5、执行  if(ps.executeUpdate() != 1) b = false;  } catch (Exception e) {  // TODO: handle exception  b = false;  e.printStackTrace();  } finally {  this.close();  }  //========返回值  return b;  }  //========关闭资源  public void close()  {  try {  if(rs!=null) rs.close();  if(ps!=null) ps.close();  if(ct!=null) ct.close();  } catch (Exception e2) {  // TODO: handle exception  e2.printStackTrace();  }  }  }  

学生管理界面有查询功能、修改信息功能、删除功能

/*** @author 逸軒* https://www.jianshu.com/u/1b1f7b0b32d6*/
import java.awt.*;  
import javax.swing.*;  
import java.awt.event.*;  public class StudentManage extends JFrame implements ActionListener   
{  /** * @param args */  public static void main(String[] args)   {  // TODO Auto-generated method stub  new StudentManage();  }  //========面板控件  private JLabel queryLab = null;  private JTextField queryTxt = null;  private JButton queryBtn = null;  private JButton allBtn = null;  private JTable resultTb = null;  private JScrollPane jsp = null;  private JButton addBtn = null;  private JButton deleteBtn = null;  private JButton updateBtn = null;  private JPanel top = null;  private JPanel bottom = null;  //========  private StuModel sm = null;  //构造函数  public StudentManage()  {  super("学生管理系统");/***************************初始化面板控件***********************/  //========查询栏  queryLab = new JLabel("请输入姓名:");  queryTxt = new JTextField(10);  queryBtn = new JButton("查询");  allBtn = new JButton("全部");  //......添加查询栏监听  queryBtn.addActionListener(this);  queryBtn.setActionCommand("query");  allBtn.addActionListener(this);  allBtn.setActionCommand("all");  //========增删改栏  addBtn = new JButton("添加");  deleteBtn = new JButton("删除");  updateBtn = new JButton("修改");  //......添加增删改栏监听  addBtn.addActionListener(this);  addBtn.setActionCommand("add");  deleteBtn.addActionListener(this);  deleteBtn.setActionCommand("delete");  updateBtn.addActionListener(this);  updateBtn.setActionCommand("update");  //========创建窗口整体布局  //......顶层查询栏  top = new JPanel();  top.add(queryLab);  top.add(queryTxt);  top.add(queryBtn);  top.add(allBtn);  //......底层增删改栏  bottom = new JPanel();  bottom.add(addBtn);  bottom.add(deleteBtn);  bottom.add(updateBtn);  //......中间层显示栏  sm = new StuModel();  String sql = "select * from stu";  sm.queryStu(sql, null);  resultTb = new JTable(sm);  jsp = new JScrollPane(resultTb);  //......构建整体布局  this.add(top,BorderLayout.NORTH);  this.add(jsp,BorderLayout.CENTER);  this.add(bottom,BorderLayout.SOUTH);  //========设置窗口属性  this.setSize(400, 300);  this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  this.setVisible(true);  this.setResizable(false);  }  //监听  @Override  public void actionPerformed(ActionEvent e)  {  // TODO Auto-generated method stub  if(e.getActionCommand().equals("query")) {  /*********************查询***********************/  //========获取输入学生的姓名  String name = queryTxt.getText().trim();  if(name.length() != 0) {  //========姓名输入有效时,执行查询  //......定义参数  String sql = "select * from stu where stuName=?";  String []paras = {name};  //......更新模型  jtableUpdate(sql, paras);  } else {  //========姓名为空时,设置提醒  JOptionPane.showMessageDialog(this, "姓名输入不能为空");  }  } else if(e.getActionCommand().equals("add")) {  /*********************添加***********************/  new StuAddDialog(this, "添加学生信息", true);  String sql = "select * from stu";  jtableUpdate(sql, null);  } else if(e.getActionCommand().equals("all")) {  /*********************全部显示***********************/  String sql = "select * from stu";  jtableUpdate(sql, null);  } else if(e.getActionCommand().equals("delete")) {  /*********************删除***********************/  //========获取选择行号  int rowNum = this.resultTb.getSelectedRow();  if(rowNum == -1) {  JOptionPane.showMessageDialog(this, "请选择一行");  return ;  }  //========获取学生ID号  String stuId = (String)sm.getValueAt(rowNum, 0);  //========删除学生  String sql = "delete from stu where stuId=?";  String []paras = {stuId};  StuModel tmp = new StuModel();  tmp.cudStu(sql, paras);  //========更新模型  sql = "select * from stu";  jtableUpdate(sql, null);  } else if(e.getActionCommand().equals("update")) {  /*********************修改***********************/  //========获取选择行号  int rowNum = this.resultTb.getSelectedRow();  if(rowNum == -1) {  JOptionPane.showMessageDialog(this, "请选择一行");  return ;  }  new StuUpdateDialog(this, "修改学生信息", true, sm, rowNum);  String sql = "select * from stu";  jtableUpdate(sql, null);  }  }  //========更新JTable内数据  public void jtableUpdate(String sql, String[] paras)  {  //......创建模型  sm = new StuModel();  sm.queryStu(sql, paras);  //......更新显示  resultTb.setModel(sm);  }  }  

修改学生信息界面设计

/*** @author 逸軒* https://www.jianshu.com/u/1b1f7b0b32d6*/
import java.awt.BorderLayout;  
import java.awt.Frame;  
import java.awt.GridLayout;  
import java.awt.event.ActionEvent;  
import java.awt.event.ActionListener;  import javax.swing.JButton;  
import javax.swing.JDialog;  
import javax.swing.JLabel;  
import javax.swing.JOptionPane;  
import javax.swing.JPanel;  
import javax.swing.JTextField;  
import javax.swing.table.AbstractTableModel;  public class StuUpdateDialog extends JDialog implements ActionListener{  //=========面板控件  //......左侧标题栏  private JLabel idLab,nameLab,sexLab,ageLab,jgLab,deptLab;  //......右侧信息选择填写栏  private JTextField idTxt,nameTxt,sexTxt,ageTxt,jgTxt,deptTxt;  //......添加和取消按钮  private JButton addBtn,cancelBtn;  //......布局控件  private JPanel left,center,bottom;  //构造函数  public StuUpdateDialog(Frame owner, String title, boolean modal, StuModel sm, int rowNum)   {  //========重写父类方法  super(owner, title, modal);  //========左侧标签栏  idLab = new JLabel("学号: ");  nameLab = new JLabel("姓名: ");  sexLab = new JLabel("性别: ");  ageLab = new JLabel("年龄: ");  jgLab = new JLabel("籍贯: ");  deptLab = new JLabel("系别: ");  //========右侧信息填写栏  idTxt = new JTextField();     idTxt.setText((String)sm.getValueAt(rowNum, 0));  idTxt.setEditable(false);  nameTxt = new JTextField();  nameTxt.setText((String)sm.getValueAt(rowNum, 1));  sexTxt = new JTextField();  sexTxt.setText((String)sm.getValueAt(rowNum, 2));  ageTxt = new JTextField();  ageTxt.setText((String)sm.getValueAt(rowNum, 3));  jgTxt = new JTextField();  jgTxt.setText((String)sm.getValueAt(rowNum, 4));  deptTxt = new JTextField();  deptTxt.setText((String)sm.getValueAt(rowNum, 5));  //========添加和取消按钮  addBtn = new JButton("修改");  cancelBtn = new JButton("取消");  //......添加监听  addBtn.addActionListener(this);  addBtn.setActionCommand("update");  cancelBtn.addActionListener(this);  cancelBtn.setActionCommand("cancel");  //========创建布局  //......创建左边栏  left = new JPanel();  left.setLayout(new GridLayout(6, 1));  left.add(idLab);  left.add(nameLab);   left.add(sexLab); left.add(ageLab);   left.add(jgLab);  left.add(deptLab);   //......创建右边栏  center = new JPanel();  center.setLayout(new GridLayout(6, 1));  center.add(idTxt);  center.add(nameTxt);  center.add(sexTxt); center.add(ageTxt);  center.add(jgTxt);  center.add(deptTxt);  //========底层添加和取消按钮  bottom = new JPanel();  bottom.add(addBtn);  bottom.add(cancelBtn);  //========整体布局  this.add(left,BorderLayout.WEST);  this.add(center,BorderLayout.CENTER);  this.add(bottom,BorderLayout.SOUTH);  //========设置窗口属性  this.setSize(300, 250);  this.setResizable(false);  this.setVisible(true);  }  @Override  public void actionPerformed(ActionEvent e) {  // TODO Auto-generated method stub  if(e.getActionCommand().equals("update")) {  /***********************修改学生信息**************************/  StuModel tmp = new StuModel();  String sql = "update stu set stuName=?,stuSex=?,stuAge=?,stuJg=?,stuDept=? where stuId=?";  String []paras = {nameTxt.getText(),sexTxt.getText(),ageTxt.getText(),  jgTxt.getText(),deptTxt.getText(),idTxt.getText()};  if(!tmp.cudStu(sql, paras))  JOptionPane.showMessageDialog(this, "修改学生信息失败");  //========关闭窗口  this.dispose();  } else if(e.getActionCommand().equals("cancel")) {  //========关闭窗口  this.dispose();  }  }  
}  

查询学生功能

/*** @author 逸軒* https://www.jianshu.com/u/1b1f7b0b32d6*/
import java.sql.ResultSet;  
import java.util.Vector;  
import javax.swing.table.AbstractTableModel;  public class StuModel extends AbstractTableModel{  private Vector columnNames;  private Vector rowDates;  //  public StuModel()  {  String sql = "select * from stu";  String []paras = {};  }  //========增删改学生  public boolean cudStu(String sql, String []paras)  {  return new SqlHelper().cudExecute(sql, paras);  }  //========查询学生  public void queryStu(String sql, String []paras)  {  SqlHelper sqlHelper = null;  //========初始化JTable信息  columnNames = new Vector();  rowDates = new Vector();  columnNames.add("学号"); columnNames.add("名字");  columnNames.add("性别"); columnNames.add("年龄");  columnNames.add("籍贯"); columnNames.add("系别");  try {  sqlHelper = new SqlHelper();  ResultSet rs = sqlHelper.queryExecute(sql, paras);  while(rs.next()) {  Vector row = new Vector();  row.add(rs.getString(1));  row.add(rs.getString(2));  row.add(rs.getString(3));  row.add(rs.getString(4));  row.add(rs.getString(5));  row.add(rs.getString(6));  rowDates.add(row);  }  } catch (Exception e) {  // TODO: handle exception  } finally {  sqlHelper.close();  }  }  @Override  public int getColumnCount() {  // TODO Auto-generated method stub  return this.columnNames.size();  }  @Override  public int getRowCount() {  // TODO Auto-generated method stub  return this.rowDates.size();  }  @Override  public Object getValueAt(int row, int col) {  // TODO Auto-generated method stub  if(!rowDates.isEmpty())  return ((Vector)this.rowDates.get(row)).get(col);  else  return null;  }  @Override  public String getColumnName(int column) {  // TODO Auto-generated method stub  return (String)this.columnNames.get(column);  }  }  

截图演示
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
链接下载
https://download.csdn.net/download/qq_40861561/11286135


http://chatgpt.dhexx.cn/article/QBb7pAeE.shtml

相关文章

【Java】升级版学生管理系统项目

目录 一、前言 二、学生管理系统主要功能 在学生类下 在学生总部类下&#xff1a; main方法&#xff1a; 登录密码验证&#xff1a; 打印菜单&#xff1a; 增加学生信息&#xff1a; 查看学生信息&#xff1a; 删除学生信息&#xff1a; 修改学生信息&#xff1a; 查…

Java实现 “学生管理系统“

文章目录 一、项目简介二、系统展示三、程序设计 一、项目简介 本项目为基于java下实现模拟学生管理系统&#xff0c;具以下6个功能&#xff1a; 添加学生删除学生修改学生信息查询学生信息输出学生信息退出系统 二、系统展示 1. 菜单 2. 添加学生 3. 修改学生信息 4. 查询…

java学生成绩管理系统

学生成绩管理系统 使用java swing 和 jdbc 技术 管理学生信息 文章目录 学生成绩管理系统一&#xff0c;总体架构二、controller层的编写三、pojo层的编写四&#xff0c;view层的编写五&#xff0c;数据库的连接六&#xff0c;启动程序 一&#xff0c;总体架构 一共五个包 二…

Java——学生管理系统

学生管理系统实现步骤&#xff1a; 定义学生类学生管理系统的主界面的代码编写学生管理系统的查看所有学生的代码编写学生管理系统的添加学生代码的编写学生管理系统的删除学生的代码编写学生管理系统的修改学生的代码编写 学生系统主界面&#xff1a; public class Student…

Java学生管理系统设计与实现 (超详细,含课程设计)

最新文章出炉&#xff0c;欢迎点评 它曾是浏览器的王者&#xff0c;如今却前景堪忧...... 推荐阅读 ★★★★ 往期文章回顾&#xff1a; 1、Java开发岗位面试题汇总&#xff08;不断补充……&#xff09;★★★ 2、Java程序员必须掌握的英语词组 ★★ 3、学习Java的9张思…

用Java实现学生管理系统【简化版】基础

&#x1f389;博客首页&#xff1a;痛而不言笑而不语的浅伤 &#x1f4e2;欢迎关注&#x1f973;点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 欢迎讨论&#xff01; &#x1f52e;本文由痛而不言笑而不语的浅伤原创&#xff0c;CSDN首发&#xff01; &#x1f30b;系列专栏&…

java 学生信息管理系统

只设计了一部分 全部的太多了。会慢慢更新增加。 学生信息管理包括添加&#xff0c;删除&#xff0c;修改&#xff0c;查询&#xff0c;显示全部等 具体结构如图 在SQL Server 2005数据库上实现数据操作。使用纯面向对象的java语言作为开发语言 在sql server 2005新建一个名…

基于java的学生成绩管理系统

本管理系统具有以下功能&#xff1a; 1、学生功能&#xff1a;个人信息查询、修改&#xff1b;成绩查询&#xff1b;修改密码  2、教师功能&#xff1a;学生信息查询&#xff1b;打分&#xff1b;个人信息查询、修改&#xff0c;修改密码  3、管理员功能&#xff1a;教师信…

Java简单学生管理系统

学习了一段时间了。是时候写一个程序来检验一下学习的成果了。 七夕让我们一起new对象。 ok&#xff0c;首先我们来看一下需求。 简单的学生信息管理系统&#xff0c;通过键盘选择操作进行添加学生&#xff08;学号&#xff0c;姓名&#xff0c;性别&#xff0c;年龄&#x…

用Java实现学生管理系统(附项目详细的介绍和源代码)

前言&#xff1a;最近练习了用Java语言实现简单的学生管理系统小项目&#xff0c;分享一下。 Ps&#xff1a;原创不易&#xff0c;请多多支持&#xff01; 摘要分析如下&#xff1a; 实现的主要功能&#xff1a; 1&#xff0c;添加学生信息。 2&#xff0c;查询学生信息(实现…

Java设计学生成绩管理系统

1.1 题目与要求 设计一个学生成绩排名系统 实现以下功能&#xff1a; (1) 具备对成绩的管理功能&#xff08;添加、删除、排序&#xff09;&#xff1b; (2) 具备对成绩的统计功能&#xff08;最高分&#xff0c;最低分&#xff0c;平均分&#xff0c;及格率等&#xff09;…

Java 学生成绩管理系统

教学管理系统很适合初学者对于所学语言的练习。本文是javaSE 中用文件流写的&#xff0c;这个也可以用数据库写。 分析 这个项目有 1.学生 2.老师 3.教务人员 4.管理员四个角色分别担任不同的任务。 1.学生 有属性 id, 密码&#xff0c;性别&#xff0c;年龄&#xff0c;和一…

Java基础——学生管理系统

用内存存储学生信息。(采用集合的方式&#xff09; 步骤&#xff1a; A. 定义学生类 B. 学生管理系统的主界面的代码编写 C. 学生管理系统的查看所有学生的代码编写 D. 学生管理系统的添加学生的代码编写 E. 学生管理系统的删除学生的代码编写 F. 学生管理系统的修改学生的代码…

学生管理系统(Java版)

学生管理系统&#xff08;Java版&#xff09; 前言&#xff1a;这个是大二做的课设&#xff08;还是学生管理系统…&#xff09;&#xff0c;理论上虽然是4个人一组一起做的&#xff0c;但是&#xff0c;注意这个“但是”&#xff0c;还是我一个人承担了所有…代码和文档基本都…

Java 版学生成绩管理系统,附源码

前言 对于计算机专业的学生来讲&#xff0c;一定对于学生成绩管理系统课程设计十分印象深刻。设计、上机、编码、写报告、答辩等一系列流程&#xff0c;虽然很简单&#xff0c;但也可以综合运用我们所学的一些知识了。 今天就来复习以下这个课题&#xff0c;用 Java SE 来实现…

用Java实现一个学生管理系统(附源码)

目录 一、题目要求 二、设计思路 &#xff08;2&#xff09;代表课程的类——Course类 &#xff08;3&#xff09;具体功能实现类——Function类 &#xff08;4&#xff09;测试类——Test类 三、代码实现 &#xff08;1&#xff09;Student.java文件 &#xff08;2&…

Java实现学生管理系统(完整代码)

案例需求 完成一个综合案例&#xff1a;学生管理系统&#xff01;该系统主要功能如下&#xff1a; 添加学生&#xff1a;通过键盘录入学生信息&#xff0c;添加到集合中 删除学生&#xff1a;通过键盘录入要删除学生的学号&#xff0c;将该学生对象从集合中删除 修改学生&…

Java学生信息管理系统

一、选题设计思想 学生信息管理系统是典型的信息管理系统(MIS)&#xff0c;其开发主要包括后台数据库的建立和维护以及前端应用程序的开发。对于前者要求建立起数据一致性和完整性强、安全性高的数据库&#xff1b;对于后者则要求应用程序具有功能完备、易使用、易维护等特点。…

学生管理系统(Java实现)

一、学生信息管理程序 基本要求&#xff1a; 1&#xff0e;要求实现学生信息的使用添加、查找、删除、修改等几个功能&#xff0c;每个功能模块均能实现从模块中退出&#xff0c;从而完成一个学生管理系统所需功能。 2&#xff0e;要使用结构体来实现对学生信息的存储。 3&am…

【JAVA】学生信息管理系统

目录 前言 一、环境搭建 二、功能实现 1.学生信息类的创建 2.学生信息的添加功能 3.学生信息的删除功能 4.学生信息的修改功能 5.学生信息的查看功能 三、主类的调用 1.界面的搭建 2.学生端和教师端 3.系统和功能的选择 总结 前言 JAVA实现的学生信息管理…