Топ-100Основы JDBC в Java - CodOrbits
LogoCodOrbits

Раздел: JDBC

Научитесь подключаться к базам данных через JDBC, выполнять SQL-запросы и обрабатывать результаты в Java.

Все разделы
Иконка JDBC

Основы JDBC в Java

Last updated: 9 мая 2025 г.

JDBC программный интерфейс для взаимодействия Java приложения и базы данных.

То есть, грубо говоря, мы можем работать с базой данных из Java программы.

Example

В JDBC есть три основных класса для работы с базой:

  • Connection – для установки соединения с базой.
  • Statement – для выполнения sql запросов.
  • ResultSet – для получения результатов запроса.

Пример программы:

1import java.sql.*;
2
3public class JDBCApp {
4    public static void main(String[] args)
5        throws ClassNotFoundException, SQLException {
6        //В метод Class.forName нужно передать
7        //драйвер mysql благодаря которому DriverManager
8        //будет понимать что мы пытаемся подключиться
9        //именно к mysql базе так как базы бывают разные.
10        Class.forName("com.mysql.cj.jdbc.Driver");
11
12        //В метод getConnection передаем ссылку
13        //на базу, имя пользователя и пароль mysql
14        //таким образом устанавливается соединение
15        //текущей программы JDBCApp с базой данных
16        Connection connection =
17        DriverManager.getConnection(
18        "jdbc:mysql://localhost/storage",
19        "root", "07998MSD");
20
21        //Чтобы передать запрос базе данных нужен
22        //объект statement, который возвращается из метода
23        //createStatement нашего соединения (connection)
24        Statement statement = connection.createStatement();
25
26        //executeUpdate – для обновления, создания
27        //или удаления чего в базе данных.
28        //Например создаем таблицу Books ниже.
29        statement.executeUpdate("Create table Books "
30        +"(id middleint not null auto_increment, "
31        +"name VARCHAR(30) not null, "
32        +"author VARCHAR(30) not null, PRIMARY KEY (id));");
33
34        //И добавим пару книг в таблицу
35        statement.executeUpdate("INSERT INTO Books "
36        +"(name, author) VALUES (‘LOTR’, "
37        +"‘Tolkien’);");
38        statement.executeUpdate("INSERT INTO Books "
39        +"(name, author) VALUES (‘Camera Obscura’, "
40        +"‘Nabokov’);");
41
42        //далее можем передавать запрос
43        //через метод executeQuery, который возвращает
44        //объект ResultSet, который
45        //содержит результат запроса
46        ResultSet resultSet = statement.executeQuery(
47            "SELECT * FROM Books");
48        System.out.println("\nBooks:");
49
50        //То есть как видим мы просто работаем с базой
51        //теми же самыми SQL запросами, которыми мы
52        //пользовались и раньше, но теперь через
53        //Java программу.
54
55        //next проходит по строкам таблицы базы данных
56        while (resultSet.next()) {
57            //в метод getType передаем номер атрибута
58            //или имя атрибута строки таблицы
59            int id = resultSet.getInt("id");
60            String name = resultSet.getString("name");
61            String author = resultSet.getString("author");
62
63            System.out.println("\n====================\n");
64            System.out.println("id: " + id);
65            System.out.println("name: " + name);
66            System.out.println("author: " + author);
67        }
68        System.out.println("\n====================\n");
69        System.out.println("Closing connection and "
70            + "releasing resources…");
71        resultSet.close();
72        statement.close();
73        connection.close();
74    }
75}

Вывод:

Видим на консоли добавленные нами книги в базу данных.


Дополнительные материалы

Официальная документация по JDBC от Oracle

Additional Material Icon
Divider

Гайд по подключению разных СУБД к Java

Additional Material Icon
Divider

JDBC и Unicode (кириллица в БД)

Additional Material Icon

Следующие уроки

Транзакции в SQL и JDBC

13
мин.

Similar Articles Icon
Divider

Savepoint в JDBC транзакциях

13
мин.

Similar Articles Icon
Divider

Изоляция транзакций. Грязное чтение

15
мин.

Similar Articles Icon