Java mysql 创建用户_Java和MySQL – 创建登录身份验证

我已成功将我的

Java应用程序连接到

MySQL,然后我希望用户输入他们的用户名和密码.然后它会向MySQL发送查询并查找具有该用户名的位置,然后将给定的密码与数据库中的密码进行比较.

在大多数情况下,这是有效的.假设用户名是“ABC”,密码是“def”.如果提示输入用户名,并输入“ABC def”,则说它是成功的,与密码“def a”相同.我相信问题是rs.next(),它只检查空格之前的任何文本.

任何解决方案的想法?

String databaseUsername = "";

String databasePassword = "";

// Check Username and Password

System.out.print("Enter Username: ");

String name = sc.next();

System.out.print("Enter Password: ");

String password = sc.next();

// Create SQL Query

Statement stmt = connection.createStatement();

String SQL = "SELECT * FROM users WHERE users_name='" + name + "' && users_password='" + password+ "'";

ResultSet rs = stmt.executeQuery(SQL);

// Check Username and Password

while (rs.next()) {

databaseUsername = rs.getString("users_name");

databasePassword = rs.getString("users_password");

}

if (name.equals(databaseUsername) && password.equals(databasePassword)) {

System.out.println("Successful Login!\n----");

} else {

System.out.println("Incorrect Password\n----");

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值