2015-10-07 4 views
3

Что такое стандартное соглашение об именах JNDI Name для источника данных?Что такое стандартное соглашение об именах имени JNDI для источника данных?

Предположим, у меня есть источник данных с именем MyAppDS. Каково стандартное соглашение об именах JNDI Name для MyAppDS?

Благодаря

+0

Я не знаю ни одного стандартного соглашения об именах, общим соглашением об именах является «jdbc/MyAppDS». Это то, что вы всегда настраиваете вручную, поэтому вы можете выбрать то, что хотите. https://docs.oracle.com/javaee/7/tutorial/resource-creation002.htm#BNCJJ – Gimby

+0

См. [этот взаимосвязанный ответ для аналогичного вопроса] (http://stackoverflow.com/a/34496196/441652) , – uvsmtid

ответ

5

JNDI/Naming Policies:

Пространство имен предприятия укорененные в контексте URL для Java URL схемы. Например, вы можете использовать такое имя, как «java: comp/env/ejb/Payroll» для Payroll ejb. В корневом контексте пространство имен является связыванием с именем «comp», которое привязано к поддереву , зарезервированному для привязок к компонентам. Название «comp» равно для компонента. В контексте «comp» существует привязка для «env». Имя «env» привязано к поддереву, зарезервированному для связанных с окружающей средой компонентов , как определено его дескриптором развертывания . «env» не подходит для окружающей среды. J2EE рекомендует (но не требует) следующую структуру для пространства имен «env».

Ссылка на ресурсы завода размещается в поддеревьях, дифференцированных по , их тип менеджера ресурсов. Вот некоторые примеры:

"jdbc" for JDBCTM DataSource references 
"jms" for JMS connection factories 
"mail" for JavaMail connection factories 
"url" for URL connection factories 

Например, база данных JDBC Заработная плата может иметь имя "Java: комп/ENV/JDBC/Зарплатный".

0

Ресурс - это программный объект, который обеспечивает подключение к системам, таким как базы данных серверы и системы обмена сообщениями. (Ресурс связи базы данных Java иногда бывает , называемый источником данных.) Каждый ресурсный объект идентифицируется уникальным, удобным для пользователей именем, называемым JNDI-именем. Например, имя JNDI для предварительно сконфигурированного ресурса JDBC для базы данных Java DB, поставляемого с сервером GlassFish , представляет собой java: comp/DefaultDataSource. (Официальное руководство Java EE: часть III, глава 3.1)

Три пространства имен JNDI используются для переносных JNDI-запросов: java: global, java: module и java: app. (Официальное руководство по Java EE: часть VII, глава 32.4.1.1)

Пример: способ, которым Netbeans будет вызывать ваше соединение с DB в файле конфигурации ressource: jndi-name = "jdbc/UrDataSourceName", а полное имя jndi, вероятно, будет be "java: jdbc/UrDataSourceName"