java学生管理系统(增删改查存)

这是一个基于Java和MySQL的简易学生管理系统,实现了增删改查和数据存储功能。用户可以选择数据库登录,并通过界面操作对学生信息进行管理。系统提供了登录窗口、功能窗口,包括显示数据库数据、添加/修改信息、删除/查询操作,以及多种存储方式。源码中包含了主要的界面和数据处理函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

说明:
1.期末结课做的简易的学生管理系统(java+mysql+excel+文本);
2.仅实现增删改查,显示,存储等界面操作;

实验报告如下:

1.数据库
在这里插入图片描述

2.需要添加额外的jar包(连接数据库或者工作表需求)
在这里插入图片描述
添加jar包:
1.在这里插入图片描述

3.功能页面显示
(1)登录窗口
在这里插入图片描述

可选择四种方式进行信息初始化。例如这里选择数据库登录
在这里插入图片描述

(2)功能窗口
在这里插入图片描述

1.显示刚才从数据库读的数据
在这里插入图片描述

窗口拖动,也可设置表格不透明
在这里插入图片描述

2.添加(修改)信息,输入数据后点击添加(修改)
在这里插入图片描述

对比
在这里插入图片描述

3.仅输入编号,进行删除或者查询操作
例如输入编号1
在这里插入图片描述

4.存储功能,退出系统前有三种方式进行存储,也可以不存储。
例如点击文本,数据存在D盘的一个文本上。
在这里插入图片描述

查看文本
在这里插入图片描述

5.用到的函数(分为界面部分和数据部分)
在这里插入图片描述
不想使用的功能删掉对应函数。
6.一开始用到的图片及文本,表格
在这里插入图片描述

7.源码及相关代码(函数太多,这里列出三个主要界面)
Login.java


```java
public class Login extends JFrame implements ActionListener,ItemListener {
   
    JPanel p1, p2, p3,p4;
    JTextField Mysqltext = new JTextField(10);
    JLabel usename = new JLabel("账 号:");
    JTextField usenametext = new JTextField(10);
    JLabel password = new JLabel("密 码:");
    JPasswordField txtPwd = new JPasswordField(10);
    //角色标签和下拉列表
    JLabel role = new JLabel("打开方式:");
    JComboBox boxrole = new JComboBox();

    //创建三个选择按钮
    JButton a = new JButton("登录");
    JButton b = new JButton("重置");
    JButton c = new JButton("取消");

    //定义变量来接收下拉列表的索引
    int index = 0;
    Data_1 x = new Data_1();
    Data_1[] y = x.getA();
    Data data=new Data();
    public Login() {
           //构造方法
        super("登录");
        for (int i = 0; i < x.getOne(); i++)
            y[i] = new Data_1("", "", "", "");

        setLayout(new FlowLayout());
        this.setLayout(new GridLayout(4,1));//四分
        setBounds(300, 50, 300, 500);
        //面板初始化
        p1=new JPanel();
        p2=new JPanel();
        p3=new JPanel();
        p4=new JPanel();
        p1.setBackground(new Color(255,240,240));
        p1.setBackground(null);
        p1.setOpaque(false);
        p2.setBackground(new Color(255,240,240));
        p2.setBackground(null);
        p2.setOpaque(false);
        p3.setBackground(new Color(255,240,240));
        p3.setBackground(null);
        p3.setOpaque(false);
        p4.setBackground(new Color(255,240,240));
        p4.setBackground(null);
        p4.setOpaque(false);
        //下拉列表中添加数据
        boxrole.addItem("无");
        boxrole.addItem("文本");
        boxrole.addItem("数据库");
        boxrole.addItem("Excel");
        boxrole.setOpaque(false);
        p1.add(role);
        p1.add(boxrole);
        Mysqltext.setOpaque(false);
        p1.add(Mysqltext);

        usenametext.setOpaque(false);
        p2.add(usename);
        p2.add(usenametext);

        //3.密码
        txtPwd.setOpaque(false);
        p3.add(password);
        p3.add(txtPwd);
        //4.将3个按钮添加进面板3中
        a.setContentAreaFilled(false);
        b.setContentAreaFilled(false);
        c.setContentAreaFilled(false);

        p4.add(a);
        p4.add(b);
        p4.add(c);

        //将四个面板添加进框架容器中
        this.add(p1);
        this.add(p2);
        this.add(p3);
        this.add(p4);
        //设置背景图片
        ImageIcon ic = new ImageIcon("D:\\dog4.jpg");
        JLabel l = new JLabel(ic);
        l.setBounds(0, 0, ic.getIconWidth(), ic.getIconHeight());
        this.getLayeredPane().add(l, new Integer(Integer.MIN_VALUE));
        ((JPanel) this.getContentPane()).setOpaque(false);//设置透明

        //设置顶层容器的大小、位置、可见性及close功能
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setLocationRelativeTo(null);
        setVisible(true);

        //注册事件监听器
        boxrole.addItemListener(this);
        a.addActionListener(this);
        b.addActionListener(this);
        c.addActionListener(this);
    }
    //对下拉列表的监听
    public void itemStateChanged(ItemEvent e) {
   
        if (e.getStateChange() == ItemEvent.SELECTED) {
   
            JComboBox j = (JComboBox) e.getSource();
            index = j.getSelectedIndex();
            if(index==1)
            {
   
                Mysqltext.setText("");
                Mysqltext.setText("text");
            }
            if(index==2)
            {
   
                Mysqltext.setText("");
                usenametext.setText("");
                txtPwd.setText
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值