Здравствуйте!
В этой статье я напишу простой пример соединения с базами данных на Java.Эта статья предназначена новичкам.Здесь я опишу каждую строчку объясню что зачем.
Но для начала немного теории.
JDBC (Java DataBase Connectivity — соединение с базами данных на Java)-предназначен для взаимодействия Java-приложения с различными системами управления базами данных(СУБД). Всё движение в JDBC основано на драйверах которые указываются специально описанным URL.
Итак практика.
Для начала создаём maven проект и в pom.xml помещаем зависимость для соединения с СУБД(В моём случае СУБД будет выступать MySQL):
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.38</version>
</dependency>
</dependencies>
Должно получится так:
Дальше подключаемся к базе данных нужной вам(я пользуюсь IDEA Ultimate по этому я подключаюсь именно так)
Дальше заполняем Database, User и Password.Обязательно проверяем соединение.
Дальше мы создаём сам класс.
А теперь разберём его построчно:
В начале мы создаём три переменные url,username и password.
Образец указания url:
Username по умолчанию root.Password вы должны знать сами.
После с помощью строчки Class.forName(«com.mysql.jdbc.Driver») регестрируем драйвера.
Дальше устанавливаем соединение с помощью DriverManager.getConnection(ваш url,username,password).
После с помощью connection(соединения) создаём простой запрос Statement методом createStatement().
Дальше создаём экземпляр класса ResultSet и формируем запрос через statement методом executeQuery(запрос).
Дальше мы заставляем пробежаться resultSet по всей базе данных и вывести то что нам нужно.
Так с помощью объекта resultSet и его методов(getString,getInt и т.д. в зависимости от типа переменных в колонке) мы выводим.Так как мой запрос был для того что бы вывести всё, мы можем вывести любую колонку.
После закрываем resultSet,statement и connection(именно в такой последовательности).
В процессе он будет показывать ошибки так как будет запрашивать обработку исключений в catch.Так что пишите catch заранее.
Теперь когда практика есть на неё можно наложить более глубокую теорию.Тема правда очень большая, желаю удачи в её изучении.
Этот проект на github тут.
Автор: Роман Лукашенко