Я пытаюсь кодировать простой экран входа в систему, который приведет к другой программе.
Пользователь может 1) Войти или 2) Зарегистрироваться - две разные сцены.
Когда пользователь регистрируется, имя пользователя / зашифрованный пароль сохраняется в базе данных.
Когда пользователь входит в систему, у него есть возможность, чтобы программа запомнила его данные для входа в систему в следующий раз, временно сохранив их на своем компьютере в файле XML.
Моя идея состояла в том, чтобы программа проверила, существует ли файл XML при загрузке сцены, и если он существует, то предварительно заполните поля данными из файла XML.
Я заставил работать XML-ридер (только не в этом конкретном случае) и понял, что лучший способ сделать это - запустить его через опцию инициализации, как я понимаю, этозавершено до того, как какое-либо действие инициировано?
Вот мой код:
@Override
public void initialize(URL arg0, ResourceBundle arg1) {
File file = new File("C:\\Users\\konta\\IdeaProjects\\project\\files\\rememberme.xml");
boolean exists = file.exists();
if (exists) {
DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
Document document = documentBuilder.parse(file);
document.getDocumentElement().normalize();
savedUsername = document.getElementsByTagName("Username").item(0).getTextContent();
savedPassword = document.getElementsByTagName("Password").item(0).getTextContent();
if (savedUsername.length() >= 1 && savedPassword.length() == 44) {
usernameInput.setText(username);
passwordInput.setText(password);
}
}
}
Проблема:
Этот код должен выдать три исключения, которые не допускаются при инициализации,
Есть ли способ обойти этот или другой способ чтения ввода XML и запуска его в методе инициализации, к которому вы могли бы привести меня?
Спасибо - Ким Андре Лангхольц