用Java swing和mysql 写一个图书管理登录页面
时间: 2023-12-01 07:04:54 浏览: 32
好的,下面是一个简单的图书管理系统登录页面的代码示例:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
public class LoginUI extends JFrame implements ActionListener {
private JLabel userLabel, passLabel;
private JTextField userField;
private JPasswordField passField;
private JButton loginButton;
public LoginUI() {
// 设置窗口标题
super("图书管理系统登录");
// 设置窗口大小
setSize(300, 200);
// 设置窗口居中
setLocationRelativeTo(null);
// 设置窗口关闭操作
setDefaultCloseOperation(EXIT_ON_CLOSE);
// 创建面板
JPanel panel = new JPanel();
panel.setLayout(new GridLayout(3, 2));
// 创建用户名标签和文本框
userLabel = new JLabel("用户名:");
userField = new JTextField(20);
// 创建密码标签和密码框
passLabel = new JLabel("密码:");
passField = new JPasswordField(20);
// 创建登录按钮
loginButton = new JButton("登录");
loginButton.addActionListener(this);
// 将组件添加到面板中
panel.add(userLabel);
panel.add(userField);
panel.add(passLabel);
panel.add(passField);
panel.add(new JLabel());
panel.add(loginButton);
// 将面板添加到窗口中
add(panel);
}
public void actionPerformed(ActionEvent e) {
// 获取用户输入的用户名和密码
String username = userField.getText();
String password = String.valueOf(passField.getPassword());
// 尝试连接数据库
try {
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/library", "root", "password");
// 查询用户表判断用户名和密码是否正确
PreparedStatement stmt = conn.prepareStatement("SELECT * FROM users WHERE username = ? AND password = ?");
stmt.setString(1, username);
stmt.setString(2, password);
ResultSet rs = stmt.executeQuery();
if (rs.next()) {
// 登录成功,打开图书管理主界面
new MainUI();
// 关闭登录窗口
dispose();
} else {
// 登录失败,弹出错误提示框
JOptionPane.showMessageDialog(null, "用户名或密码错误");
}
// 关闭数据库连接
rs.close();
stmt.close();
conn.close();
} catch (ClassNotFoundException ex) {
ex.printStackTrace();
} catch (SQLException ex) {
ex.printStackTrace();
}
}
public static void main(String[] args) {
// 创建登录窗口
new LoginUI().setVisible(true);
}
}
```
需要注意的是,代码中的数据库连接信息需要根据实际情况进行修改,如数据库名称、用户名、密码等。同时还需要在项目中导入mysql-connector-java.jar包以便进行数据库连接。