🗊Работа с БД из Java-программ: JDBC www.spro-club.ru

Категория: Авто/мото
Нажмите для полного просмотра!
Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №1Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №2Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №3Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №4Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №5Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №6Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №7Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №8Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №9Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №10Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №11Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №12Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №13Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №14Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №15Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №16Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №17Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №18Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №19Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №20Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №21Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №22Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №23Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №24Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №25Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №26Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №27Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №28Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №29Работа с БД  из Java-программ: JDBC  www.spro-club.ru, слайд №30

Содержание

Вы можете ознакомиться и скачать Работа с БД из Java-программ: JDBC www.spro-club.ru. Презентация содержит 30 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Работа с БД 
из Java-программ:
JDBC
www.spro-club.ru
Описание слайда:
Работа с БД из Java-программ: JDBC www.spro-club.ru

Слайд 2





Необходимые условия
Пакеты java.sql и javax.sql содержат классы и интерфейсы для работы с БД
Для подключения к конкретной СУБД требуется специальная библиотека, называемая драйвером JDBC
Написано большое количество драйверов для большинства СУБД как самими разработчиками, так и сторонними производителями
Описание слайда:
Необходимые условия Пакеты java.sql и javax.sql содержат классы и интерфейсы для работы с БД Для подключения к конкретной СУБД требуется специальная библиотека, называемая драйвером JDBC Написано большое количество драйверов для большинства СУБД как самими разработчиками, так и сторонними производителями

Слайд 3





Загрузка драйвера
Первый шаг для работы приложения с БД –  это загрузка и регистрация необходимого класса драйвера (JAR-библиотеки)
Скачать его можно с официального сайта СУБД или из других источников
Затем библиотеку драйвера нужно «привязать» к проекту – указать путь к нему в параметре CLASSPATH
Описание слайда:
Загрузка драйвера Первый шаг для работы приложения с БД – это загрузка и регистрация необходимого класса драйвера (JAR-библиотеки) Скачать его можно с официального сайта СУБД или из других источников Затем библиотеку драйвера нужно «привязать» к проекту – указать путь к нему в параметре CLASSPATH

Слайд 4





Основные компоненты для работы с БД
Интерфейс Connection («соединение»): 
в результате успешного подключения к БД создаётся объект, описывающий данное соединение 
затем программе возвращается ссылка на этот объект как на «экземпляр» Connection
вся дальнейшая работа с БД ведётся с использованием этой ссылки на подключение
Описание слайда:
Основные компоненты для работы с БД Интерфейс Connection («соединение»): в результате успешного подключения к БД создаётся объект, описывающий данное соединение затем программе возвращается ссылка на этот объект как на «экземпляр» Connection вся дальнейшая работа с БД ведётся с использованием этой ссылки на подключение

Слайд 5





Основные компоненты для работы с БД
Интерфейс Statement («выражение»): 
объекты классов, реализующих этот интерфейс, используются для подготовки и выполнения SQL-запросов к БД
 Интерфейс ResultSet («результирующий набор»): 
такие объекты содержат данные, извлечённые из БД в результате выполнения SELECT-запросов с помощью объектов Statement
представляет собой, по сути, коллекцию строк
Описание слайда:
Основные компоненты для работы с БД Интерфейс Statement («выражение»): объекты классов, реализующих этот интерфейс, используются для подготовки и выполнения SQL-запросов к БД Интерфейс ResultSet («результирующий набор»): такие объекты содержат данные, извлечённые из БД в результате выполнения SELECT-запросов с помощью объектов Statement представляет собой, по сути, коллекцию строк

Слайд 6





Исключения при работе с БД
Главный класс исключений – SQLException (наследник Exception)
Выбрасывается (throws) в результате ошибок, связанных с некорректными SQL-запросами и т.п.
Описание слайда:
Исключения при работе с БД Главный класс исключений – SQLException (наследник Exception) Выбрасывается (throws) в результате ошибок, связанных с некорректными SQL-запросами и т.п.

Слайд 7





Алгоритм работы с БД
Регистрация драйвера JDBC.
Создание подключения (Connection).
Создание и подготовка объекта типа Statement (выражение, SQL-запрос)
Выполнение SQL-запроса, подготовленного с помощью Statement 
Обработка результатов (например, с помощью ResultSet в случае запроса SELECT)
Закрытие подключения и освобождение использованных ресурсов
Описание слайда:
Алгоритм работы с БД Регистрация драйвера JDBC. Создание подключения (Connection). Создание и подготовка объекта типа Statement (выражение, SQL-запрос) Выполнение SQL-запроса, подготовленного с помощью Statement Обработка результатов (например, с помощью ResultSet в случае запроса SELECT) Закрытие подключения и освобождение использованных ресурсов

