Подтвердить что ты не робот

Разница между классами java.rmi.registry.Registry и java.rmi.Naming

В чем разница между классом Registry и Naming.

В моем приложении я использую класс Registry. Но я хочу знать о классе Naming и его использовании?

4b9b3361

Ответ 1

Разница в том, что Naming - это класс утилиты со статическими методами, а Registry - удаленный интерфейс. Неудивительно, что Naming вызывает Registry внутренне. Обратите внимание, что аргументы name, которые вы передаете в java.rmi.Naming, находятся в формате URL и включают расположение реестра, тогда как java.rmi.registry.Registry name - это просто имя.

Например, вы вызываете что-то вроде этого:

Naming.rebind("//host/objName", myObj);

тогда как с Registry вам нужен существующий дескриптор объекта реестра, и вы вызываете:

Registry registry = LocateRegistry.getRegistry("host");
registry.rebind("objName", myObj);

Итак, Naming - это просто класс удобства, который позволяет вам вручную искать Registry - он выполняет поиск и восстановление реестра за один шаг.