JAVA登录面板与sql的连接
时间: 2023-06-24 13:07:53 浏览: 77
以下是一个简单的Java登录面板与SQL数据库连接的示例代码:
```java
import java.sql.*;
import javax.swing.*;
import java.awt.event.*;
public class LoginPanel extends JFrame implements ActionListener {
JLabel userLabel, passLabel;
JTextField userField;
JPasswordField passField;
JButton loginButton;
public LoginPanel() {
setTitle("Login Panel");
setSize(300, 150);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
userLabel = new JLabel("Username:");
passLabel = new JLabel("Password:");
userField = new JTextField(10);
passField = new JPasswordField(10);
loginButton = new JButton("Login");
JPanel panel = new JPanel();
panel.add(userLabel);
panel.add(userField);
panel.add(passLabel);
panel.add(passField);
panel.add(loginButton);
add(panel);
loginButton.addActionListener(this);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == loginButton) {
String username = userField.getText();
String password = new String(passField.getPassword());
// Connect to SQL database
try {
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/mydatabase", "root", "");
Statement stmt = conn.createStatement();
// Execute SQL query
String sql = "SELECT * FROM users WHERE username='" + username + "' AND password='" + password + "'";
ResultSet rs = stmt.executeQuery(sql);
// Check if user exists
if (rs.next()) {
JOptionPane.showMessageDialog(this, "Login successful!");
} else {
JOptionPane.showMessageDialog(this, "Invalid username or password.");
}
// Close SQL connection
rs.close();
stmt.close();
conn.close();
} catch (Exception ex) {
JOptionPane.showMessageDialog(this, "Error: " + ex.getMessage());
}
}
}
public static void main(String[] args) {
new LoginPanel();
}
}
```
在上面的代码中,我们使用了Java Swing库创建了一个简单的登录面板。当用户点击登录按钮时,我们使用JDBC连接到MySQL数据库,并执行一个查询以检查用户名和密码是否匹配。如果匹配,则显示消息框,否则显示错误消息框。请注意,此示例代码仅用于演示目的,实际应用程序需要更多的安全性和验证。