- •Основні відомості про сервлети і JavaServer Pages
- •Базова структура сервлетів
- •Життєвий цикл сервлета
- •Метод init
- •Метод service
- •Інтерфейс SingleThreadModel
- •Метод destroy
- •Обробка клієнтських запитів
- •Заголовки http-запиту
- •Коди станів http
- •Заголовки http-відповіді
- •Обробка cookies
- •Атрибути cookie
- •Відслідкування сеансу
- •Отримання інформації про сеанс
- •Перегляд інформації про сеанс
- •Кодування адрес url, надісланих клієнту
- •Елементи сценарію jsp
- •Вирази jsp
- •Скриплети jsp
- •Оголошення jsp
- •Інші наперед визначенізмінні
- •Директива сторінки jsp
- •Включення файлів і аплетів у документи jsp
- •Використання JavaBeans з jsp
- •Основи використання bean-компонентів
- •Доступ до властивостей bean-компонентів
- •Сумісне використання bean-компонентів
- •Робота з базами даних
- •Завантаження тареєстрація драйвера
- •Визначення url для встановлення з’єднання
- •Встановлення з’єднання
- •Створення об’єкту для передачі операторів sql
- •Формування запиту для виконання
- •Виконання запиту
- •Обробка результатів
- •Завершення з’єднання
- •Попередньо відкомпільовані (підготовлені) запити
- •Пакетне виконання sql запитів
- •Виконання внутрішніх процедур
- •Інтегрування сервлетів і jsp-сторінок Перенаправлення запитів із сервлетів
- •Передача інформації на сторінки призначення
- •Перенаправлення запитів з jsp-сторінок
- •Використання аплетів у якості клієнтських інтерфейсів сервлетів
Завантаження тареєстрація драйвера
Для підключення до бази даних середовище виконання Java повинне завантажити відповідний драйвер вказаної бази даних. Завантаження і вивантаження таких драйверів здійснюється за допомогою класу DriverManager.
На малюнку показана схема підключення Java-програми до бази даних. Клас DriverManager має структуру даних, яка містить як самі драйвери у вигляді об'єктів Driver, так і інформацію про них. Статичний блок цього класу автоматично створить екземпляр драйвера і зареєструє його у менеджері драйверів JDBC. Завантаження драйвера може здійснюватися як з програми, так і з командного рядка. Для завантаження драйвера JDBC з командного рядка необхідно ввести наступну команду:
Java -Djdbc.drivers=sun.odbc.JdbcOdbcDriver MyApplication
Це дозволить використовувати для нашого додатку MyApplication з допомогою опції віртуальної машини –D вказати в параметрі jdbc.drivers драйвер, яким ми хочемо користуватися.
При реєстрації драйвера JDBC з програми у Вас повинні бути:
JAR-файл з драйвером повинен бути підключений в CLASSPATH
Ви повинні знати назву класу-драйвера який ви збираєтеся підключати (цю інформацію шукайте на сайті виробника драйверів. Наприклад у файлі readme.txt. Якщо зовсім проблемно - розпакуйте .jar з драйверами і порийтеся в ньому - десь повинен бути клас Driver - а потім по вкладеності каталогів відновите назву пакету де він лежить).
Якщо ж ви використовуєте підключення в програмному коді, то це можна зробити так
. . .
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); }
. . .
Визначення url для встановлення з’єднання
Тут необхідно звернути увагу на створення URL для підключення до бази даних. В загальному випадку даний URL являє собою строку такого вигляду.
jdbc:<підпротокол>:<підім’я>
Такий формат являється деяким випадком побудови простих URL, і складається з наступних частин:
jdbc являється зарезервованим і визначає протокол доступу
< підпротокол > визначає ім’я драйвера або назву механізму з’єднання. Для JDBC-ODBC моста він буде мати вигляд odbc, для „тонкого” драйвера Oracle – oracle:thin, для MySQL – mysql,для Postgres – postgresql, та ін.
Визначає джерело даних. Як правило ця частина залежить від виробника, а може мати різний вигляд. Проте загалом вона може включати в себе:
Адресу хоста
Номер порта, для підключення
Назву бази даних, до якої підключаються
Додаткові параметри (логін чи пароль).
Прикладом можуть бути:
jdbc:oracle:thin:@193.23.56.80:5678:mybase
jdbc:mysql://193.23.56.80:5678/mybase?user=myuser
jdbc:postgresql://193.23.56.80:1234/mybase
Встановлення з’єднання
Для отримання Connection Ви повинні викликати DriverManager.getConnection() (цей метод може генерувати виключну ситуацію SQLException)і передати у всередину login/password/jdbc-url:
String url="jdbc:mysql://127.0.0.1/GENERAL";
String user="root";
String password="mypass";
Connection c=null;
try{
c=DriverManager.getConnection(url,user,password);
} catch(SQLException e)
{
System.out.println("Exception getting connection: "+e);
}