Слайд 8





Регистрация драйвера
Может осуществляться разными способами
Например, с помощью класса java.sql. DriverManager
Прямая загрузка класса драйвера:
требует явного описания типа, загружаемого драйвера в исходном коде приложения
требуется сначала импортировать соответствующий пакет, а потом загрузить драйвер:
недостаток: при изменении драйвера (смене СУБД) требуется изменение исходного кода программы
Описание слайда:
Регистрация драйвера Может осуществляться разными способами Например, с помощью класса java.sql. DriverManager Прямая загрузка класса драйвера: требует явного описания типа, загружаемого драйвера в исходном коде приложения требуется сначала импортировать соответствующий пакет, а потом загрузить драйвер: недостаток: при изменении драйвера (смене СУБД) требуется изменение исходного кода программы

Слайд 9





Загрузка драйвера по имени
Более гибкий способ, широко распространён
Может выбрасывать исключение ClassNotFound «Класс не найден»
Описание слайда:
Загрузка драйвера по имени Более гибкий способ, широко распространён Может выбрасывать исключение ClassNotFound «Класс не найден»

Слайд 10





Установка подключения
класс DriverManager – объект управления JDBC, посредник между программой и драйвером
класс-метод DriverManager.getConnection() устанавливает соединение с БД и возвращает ссылку типа Connection
при вызове getConnection() происходит перебор всех загруженных в данный момент драйверов для использования подходящего
Описание слайда:
Установка подключения класс DriverManager – объект управления JDBC, посредник между программой и драйвером класс-метод DriverManager.getConnection() устанавливает соединение с БД и возвращает ссылку типа Connection при вызове getConnection() происходит перебор всех загруженных в данный момент драйверов для использования подходящего

Слайд 11





Установка подключения
метод getConnection() может принимать различные параметры (имеет перегруженные версии):
url – адрес БД (строка подключения), логин и пароль могут быть переданы прямо в URL
передача логина и пароля через отдельные параметры
Описание слайда:
Установка подключения метод getConnection() может принимать различные параметры (имеет перегруженные версии): url – адрес БД (строка подключения), логин и пароль могут быть переданы прямо в URL передача логина и пароля через отдельные параметры

Слайд 12





Настройка подключения
Добавление свойств подключения в объект класса Properties и вызов метода getConnection
Описание слайда:
Настройка подключения Добавление свойств подключения в объект класса Properties и вызов метода getConnection

Слайд 13





Типы запросов
Запросы на выборку данных (SQL-оператор Select) – возвращают результирующий набор данных (объект ResultSet)
Запросы модификации данных (DML) (операторы Insert, Update, Delete) – возвращают целое число – количество обработанных строк
Описание слайда:
Типы запросов Запросы на выборку данных (SQL-оператор Select) – возвращают результирующий набор данных (объект ResultSet) Запросы модификации данных (DML) (операторы Insert, Update, Delete) – возвращают целое число – количество обработанных строк

Слайд 14





Выполнение запросов
Требуется получить ссылку на объект типа Statement (выражение) из подключения (объекта Connection):
SQL-запросы выполняются с помощью перегруженных методов execute класса Statement:
Можно выполнить сразу несколько запросов с помощью int[] executeBatch()
Описание слайда:
Выполнение запросов Требуется получить ссылку на объект типа Statement (выражение) из подключения (объекта Connection): SQL-запросы выполняются с помощью перегруженных методов execute класса Statement: Можно выполнить сразу несколько запросов с помощью int[] executeBatch()

Слайд 15





Получение результата
Для обработки результатов запроса на выборку надо получить ссылку на объект типа ResultSet (результирующий набор, курсор):
Результирующий набор – это коллекция (таблица), имеющая несколько строк и столбцов
Для последовательного перехода по строкам используются методы next(), previous(), absolute()
Для извлечения данных используются методы
Описание слайда:
Получение результата Для обработки результатов запроса на выборку надо получить ссылку на объект типа ResultSet (результирующий набор, курсор): Результирующий набор – это коллекция (таблица), имеющая несколько строк и столбцов Для последовательного перехода по строкам используются методы next(), previous(), absolute() Для извлечения данных используются методы

