Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Доступ до баз даних з Java.doc
Скачиваний:
1
Добавлен:
20.11.2019
Размер:
71.68 Кб
Скачать

Доступ до баз даних з Java

Java надає доступ до даних за допомогою інтерфейсу JDBC. Даний інтерфейс за своєю суттю нагадує ODBC, більш того, в Win32 є шлюз JDBC-ODBC (хочу попередити відразу - коректно він працює в сімействі win9x, в nt він працює, але ... близько хвилини, потім GPF :-).

Пакет JDBC призначений для роботи з різноманітними диспетчерами СУБД від різних розробників. Для підключення до бази даних середовище виконання Java повинне завантажити відповідний драйвер вказаної бази даних. Завантаження і вивантаження таких драйверів здійснюється за допомогою класу DriverManager.

На малюнку показана схема підключення Java-програми до бази даних. Клас DriverManager має структуру даних, яка містить як самі драйвери у вигляді об'єктів Driver, так і інформацію про них.

Отже розглянемо кроки які необхідно зробити для того, щоб обробити SQL запит:

  • Завантаження та реєстрація JDBC-драйвер (на етапі ініціалізації додатку)

  • Сформувати JDBC-URL-рядок для отримання з'єднання з базою.

  • Одержати екземпляр об’єкта класу Connection

  • Сформувати SQL запит

  • Виконання і обробка SQL-запиту

  • Закрити одержані з'єднання (ResultSet, Statament, Connection)

Тепер розглянемо ці кроки детальніше на приклад роботи з MySql.

Завантаження та реєстрація jdbc-драйвера

Драйвери JDBC звичайно створюються постачальниками СУБД. Їх робота полягає в обробці JDBC-підключень і команд, що поступають від Java-додатку, і в генерації машинно-залежних викликів по відношенню до бази даних.

Далеко не всі постачальники СУБД пропонують драйвери JDBC, але як правило ними завжди поставляються драйвера ODBC (Open Database Connectivity), які задовольняють стандарту Microsoft. При роботі з СУБД на платформі Windows постачальник використовуваної СУБД майже завжди пропонує власний драйвер ODBC. По цьому проблем з підключенням Java-додатку до бази даних в середовищі Windows звичайно не виникає, чого, на жаль, не можна сказати про інші платформи.

Завантаження драйвера може здійснюватися як з програми, так і з командного рядка.

Для завантаження драйвера-моста JDBC-ODBC з командного рядка необхідно ввести наступну команду:

Java -Djdbc.drivers=sun.odbc.JdbcOdbcDriver MyApplication

При реєстрації драйвера-моста JDBC-ODBC з програми у Вас повинні бути:

  • JAR-файл з драйвером повинен бути підключений в CLASSPATH

  • Ви повинні знати назву класу-драйвера який ви збираєтеся підключати (цю інформацію шукайте на сайті виробника драйверів. Наприклад у файлі readme.txt. Якщо зовсім проблемно - розпакуйте .jar з драйверами і порийтеся в ньому - десь повинен бути клас Driver - а потім по вкладеності каталогів відновите назву пакету де він лежить).

JAR Ви підключили, тепер треба зареєструвати драйвер:

String driver=" sun.odbc.JdbcOdbcDriver";

try{

Class.forName(driver).newInstance();

DriverManager.registerDriver( (Driver)Class.forName(driver).newInstance());

} catch(Exception e)

{

System.out.println("Exception while register driver: "+e);

}