JDBC Flashcards Preview

Java Core > JDBC > Flashcards

Flashcards in JDBC Deck (21)
Loading flashcards...
1

Что такое JDBC и что он нам позволяет как разработчикам?

Jdbc позволяет разработчику писать уровень баз данных в Java без привязки к конкретной базе данных или ее деталям.

2

Какие есть типы Statement?

Statement
PrepareStatement
CallableStatement

3

Роль JDBC драйвера?

JDBC драйвер представляет реализации абстрактныз классов JDBC API для конкретной базы данных.

4

Какие преимущества PrepareStatement перед Statement?

PrepareStatement предварительно скомпилированный, и может использоваться с различными значениями.
Увеличение производительности при выполнении одинаковых запросов.
Защита jn SQL-инъекций

5

Для чего используется CallableStatement?

Для вызова хранимых процедур

6

Что значит Connection pooling?

Он подразумевает что в нашем распоряжении имеется некоторый набор (пул) соединений к базе даных.
Когда новый пользователь запрашивает доступ к БД, ему выдается уже открытое соединение из этого пула.
Как только пользователь освобождает одно из уже существующих соединений, ого становиться доступно для других пользователей.

7

Какие реализации Connection pool вы знаете?

JDBC Connection pool
DBCP
C3P0
Tomcat 7 JDBC Pool
OracleConnectionPoolDataSource

8

Какие основные шаги подключения к базе данных через JDBC?

Загрузить драйвер
Получить Connection
Получить объект Statement
Выполнить запрос
Закрыть Connection

9

Что значит грязное чтение (dirty read) в базе данных?

Это чтение данных, которые могут быть неправильными, или не актуальными в текущий момент.

10

Что такое DataSource?

Это интерфейс который описывает физический источник данных. Альтернатива DriverManager

11

Что такое параметризованные запросы?

Это запросы с входными параметрами.
Входной параметр - это параметр, чье значение не указывается при создании SQL-выражения

12

Типы JDBC драйверов?

Мост JDBC-ODBC + драйвер ODBC
Наполовину Java драйвер
Сетевые JDBC-драйверы на чистой Java
Драйверы "родного" протокола СУБД

13

Для чего используется класс java.sql.ResultSet

Результат запроса упаковываются в объект класса java.sql.ResultSet. Класс содержит большой набор методов работы с данными.

14

Поддерживает ли JDBC-ODBC мост несколько открытых Statement на один Connection?

Нет, только один Statement можно использовать на один Connection в JDBC-ODBC мосте

15

Что такое транзакция?

Транзакция -это логическая единица работы.

16

Что такое Optimistic Locking?

Это стратегия блокирования в базе данных, которая не ограничивает доступ к строкам в таблице, но перед модификацией запрашивает у каждой строки атрибут Version с первичным значением 0 и проводит модификацию.

17

Что такое Pessimistic locking?

Это стратегия блокирования в базе данных, во время которой, ограничение по доступу накладывается на все строки, которые данная модификация может затронуть.
Во время пессимистической блокировки невозможен доступ к заблокированным объектам

18

Какие стандартные уровни изоляции запросов в JDBC?

TRANSACTION_NONE
TRANSACTION_READ_COMMITTED
TRANSACTION_READ_UNCOMMITTED
TRANSACTION_REPEATABLE_READ
TRANSACTION_SERIALIZABLE

19

Что значит auto-commit mode

Каждый sql-запрос будет выполнен как транзакция

20

Что такое SavePoint?

SavePoint это точка сохранения в транзакции к которой можно откатиться при выполнении.

21

Что такое jdbc batch update?

Это обновленые сгруппированные и отправленные пакетом запросы, а не друг за другом.