Слайд 16





Навигация по курсору
boolean next() – переход к следующей строке набора. Если записей больше нет, возвращает false
boolean previous() – переход к предыдущей строке набора
boolean absolute(int row) – абсолютное позиционирование курсора на заданную строку
boolean relative(int rows) – относительное позиционирование курсора. rows – число строк, на которое нужно перейти вперёд или назад (может быть положительным или отрицательным)
Описание слайда:
Навигация по курсору boolean next() – переход к следующей строке набора. Если записей больше нет, возвращает false boolean previous() – переход к предыдущей строке набора boolean absolute(int row) – абсолютное позиционирование курсора на заданную строку boolean relative(int rows) – относительное позиционирование курсора. rows – число строк, на которое нужно перейти вперёд или назад (может быть положительным или отрицательным)

Слайд 17





Навигация по курсору
int findColumn(String columnLabel) – возвращает номер столбца с указанным именем
Описание слайда:
Навигация по курсору int findColumn(String columnLabel) – возвращает номер столбца с указанным именем

Слайд 18





Извлечение и запись данных
существует множество методов вида:
Данные извлекаются из текущей строки
Для записи значений в набор используется множество методов вида:
После установки значения следует вызвать метод
Описание слайда:
Извлечение и запись данных существует множество методов вида: Данные извлекаются из текущей строки Для записи значений в набор используется множество методов вида: После установки значения следует вызвать метод

Слайд 19





Пример обновления и вставки
Обновление значения в столбце:
Вставка новой строки с 3-мя столбцами:
Описание слайда:
Пример обновления и вставки Обновление значения в столбце: Вставка новой строки с 3-мя столбцами:

Слайд 20





Пример навигации и чтения
Описание слайда:
Пример навигации и чтения

Слайд 21





Получение метаданных
Метаданные – информация о структуре результирующего набора – именах столбцов, типов их данных и т.п.
Для получения метаданных используется метод getMetaData() результирующего набора (ResultSet), кот. возвращает ссылку на объект типа ResultSetMetaData
Эти данные могут быть полезны для настройки интерфейса пользователя (заголовки таблиц, ширина столбцов и т.п.)
Описание слайда:
Получение метаданных Метаданные – информация о структуре результирующего набора – именах столбцов, типов их данных и т.п. Для получения метаданных используется метод getMetaData() результирующего набора (ResultSet), кот. возвращает ссылку на объект типа ResultSetMetaData Эти данные могут быть полезны для настройки интерфейса пользователя (заголовки таблиц, ширина столбцов и т.п.)

Слайд 22





Методы класса ResultSetMetaData
int getColumnCount() – число столбцов в наборе
String getColumnName(int column) – имя указанного столбца (нумерация с 1)
String getColumnTypeName(int column) – наименование типа указанного столбца
int getColumnType(int column) – возвращает тип столбца (целое) - одну из констант класса java.sql.Types
String getTableName(int column) – имя таблицы, которой принадлежит указанный столбец набора (актуально при запросах к нескольким таблицам)
Описание слайда:
Методы класса ResultSetMetaData int getColumnCount() – число столбцов в наборе String getColumnName(int column) – имя указанного столбца (нумерация с 1) String getColumnTypeName(int column) – наименование типа указанного столбца int getColumnType(int column) – возвращает тип столбца (целое) - одну из констант класса java.sql.Types String getTableName(int column) – имя таблицы, которой принадлежит указанный столбец набора (актуально при запросах к нескольким таблицам)

Слайд 23





Методы класса ResultSetMetaData
boolean isAutoIncrement(int column) – является ли указанный столбец автоинкрементным (счётчиком, увеличивающимся автоматически)
int isNullable(int column) – может ли столбец содержать пустые значения (NULL)
int getColumnDisplaySize(int column) – максимальная ширина столбца в символах
Все методы могут выбрасывать исключение SQLException
Описание слайда:
Методы класса ResultSetMetaData boolean isAutoIncrement(int column) – является ли указанный столбец автоинкрементным (счётчиком, увеличивающимся автоматически) int isNullable(int column) – может ли столбец содержать пустые значения (NULL) int getColumnDisplaySize(int column) – максимальная ширина столбца в символах Все методы могут выбрасывать исключение SQLException

