用的Swing框架,mysql里面有创建好的数据表
时间: 2024-02-21 18:01:35 浏览: 64
好的,那我们开始吧。首先,您需要在登录界面上放置两个文本框和一个按钮,用于输入用户名、密码和登录操作。然后,当用户点击登录按钮时,您需要检查输入的用户名和密码是否匹配数据库中已有的用户信息。如果匹配成功,则进入新的空白界面。以下是示例代码:
```
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
public class LoginGUI extends JFrame implements ActionListener {
private JLabel userLabel, passwordLabel;
private JTextField userField;
private JPasswordField passwordField;
private JButton loginButton;
private Connection conn;
public LoginGUI() {
// 设置界面布局
setLayout(new GridLayout(3, 2));
// 添加用户名标签和文本框
userLabel = new JLabel("用户名:");
add(userLabel);
userField = new JTextField();
add(userField);
// 添加密码标签和文本框
passwordLabel = new JLabel("密码:");
add(passwordLabel);
passwordField = new JPasswordField();
add(passwordField);
// 添加登录按钮
loginButton = new JButton("登录");
loginButton.addActionListener(this);
add(loginButton);
// 连接到MySQL数据库
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase", "root", "password");
} catch(Exception e) {
e.printStackTrace();
}
setTitle("登录");
setSize(300, 120);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if(e.getSource() == loginButton) {
String username = userField.getText();
String password = new String(passwordField.getPassword());
try {
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM users WHERE username='" + username + "' AND password='" + password + "'");
if(rs.next()) {
// 用户名和密码匹配成功,进入新的空白界面
BlankGUI blankGUI = new BlankGUI();
blankGUI.setVisible(true);
// 关闭当前界面
dispose();
} else {
JOptionPane.showMessageDialog(this, "用户名或密码错误");
}
} catch(Exception ex) {
ex.printStackTrace();
}
}
}
public static void main(String[] args) {
LoginGUI loginGUI = new LoginGUI();
}
}
class BlankGUI extends JFrame {
public BlankGUI() {
setTitle("空白界面");
setSize(300, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
```
请将代码中的“mydatabase”替换为您的MySQL数据库名,将"root"和"password"替换为您的MySQL用户名和密码。另外,为了安全起见,您应该对输入的密码进行哈希处理,而不是直接存储在数据库中。
阅读全文