Java предоставляет JDBC (возможность подключения к базе данных Java) как часть Java SDK (Software Development Kit). Используя это ОГОНЬ , очень легко подключиться к реляционной базе данных и выполнять общие операции, такие как запросы, вставка, обновление и удаление записей.
Хотя основной JDBC API включен в java, для подключения к конкретной базе данных, такой как MySQL или SQL Server, требуется дополнительный компонент, известный как драйвер базы данных. Этот драйвер базы данных представляет собой программный компонент, который переводит основные вызовы JDBC в формат, понятный этой базе данных.
как улучшить работу игр на ноутбуке
В этой статье давайте рассмотрим детали подключения к базе данных MySQL и то, как выполнить с ней несколько запросов.
Драйвер базы данных MySQL
Как объяснялось выше, для подключения к базе данных MySQL вам понадобится драйвер JDBC для MySQL. Это называется драйвером Connector / J и может быть загружен с сайт MySQL здесь.
После загрузки файла ZIP (или TAR.GZ) распакуйте архив и скопируйте файл JAR. mysql-коннектор-java - bin.jar в подходящее место. Этот файл необходим для запуска любого кода, использующего драйвер MySQL JDBC.
Создание образца базы данных
Предполагая, что вы загрузили базу данных MySQL и настроить это правильно там, где у вас есть к ней доступ, давайте создадим образец базы данных, чтобы мы могли использовать ее для подключения и выполнения запросов.
Подключитесь к базе данных с помощью клиента по вашему выбору и выполните следующие инструкции, чтобы создать образец базы данных.
create database sample;
Нам также нужны имя пользователя и пароль, чтобы иметь возможность подключиться к базе данных (если вы не хотите подключиться как администратор, что обычно является плохой идеей).
Следующее создает пользователя с именем тестовый пользователь который будет подключаться к базе данных MySQL с того же компьютера, на котором он запущен (обозначен localhost ), используя пароль securepwd .
create user 'testuser'@'localhost' identified by 'securepwd';
Если вы подключаетесь к базе данных, запущенной на другом компьютере (с именем удаленный ) вам необходимо использовать следующие ( удаленный может быть именем хоста или IP-адресом):
create user 'testuser'@'remotemc' identified by 'securepwd';
Теперь, когда имя пользователя и пароль созданы, нам нужно предоставить доступ к образцу базы данных, созданному ранее.
grant all on sample.* to 'testuser'@'localhost';
Или, если база данных удаленная:
grant all on sample.* to 'testuser'@'remotemc';
Теперь вы должны убедиться, что можете подключиться к базе данных как пользователь, которого вы только что создали с тем же паролем. Вы также можете выполнить следующие команды после подключения, чтобы убедиться, что все разрешения верны.
create table joe(id int primary key auto_increment, name varchar(25));
drop table joe;
Настроить путь к классу Java
Давайте теперь подробно рассмотрим, как подключиться к MySQL из Java. Первый шаг - загрузить драйвер базы данных. Это делается путем вызова следующего в подходящем месте.
как отправить файлы на другой компьютер
Class.forName('com.mysql.jdbc.Driver');
Код может вызвать исключение, поэтому вы можете его поймать, если собираетесь с ним справиться (например, форматирование сообщения об ошибке для графического интерфейса пользователя).
try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
// use the exception here
}
Очень часто этот код вызывается в статическом блоке класса, поэтому программа немедленно завершается ошибкой, если драйвер не может быть загружен.
public class Sample
{
static {
try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
System.err.println('Unable to load MySQL Driver');
}
}
}
Конечно, чтобы найти драйвер, программа должна быть вызвана с драйвером JAR (загруженным и извлеченным выше), включенным в путь к классам, как показано ниже.
java -cp mysql-connector-java - bin.jar: ...
Подключение к MySQL с Java
Теперь, когда мы разобрались с деталями загрузки драйвера MySQL из java, давайте подключимся к базе данных. Один из способов создать соединение с базой данных - использовать DriverManager .
String jdbcUrl = ...;
Connection con = DriverManager.getConnection(jdbcUrl);
И что это за jdbcUrl ? Он указывает детали соединения, включая сервер, на котором расположена база данных, имя пользователя и так далее. Вот образец URL для нашего примера.
String jdbcUrl = 'jdbc:mysql://localhost/sample?user=testuser&password=secrepwd';
Обратите внимание, что мы включили все параметры, необходимые для подключения, включая имя хоста ( localhost ), имя пользователя и пароль. (Включение такого пароля НЕ является хорошей практикой, альтернативы см. Ниже.)
Используя это jdbcUrl , вот полная программа для проверки возможности подключения.
public class Sample
{
static {
try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
System.err.println('Unable to load MySQL Driver');
}
}
static public void main(String[] args) throws Exception
{
String jdbcUrl = 'jdbc:mysql://localhost/sample?user=testuser&password=securepwd';
Connection con = DriverManager.getConnection(jdbcUrl);
System.out.println('Connected!');
con.close();
}
}
Обратите внимание, что соединение с базой данных является ценным ресурсом в программе и должно быть закрыто должным образом, как указано выше. Однако приведенный выше код не закрывает соединение в случае исключения. Чтобы закрыть соединение при нормальном или аварийном выходе, используйте следующий шаблон:
try(Connection con = DriverManager.getConnection(jdbcUrl)) {
System.out.println('Connected!');
}
Как отмечалось выше, вставлять пароль в URL-адрес JDBC - плохая идея. Чтобы указать имя пользователя и пароль напрямую, вы можете использовать следующий вариант подключения.
действие не может быть завершено, потому что файл открыт в системе Windows 10
String jdbcUrl = 'jdbc:mysql://localhost/sample';
try(Connection con = DriverManager.getConnection(jdbcUrl, 'testuser', 'securepwd')) {
}
Запросы к базе данных из Java
Теперь, когда соединение с базой данных установлено, давайте посмотрим, как выполнить запрос, например запрос версии базы данных:
select version();
Запрос выполняется в java следующим образом. А Заявление создается объект и выполняется запрос с использованием executeQuery () метод, который возвращает ResultSet .
String queryString = 'select version()';
Statement stmt = con.createStatement();
ResultSet rset = stmt.executeQuery(queryString);
Распечатать версию из ResultSet следующее. 1 относится к индексу столбца в результатах, начиная с 1.
while ( rset.next()) {
System.out.println('Version: ' + rset.getString(1));
}
После обработки результатов объекты нужно закрыть.
rset.close();
stmt.close();
И это охватывает все, что нужно для подключения к MySQL из java и выполнения простого запроса.
Также ознакомьтесь с нашими Памятка по командам SQL .
Делиться Делиться Твитнуть Эл. адрес Можно ли установить Windows 11 на несовместимый компьютер?Теперь вы можете установить Windows 11 на старые ПК с официальным файлом ISO ... но стоит ли это делать?
Читать далее Похожие темы- Программирование
- Джава
- SQL
Подписывайтесь на нашу новостную рассылку
Подпишитесь на нашу рассылку технических советов, обзоров, бесплатных электронных книг и эксклюзивных предложений!
Нажмите здесь, чтобы подписаться