学生信息管理系统代码示例用idea和mysql数据库 八个页面以上
以下是一个简单的学生信息管理系统的代码示例,使用了Java语言、MySQL数据库和IntelliJ IDEA开发工具。该系统包含了八个页面,包括登录页面、注册页面、主页面、添加学生页面、查询学生页面、修改学生页面、删除学生页面和退出页面。
首先,需要在MySQL数据库中创建一个名为"student_info"的数据库,并创建一个名为"students"的表,表结构如下:
CREATE TABLE students (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
age INT NOT NULL,
gender VARCHAR(10) NOT NULL
);
接下来,创建一个Java项目,并添加MySQL JDBC驱动库。
- 登录页面(LoginGUI.java):
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class LoginGUI extends JFrame {
private JTextField usernameField;
private JPasswordField passwordField;
private JButton loginButton;
private JButton registerButton;
public LoginGUI() {
setTitle("登录");
setSize(300, 200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLayout(new FlowLayout());
JLabel usernameLabel = new JLabel("用户名:");
usernameField = new JTextField(20);
JLabel passwordLabel = new JLabel("密码:");
passwordField = new JPasswordField(20);
loginButton = new JButton("登录");
registerButton = new JButton("注册");
loginButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String username = usernameField.getText();
String password = new String(passwordField.getPassword());
// TODO: 在数据库中验证用户名和密码
// 如果验证成功,跳转到主页面
// 否则,弹出错误提示框
}
});
registerButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 跳转到注册页面
dispose();
new RegisterGUI().setVisible(true);
}
});
add(usernameLabel);
add(usernameField);
add(passwordLabel);
add(passwordField);
add(loginButton);
add(registerButton);
}
}
- 注册页面(RegisterGUI.java):
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class RegisterGUI extends JFrame {
private JTextField usernameField;
private JPasswordField passwordField;
private JButton registerButton;
public RegisterGUI() {
setTitle("注册");
setSize(300, 150);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLayout(new FlowLayout());
JLabel usernameLabel = new JLabel("用户名:");
usernameField = new JTextField(20);
JLabel passwordLabel = new JLabel("密码:");
passwordField = new JPasswordField(20);
registerButton = new JButton("注册");
registerButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String username = usernameField.getText();
String password = new String(passwordField.getPassword());
// TODO: 将用户名和密码保存到数据库
// 注册成功后,跳转到登录页面
}
});
add(usernameLabel);
add(usernameField);
add(passwordLabel);
add(passwordField);
add(registerButton);
}
}
- 主页面(MainGUI.java):
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class MainGUI extends JFrame {
private JButton addButton;
private JButton queryButton;
private JButton editButton;
private JButton deleteButton;
private JButton logoutButton;
public MainGUI() {
setTitle("主页面");
setSize(300, 200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLayout(new FlowLayout());
addButton = new JButton("添加学生");
queryButton = new JButton("查询学生");
editButton = new JButton("修改学生");
deleteButton = new JButton("删除学生");
logoutButton = new JButton("退出");
addButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 跳转到添加学生页面
dispose();
new AddStudentGUI().setVisible(true);
}
});
queryButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 跳转到查询学生页面
dispose();
new QueryStudentGUI().setVisible(true);
}
});
editButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 跳转到修改学生页面
dispose();
new EditStudentGUI().setVisible(true);
}
});
deleteButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 跳转到删除学生页面
dispose();
new DeleteStudentGUI().setVisible(true);
}
});
logoutButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 跳转到登录页面
dispose();
new LoginGUI().setVisible(true);
}
});
add(addButton);
add(queryButton);
add(editButton);
add(deleteButton);
add(logoutButton);
}
}
- 添加学生页面(AddStudentGUI.java):
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class AddStudentGUI extends JFrame {
private JTextField nameField;
private JTextField ageField;
private JTextField genderField;
private JButton addButton;
private JButton backButton;
public AddStudentGUI() {
setTitle("添加学生");
setSize(300, 200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLayout(new FlowLayout());
JLabel nameLabel = new JLabel("姓名:");
nameField = new JTextField(20);
JLabel ageLabel = new JLabel("年龄:");
ageField = new JTextField(20);
JLabel genderLabel = new JLabel("性别:");
genderField = new JTextField(20);
addButton = new JButton("添加");
backButton = new JButton("返回");
addButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String name = nameField.getText();
int age = Integer.parseInt(ageField.getText());
String gender = genderField.getText();
// TODO: 将学生信息保存到数据库
// 添加成功后,返回主页面
dispose();
new MainGUI().setVisible(true);
}
});
backButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 返回主页面
dispose();
new MainGUI().setVisible(true);
}
});
add(nameLabel);
add(nameField);
add(ageLabel);
add(ageField);
add(genderLabel);
add(genderField);
add(addButton);
add(backButton);
}
}
- 查询学生页面(QueryStudentGUI.java):
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class QueryStudentGUI extends JFrame {
private JTextField nameField;
private JButton queryButton;
private JButton backButton;
public QueryStudentGUI() {
setTitle("查询学生");
setSize(300, 150);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLayout(new FlowLayout());
JLabel nameLabel = new JLabel("姓名:");
nameField = new JTextField(20);
queryButton = new JButton("查询");
backButton = new JButton("返回");
queryButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String name = nameField.getText();
// TODO: 根据姓名查询学生信息,并显示在表格中
}
});
backButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 返回主页面
dispose();
new MainGUI().setVisible(true);
}
});
add(nameLabel);
add(nameField);
add(queryButton);
add(backButton);
}
}
- 修改学生页面(EditStudentGUI.java):
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class EditStudentGUI extends JFrame {
private JTextField idField;
private JTextField nameField;
private JTextField ageField;
private JTextField genderField;
private JButton editButton;
private JButton backButton;
public EditStudentGUI() {
setTitle("修改学生");
setSize(300, 200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLayout(new FlowLayout());
JLabel idLabel = new JLabel("ID:");
idField = new JTextField(20);
JLabel nameLabel = new JLabel("姓名:");
nameField = new JTextField(20);
JLabel ageLabel = new JLabel("年龄:");
ageField = new JTextField(20);
JLabel genderLabel = new JLabel("性别:");
genderField = new JTextField(20);
editButton = new JButton("修改");
backButton = new JButton("返回");
editButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
int id = Integer.parseInt(idField.getText());
String name = nameField.getText();
int age = Integer.parseInt(ageField.getText());
String gender = genderField.getText();
// TODO: 根据ID修改学生信息
// 修改成功后,返回主页面
dispose();
new MainGUI().setVisible(true);
}
});
backButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 返回主页面
dispose();
new MainGUI().setVisible(true);
}
});
add(idLabel);
add(idField);
add(nameLabel);
add(nameField);
add(ageLabel);
add(ageField);
add(genderLabel);
add(genderField);
add(editButton);
add(backButton);
}
}
- 删除学生页面(DeleteStudentGUI.java):
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class DeleteStudentGUI extends JFrame {
private JTextField idField;
private JButton deleteButton;
private JButton backButton;
public DeleteStudentGUI() {
setTitle("删除学生");
setSize(300, 150);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLayout(new FlowLayout());
JLabel idLabel = new JLabel("ID:");
idField = new JTextField(20);
deleteButton = new JButton("删除");
backButton = new JButton("返回");
deleteButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
int id = Integer.parseInt(idField.getText());
// TODO: 根据ID删除学生信息
// 删除成功后,返回主页面
dispose();
new MainGUI().setVisible(true);
}
});
backButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 返回主页面
dispose();
new MainGUI().setVisible(true);
}
});
add(idLabel);
add(idField);
add(deleteButton);
add(backButton);
}
}
- 退出页面(ExitGUI.java):
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class ExitGUI extends JFrame {
private JButton exitButton;
public ExitGUI() {
setTitle("退出");
setSize(300, 150);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLayout(new FlowLayout());
exitButton = new JButton("退出");
exitButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
add(exitButton);
}
}
- 主程序(Main.java):
public class Main {
public static void main(String[] args) {
new LoginGUI().setVisible(true);
}
}
以上是一个简单的学生信息管理系统的代码示例,希望对你有帮助!请根据实际情况修改和完善代码
原文地址: http://www.cveoy.top/t/topic/hT6k 著作权归作者所有。请勿转载和采集!