Java и базы данных

JDBC

Последнее обновление: 08.08.2018

Для хранения данных мы можем использовать различные базы данных - Oracle, MS SQL Server, MySQL, Postgres и т.д. Все эти системы упраления базами данных имеют свои особенности. Главное, что их объединяет это взаимодействие с хранилищем данных посредством команд SQL. И чтобы определить единый механизм взаимодействия с этими СУБД в Java еще начиная с 1996 был введен специальный прикладной интерфейс API, который называется JDBC.

То есть если мы хотим в приложении на языке Java взаимодействовать с базой данных, то необходимо использовать функциональные возможности JDBC. Данный API входит в состав Java (на текущий момент это версия JDBC 4.3), в частности, для работы с JDBC в программе Java достаточно подключить пакет java.sql. Для работы в Java EE есть аналогичный пакет javax.sql, который расширяет возможности JDBC.

Однако не все базы данных могут поддерживаться через JDBC. Для работы с определенной СУБД также необходим специальный драйвер. Каждый разработчик определенной СУБД обычно предоставляет свой драйвер для работы с JDBC. То есть если мы хотим работать с MySQL, то нам потребуется специальный драйвер для работы именно MySQL. Как правило, большиство драйверов доступны в свободном доступе на сайтах соответствующих СУБД. Обычно они представляют JAR-файлы. И преимущество JDBC как раз и состоит в том, что мы абстрагируемся от строения конкретной базы данных, а используем унифицированный интерфейс, который един для всех.

JDBC и работа с базой данных в Java

Для взаимодействия с базой данных через JDBC используются запросы SQL. В то же время возможности SQL для работы с каждой конкретной СУБД могут отличаться. Например, в MS SQL Server это T-SQL, в Oracle - это PL/SQL. Но в целом эти разновидности языка SQL не сильно отличаются.

Особенности запуска программы

На процесс компиляции необходимость работы с БД никак не сказывается, но влияет на процесс запуска программы. При запуске программы в командной строке необходимо указать путь к JAR-файлу драйвера после параметра -classpath.

java -classpath путь_к_файлу_драйвера:путь_к_классу_программы  главный_класс_программы

Например, в папке C:\Java располагаются файл программы - Program.java, скомпилированный класс Program и файл драйвер, допустим, MySQL - mysql-connector-java-8.0.11.jar. Для выполнения класса Program мы можем использовать следующую команду:

java -classpath c:\Java\mysql-connector-java-8.0.11.jar;c:\Java Program

Если C:\Java является текущим каталогом, то мы можем сократить команду:

java -classpath mysql-connector-java-8.0.11.jar;. Program

В принципе мы можем и не использовать параметр -classpath, и запустить програму на выполнение обычным способом с помощью команды "java Program". Но в этом случае путь к драйверу должен быть добавлен в переменную Path.

Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850