Этот урок описывает подключение базы данных MySQL к Java-приложению с использованием JDBC. Мы создадим таблицу users для хранения информации о пользователях и реализуем навигацию между окнами приложения.
Подготовка
Для работы с базой данных MySQL необходимо:
- MySQL Workbench: графический интерфейс для работы с MySQL. Скачайте и установите его с официального сайта, выбрав версию для вашей операционной системы.
- MySQL Server: сервер баз данных MySQL. Ссылка для загрузки доступна на официальном сайте. Установите его после скачивания.
Создание базы данных и таблицы
После установки MySQL Workbench и MySQL Server запустите Workbench. Создайте базу данных:
- Выберите «Data Connection» и нажмите «+».
- Укажите имя базы данных (например, «etprager»). В этом примере username (root) и password (12345) используются по умолчанию. Нажмите «Test Connection» для проверки подключения.
- После успешного подключения нажмите «OK».
- Создайте схему (например, «etprager»).
- Кликните правой кнопкой мыши по созданной схеме и выберите «Create Table».
- Назовите таблицу users.
- Добавьте поля:
- id: INT, AUTO_INCREMENT, NOT NULL (первичный ключ, автоматически увеличивается)
- first_name: VARCHAR(45), NOT NULL
- last_name: VARCHAR(45), NOT NULL
- username: VARCHAR(255), NOT NULL
- password: VARCHAR(255), NOT NULL
- location: VARCHAR(255)
- gender: VARCHAR(255)
- Установите Engine как InnoDB (или оставьте значение по умолчанию).
- Нажмите «Apply» для создания таблицы.
Обработка события нажатия кнопки «Зарегистрироваться»
В файле controller.java (или аналогичном, обрабатывающем события) найдите кнопку «Зарегистрироваться» (loginzaButton). Добавьте обработчик событий:
loginzaButton.setOnAction(event -> {
// Скрываем текущее окно
getScene().getWindow().hide();
// Загружаем и отображаем окно регистрации
try {
FXMLLoader loader = new FXMLLoader(getClass().getResource("/sample/register.fxml")); // путь к файлу fxml
Parent root = loader.load();
Stage stage = new Stage();
stage.setScene(new Scene(root));
stage.showAndWait();
} catch (IOException e) {
e.printStackTrace(); // Обработка исключений
}
});
Этот код скрывает текущее окно и отображает окно регистрации (register.fxml), которое нужно создать отдельно. Обратите внимание на обработку исключения IOException.
В этом уроке мы подключили базу данных MySQL, создали таблицу users и реализовали переключение между окнами приложения. Это базовый функционал, который можно расширять в последующих уроках.