Что такое JNDI? Каково его основное использование? Когда он используется?
Что такое JNDI? Каково его основное использование..? Когда он используется?
Ответ 1
Что такое JNDI?
Это означает Java Naming and Directory Interface.
Каково его основное использование?
JNDI позволяет распределенным приложениям искать сервисы абстрактным, ресурсо-независимым способом.
Когда он используется?
Наиболее распространенным вариантом использования является создание пула соединений с базой данных на сервере приложений Java EE. Любое приложение, развернутое на этом сервере, может получить доступ к необходимым им соединениям с помощью имени JNDI java:comp/env/FooBarPool
, не зная подробностей о соединении.
Это имеет ряд преимуществ:
- Если у вас есть последовательность развертывания, когда приложения перемещаются из сред
devl->int->test->prod
, вы можете использовать одно и то же имя JNDI в каждой среде и скрыть используемую фактическую базу данных. Приложения не должны меняться при миграции между средами. - Вы можете свести к минимуму количество людей, которым необходимо знать учетные данные для доступа к производственной базе данных. Только сервер приложений Java EE должен знать, используете ли вы JNDI.
Ответ 2
Что такое JNDI?
Интерфейс именования и интерфейса Java TM (JNDI) - это интерфейс прикладного программирования (API), который обеспечивает функции именования и каталогов для приложений, написанных с использованием языка программирования Java TM Он определяется как независимый от какой-либо конкретной реализации службы каталогов. Таким образом, широкий выбор каталогов (новых, новых и уже развернутых) можно получить обычным способом.
Каково его основное использование?
Большинство из них описано в приведенном выше ответе, но я хотел бы предоставить архитектуру здесь, чтобы выше было больше смысла.
Чтобы использовать JNDI, вы должны иметь классы JNDI и один или несколько поставщиков услуг. Java 2 SDK, v1.3 включает в себя три поставщика услуг для следующих служб имен/каталогов:
- Легкий протокол доступа к каталогам (LDAP)
- Служба имен общих имен объектов (CORBA) Common Object Services (COS)
- Реестр Java Remote Method Invocation (RMI)
Таким образом, вы в основном создаете объекты и регистрируете их в службах каталогов, которые впоследствии можно выполнить и выполнить.
Ответ 3
JNDI в терминах непрофессионала - это в основном интерфейс для возможности получения экземпляров внутренних/внешних ресурсов, таких как
javax.sql.DataSource,
javax.jms.Connection-Factory,
javax.jms.QueueConnectionFactory,
javax.jms.TopicConnectionFactory,
javax.mail.Session, java.net.URL,
javax.resource.cci.ConnectionFactory,
или любой другой тип, определенный адаптером ресурсов JCA. Он обеспечивает синтаксис в возможности создавать доступ независимо от того, являются ли они внутренними или внешними. i.e(comp/env в этом случае означает, что компонент/среда, есть много другого синтаксиса):
jndiContext.lookup("java:comp/env/persistence/customerDB");
Ответ 4
Обзор JNDI
JNDI - это API, указанный в Java технологии, которая обеспечивает именование и функции каталога для приложения, написанные на Java язык программирования. Он разработан особенно для платформы Java, используя Объектная модель Java. Используя JNDI, приложения на основе технологии Java может хранить и извлекать именованные Java объектов любого типа. Кроме того, JNDI предоставляет методы для выполнения стандартные операции с каталогом, такие как связывание атрибутов с объектами и поиск объектов, используя их атрибуты.
JNDI также определяется независимо от любое конкретное имя или каталог услуг. Это позволяет приложения для доступа к другим, возможно, несколько, именования и службы каталогов с использованием общего API. Различные службы именования и каталогов провайдеры могут быть легко подключены за этим общим API. Это позволяет Приложения на основе Java-технологии для использовать информацию в разнообразие существующих имен и службы каталогов, такие как LDAP, NDS, DNS и NIS (YP), а также приложения, чтобы сосуществовать с устаревшее программное обеспечение и системы.
Используя JNDI в качестве инструмента, вы можете построить новые мощные и портативные приложения что не только используют преимущества Java объектной модели, но также хорошо интегрированный с окружающей средой в котором они развернуты.
Ответ 5
Что такое JNDI?
JNDI означает Java Naming and Directory Interface. Он поставляется с J2EE.
Каково его основное использование?
С помощью этого API вы можете получить доступ ко многим типам данных, например, к объектам, устройствам, файлам имен и служб каталогов, например. он используется EJB для поиска удаленных объектов. JNDI разработан для обеспечения общего интерфейса для доступа к существующим службам, таким как DNS, NDS, LDAP, CORBA и RMI.
Когда он используется?
Вы можете использовать JNDI для выполнения операций именования, включая операции чтения и операции для обновления пространства имен. Ниже описаны операции .
Ответ 6
Служба именования связывает имена с объектами и находит объекты на основе их имен. (Реестр RMI - хороший пример службы именования.) JNDI предоставляет общий интерфейс для многих существующих служб именования, таких как LDAP, DNS.
Без JNDI информация о местоположении или доступе к удаленным ресурсам должна быть жестко закодирована в приложениях или доступна в конфигурации. Поддержание этой информации довольно утомительно и подвержено ошибкам.
Ответ 7
Мне просто любопытно, почему официальные документы так игнорируются, что детально прорабатывают детали.
Но если вы хотите понять случаи, пожалуйста, обратитесь к ответу duffymo.
Java Naming and Directory InterfaceTM (JNDI) - это интерфейс прикладного программирования (API), который обеспечивает функциональность имен и каталогов для приложений, написанных с использованием языка программирования Java TM. Он определяется как независимый от какой-либо конкретной реализации службы каталогов. Таким образом, различные каталоги - новые, новые и уже развернутые - могут быть доступны обычным способом.
И его архитектура
И обычно, как вы используете это.