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

3.8.6Дополнительные сведения rmi.Java

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

        1. Разница между удаленными и локальными объектами.

Рассмотрим клонирование локальных и удаленных объектов. Для локальных создается копия с теми же состояниями. А для удаленного: клонирование должно состоять еще и в клонировании составных частей – заглушек. Этого разработчик RMI не осилит. Разработчики ограничились клонированием только серверной части, а если клиент хочет обратится к клону, то он должен осуществить связывание, то есть создать на клиентской части заместителя в адресном пространстве.

        1. Блокировка объектов

Локальный объект: делаем методы синхронизированными и осуществляется блокировка и синхронизация.

Удаленный объект: синхронизировать обращение к нему значит:

Если хотим обращаться к синхронизированным методам: разработчики RMI ограничились синхронизацией только серверной части. Это не всегда обеспечивает защиту от одновременного доступа.

        1. Вопрос удаленных объектов

В качестве параметров могут выступать простые и объектные типы. При передаче объектов есть нюансы: при передаче локального объекта передается копия (см. ранее рис), при передаче удаленного – ссылка на объект, значит она должна быть сериализуема, так как подвергается маршалингу. Ссылка должна содержать сетевой адрес удаленного объекта, конечную точку сервера, локальный идентификатор объекта и еще передается стек протоколов, т. е с помощью какого протокола осуществляется сетевое общение.

При обращении к удаленному объекту есть разделение: заглушка знает, где находится удаленный объект, а заместители тоже сериализуются, то есть могут быть переданы с компьютера на компьютер. В качестве ссылки на удаленный объект можно взять заглушку(заместителя - синонимы), потому что в ней есть вся информация и ее можно передать. В будущем будем это использовать.

4.Последний раздел языка Java: интерфейс jdbc при работе с бд

JDBC - Java Data Base Connectivity.

Этот интерфейс с 1996 г. позволяет с помощью SQL обращаться к БД разных производителей. Причем на Java программы от платформы не зависят. Этот интерфейс основан на модели ODBC Microsoft. Вот суть:

JDBC.

Рис. 4.18.

Есть сечение – с ним работает пользователь. Это JDBC API. И есть наборы драйверов. Основная вещь – менеджер драйверов, который переадресовывает запросы к конкретным драйверам и теперь можно нарисовать трехуровневую архитектуру.

Трехуровневая архитектура.

Рис. 4.19.

Есть клиентская часть (внутреннее представление), Есть промежуточный уровень – бизнес-логика, JDBC и сервер БД. В основе лежит SQL запрос у бизнес-логики.

Есть лаба.

4.1.Определение местонахождения распределенных объектов

Есть способы идентификации объектов на сервере:

  1. именование

  2. трейдинг

        1. Именование

Основное назначение службы именования – управление пространствами имен, представляющими собой наборы связей между именами и объектными ссылками.

Клиент отправляет в службу именования имя, а в ответ получает объектную ссылку, а дальше уже знает где объект и общается с ним.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]