【发布时间】:2022-01-21 01:37:06
【问题描述】:
private void login() throws UserException, NoSuchAlgorithmException, InvalidKeySpecException {
System.out.println("=== Log in ===");
while (true) {
System.out.println("Enter your login \nor Enter EXIT for return to main menu ->");
String inputLogin = this.sc.nextLine();
if ("EXIT".equalsIgnoreCase(inputLogin)) {
break;
}
try {
User user = userImpl.read(inputLogin);
if (user.getLogin() == null) {
System.err.println("Username incorrect.");
} else {
System.out.println("Enter your password \n or Enter EXIT for return to main menu ->");
String inputPassword = this.sc.nextLine();
user = userImpl.readPassword(inputPassword);
if (!user.getPassword().equals(generateStrongPasswordHash(inputPassword)) || "EXIT".equalsIgnoreCase(inputPassword)) {
System.err.println("Password incorrect");
continue;
}
System.out.println("Log in successfully✔✔✔");
}
} catch (UserException | NoSuchAlgorithmException | InvalidKeySpecException e) {
e.printStackTrace();
}
}
}
我正在尝试使用 JDBC (MySQL) 实现控制台程序 Cinema。使用登录方法后,我得到了这个Exception。 如何在控制台应用上实现授权? User User
【问题讨论】:
-
可能是 readPassword 方法有问题? user = userImpl.readPassword(inputPassword);
标签: java sql jdbc null console-application