SWD Software Ltd. - официальный дистрибьютор QNX на территории России и стран бывшего СССР Операционная система реального времени QNX
Инструменты для создания надёжных встраиваемых систем и
интеллектуальных устройств любой сложности
QNX Software Systems - разработчик встраиваемой операционной системы QNX
  Стандартная версия

JDBC-ODBC

Тематические материалы

Брошюра Empress 


Информация

Коммерческий запрос 

Сайт разработчика 

Русский сайт Empress 


Истории внедрений

EMPRESS в аэрокосмической промышленности и робототехнике 

EMPRESS в медицине 

EMPRESS в маршрутизаторах и мини-АТС 

СУРБД. Области применения и успешные внедрения 

Применение мобильных, встраиваемых БД Empress в сетевых роботах 

Клиентский ODBC-драйвер Empress был специально модифицирован для работы с мостом JDBC-ODBC. Это предоставляет разработчикам Java-приложений интерфейс к базам данных Empress. Важным компонентом для доступа к базе данных с помощью Java является протокол Java Database Connectivity (JDBC), Java-версия протокола Open Database Connectivity (ODBC), который обеспечивает доступ к клиент/серверным СУБД.

Настоящий документ вкратце описывает, как создавать Java-приложения, имеющие доступ к базам данных Empress. Он базирован и содержит цитаты из документов компании Sun Microsystems, Inc.:

  • Документация к бета-версии JDK 1.1
  • Комментарии к релизу JDBC-ODBC версии 1.1001

Об интерфейсе JDBCTM

JDBC является интерфейсом прикладного программирования Java (JavaTM API) для выполнения SQL-выражений. Он состоит из набора классов и интерфейсов, написанных на языке программирования Java, что облегчает отправку SQL-запросов практически к любой реляционной базе данных. Используя JDBC API, можно написать программу, которая сможет отправлять SQL-запросы к нужной базе данных. При этом использование Java устранит необходимость в создании множества различных программ под различные платформы. Применение Java и JDBC позволяет программистам создать программу один раз и затем использовать ее повсюду.

Язык программирования Java, будучи надежным, безопасным, простым в использовании и понимании и автоматически загружаемым через сеть, является превосходной языковой основой для создания приложений для работы с базами данных. Необходимо лишь задать механизм взаимодействия Java-приложений с различными базами данных. Этим механизмом и является интерфейс JDBC.

JDBC расширяет возможности языка программирования Java. Так, использование Java и интерфейса JDBC API позволяет создавать веб-страницы, содержащие апплеты, которые получают информацию из удаленной базы данных. Для предприятия использование JDBC позволит подключить всех его работников к одной или нескольким внутреннии базам данных через Интранет, даже если они используют различные платформы, будь то Windows, Mac OS или UNIX. С увеличением количества Java-разработчиков потребность в легком доступе Java-программ к базам данных возрастает.

Менеджеры информационно-управляющих систем признают преимущества совместного использования Java и JDBC, поскольку благодаря этому значительно упрощается и удешевляется распространение информации. Можно продолжать использовать уже установленные базы данных и леко получать доступ к информации, даже если она хранится в различных СУБД. Значительно уменьшается время разработки новых приложений. Существенно упрощаются инсталляция и последующие обновления продукта. Применение Java и JDBC позволяет один раз написать приложение или обновление для него и, выложив его на сервер, обеспечить доступ к этой последней версии любому пользователю. Для тех, кто занимается предоставлением информационных услуг, совместное применение Java и JDBC открывает широкие возможности для предоставления своим внешним клиентам самой свежей информации.

Что делает JDBC?

Интерфейс JDBC позволяет:

  • установить связь с базой данных;
  • отослать SQL-запрос;
  • обработать результат.

Ниже приведен фрагмент кода, который показывает пример функциональности JDBC:

Connection con = DriverManager.getConnection ( "jdbc:odbc:wombat", "login", "password");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM Table1");
while (rs.next()) {
int x = getInt("a");
String s = getString("b");
float f = getFloat("c");
}

В качестве резюме можно сказать, что JDBC API является интерфейсом между Java и основными абстракциями и понятиями SQL. Он построен на основе ODBC, поэтому программисты, знакомые с ODBC, смогут быстро освоить и JDBC. Интерфейс JDBC сохраняет основные характеристики ODBC: оба интерфейса основаны на интерфейсе X/Open уровня запросов SQL (X/Open SQL Call Level Interface). Разница заключается в том, что JDBC, основываясь на Java, позволяет воспользоваться всеми преимуществами этого языка программирования и чрезвычайно прост в использовании.

Взаимодействие Java и Empress

Приведенная ниже иллюстрация дает представление о том, как Java-приложение соединяется с базой данных Empress, и какие компоненты участвуют в этом. Для соединения с СУРБД Empress необходим мост JDBC-ODBC и ODBC-драйвер Empress.

Для соединения используются следующие компоненты:

  1. Java-приложение, использующее классы JDBC.
  2. Менеджер драйверов JDBC. Он составляет основу архитектуры JDBC и довольно компактен и прост; главная его функция - соединенить Java-приложение с корректным драйвером JDBC.
  3. Мост JDBC-ODBC позволяет использовать драйверы ODBC в качестве драйверов JDBC. Мост JDBC-ODBC является драйвером JDBC, который позволяет выполнять операции JDBC, преобразуя их в операции ODBC. Таким образом, для ODBC-сервера он выглядит как обычный ODBC-клиент. Мост позволяет использовать JDBC с любой базой данных, для которой существует ODBC-драйвер. Он реализован в виде Java-пакета sun.jdbc.odbc и содержит штатную библиотеку, используемую для обеспечения доступа к ODBC. Этот мост является совместной разработкой компаний Intersolv и JavaSoft. Он написан на языке Java и использует для вызова ODBC собственные Java-методы. Единственная разница между версиями для различных платформ заключается в использовании другой штатной библиотеки.
  4. ODBC-драйвер Empress является ODBC-драйвером, обрабатывающим вызовы ODBC и взаимодействующим с сервером Empress Connectivity. Cервер Empress Connectivity может быть запущен на том же компьютере, на котором выполняется приложение. Обычно он запускается на одной из сетевых машин, доступных для клиентской станции.

Пример JDBC-приложения