Слайд 24





Пример
Описание слайда:
Пример

Слайд 25





Подготовленные выражения
Служат для повышения эффективности многократного выполнения однотипных запросов (с разными параметрами)
Для работы с ними используется объект класса PreparedStatement
Описание слайда:
Подготовленные выражения Служат для повышения эффективности многократного выполнения однотипных запросов (с разными параметрами) Для работы с ними используется объект класса PreparedStatement

Слайд 26





Пример
Описание слайда:
Пример

Слайд 27





Транзакции
Транзакция – это механизм выполнения составных запросов (операций), позволяющий сохранить изменения только в случае успешного выполнения всех операций, входящих в набор
Пример: перевод денег с одного счёта на другой состоит из 2х операций (запросов Update) – списание со счёта отправителя и зачисление на счёт получателя
Работают по принципу «всё или ничего»
Являются неотъемлемой частью профессиональной работы с БД, особенно в крупных и ответственных проектах
Описание слайда:
Транзакции Транзакция – это механизм выполнения составных запросов (операций), позволяющий сохранить изменения только в случае успешного выполнения всех операций, входящих в набор Пример: перевод денег с одного счёта на другой состоит из 2х операций (запросов Update) – списание со счёта отправителя и зачисление на счёт получателя Работают по принципу «всё или ничего» Являются неотъемлемой частью профессиональной работы с БД, особенно в крупных и ответственных проектах

Слайд 28





Автоматическая фиксация изменений
По умолчанию в JDBC принята автоматическая фиксация каждого изменения
Можно изменить это поведение с помощью метода:
conn.setAutoCommit( false ); 
В этом случае для сохранения изменений требуется явным образом вызывать метод commit(), а для их отмены – метод rollback() интерфейса Connection
Такое поведение позволяет управлять транзакциями
Описание слайда:
Автоматическая фиксация изменений По умолчанию в JDBC принята автоматическая фиксация каждого изменения Можно изменить это поведение с помощью метода: conn.setAutoCommit( false ); В этом случае для сохранения изменений требуется явным образом вызывать метод commit(), а для их отмены – метод rollback() интерфейса Connection Такое поведение позволяет управлять транзакциями

Слайд 29





Пакетное выполнение
Класс PreparedStatement содержит методы для пакетного выполнения DML-запросов (на изменение данных)
Это актуально при отключении авто-обновления
Для этого после подготовки выражения (prepareStatement) вместо выполнения вызывается метод addBatch()
Для выполнения пакета запросов вызывается метод executeBatch(), кот.возвращает массив целых чисел – кол-во обработанных строк по каждому запросу
Описание слайда:
Пакетное выполнение Класс PreparedStatement содержит методы для пакетного выполнения DML-запросов (на изменение данных) Это актуально при отключении авто-обновления Для этого после подготовки выражения (prepareStatement) вместо выполнения вызывается метод addBatch() Для выполнения пакета запросов вызывается метод executeBatch(), кот.возвращает массив целых чисел – кол-во обработанных строк по каждому запросу

Слайд 30





Типы результирующих наборов
При создании выражения (statement) можно указать тип результирующего набора:
stmt = con.createStatement(resultSetType, resultSetConcurrency)
где resultSetType – тип результрующего набора:
ResultSet.TYPE_FORWARD_ONLY
TYPE_SCROLL_INSENSITIVE
TYPE_SCROLL_SENSITIVE
resultSetConcurrency – возможность изменения набора:
ResultSet.CONCUR_READ_ONLY – работа с набором только в режиме чтения данных
CONCUR_UPDATABLE – возможность изменения набора (вставки и обновления записей)
Описание слайда:
Типы результирующих наборов При создании выражения (statement) можно указать тип результирующего набора: stmt = con.createStatement(resultSetType, resultSetConcurrency) где resultSetType – тип результрующего набора: ResultSet.TYPE_FORWARD_ONLY TYPE_SCROLL_INSENSITIVE TYPE_SCROLL_SENSITIVE resultSetConcurrency – возможность изменения набора: ResultSet.CONCUR_READ_ONLY – работа с набором только в режиме чтения данных CONCUR_UPDATABLE – возможность изменения набора (вставки и обновления записей)



Похожие презентации
Mypresentation.ru
Загрузить презентацию