Java Swing + JDBC 实现登录注册功能
利用 Java Swing 结合 JDBC 技术,可以快速搭建轻量级的桌面端应用程序。本文将通过一个包含 Admin(管理员)表的 MySQL 数据库实例,详解如何实现用户登录验证与信息注册录入的完整业务逻辑,包含界面设计与后端处理的核心代码。
第一步:设计数据库与实体类
为了支撑登录与注册功能,首先需要在数据库中建立一张存储用户信息的表。本例中设计了 Admin 表,主要包含以下三个字段:
id:用于登录验证的唯一账号标识;name:用户显示名称;password:用户密码。
在 Java 代码层面,需创建一个对应的实体类来封装上述属性:
Admin.java
该类定义了账号、姓名和密码三个私有变量,并提供标准的 Setter/Getter 方法供外部调用。
package src;
/*
管理员实体
*/
public class Admin {
private String id; //编号
private String name; //姓名
private String password; //密码
void setID(String id) {
this.id=id;
}
void setName(String name) {
this.name=name;
}
void setPassword(String password) {
this.password=password;
}
String getID() {
return this.id;
}
String getName() {
return this.name;
}
String getPassword() {
return this.password;
}
}第二步:创建登录注册主界面
使用 JFrame 作为主窗口容器,布局采用绝对定位(null layout),并在其中添加标签、文本框、密码框以及“登录”和“注册”按钮。
Login_Register.java
此入口程序负责初始化窗口状态,并为按钮注册 ActionListener 监听器以响应用户点击操作。
第 1 步:处理登录按钮响应
目的:获取用户输入的账号和密码,并发起数据库校验。
动作:当用户点击登录时,提取输入框内容并实例化 Admin 对象传递给 Login 类执行判断。
参数:账号(ID)、密码(passwd)。
结果:若 JudgeAdmin() 返回正确状态,提示登录成功;否则清空输入框并弹窗报错。
第 2 步:处理注册按钮跳转
目的:将用户引导至新的注册页面。
动作:隐藏当前登录窗口,实例化并显示 AdminRegister 窗口。
第三步:实现后台登录逻辑
Login.java
该类核心职责是处理与数据库的连接及身份验证。通过 JDBC 驱动连接本地 MySQL 数据库(例如 hotelsql),查询传入的账号密码是否在表中存在且匹配。
关键方法 login() 使用 PreparedStatement 预编译 SQL 语句以防止注入攻击,并根据 ResultSet 是否存在结果行返回布尔值。若验证失败或发生异常,则返回 false。
第四步:构建注册界面与规则校验
AdminRegister.java
这是用户注册的图形化界面,包含用户名、账号、密码和确认密码四个输入项及一个注册按钮。点击按钮后,界面会将表单数据封装并通过 Register 类进行处理。
Register.java
该类负责具体的注册逻辑,包括前端输入合法性校验和向数据库写入新记录。
在进行数据库插入前,必须满足以下条件:
1. 用户名、账号、密码不能为空;
2. “密码”与“确认密码”必须完全一致。
校验通过后,执行 insert into admin (id, name, password) values (?,?,?) 将数据持久化到数据库中,并在成功后提示用户注册成功。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













