![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| WatchCat |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 14.10.2006 Репутация: нет Всего: нет |
Вот есть в web.xml такой тэг как resource-ref.
Например
вот хочю понять, зачем он применяется для описания jdbc ресурса? Есть же <datasources> и к такому ресурсу можно нормально обратиться через
и для этого совсем необязательно описывать в web.xml resource-ref. |
||||
|
|||||
| tux |
|
|||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 74 Всего: 132 |
В resource-ref описывается, так сказать, логическое имя источника JDBC (у тебя jdbc/UserDatabase), которое указывает на физическое имя (java:/jdbc/UserDatabase). Если использовать в приложение логическое имя-ссылку, то можно как угодно менять источник данных, при этом с самом приложении не изменится ничего. Других причин использования resource-ref нет.
|
|||
|
||||
| WatchCat |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 14.10.2006 Репутация: нет Всего: нет |
Довольно таки путано, тк <datasources> тоже описывает JNDI ссылку на ресурс, которая сама по себе логическая. Но немного покапавшись я понял <resource-ref> позволяет описать JDBC ресурс в дескрипторе приложения, тогда как <datasources> это у контейнера. Вроде так, если я чегото не напутал. Это сообщение отредактировал(а) WatchCat - 10.12.2006, 15:30 |
|||
|
||||
| tux |
|
|||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 74 Всего: 132 |
Тоже запутано. Логические и физические имена - это моя собственная терминология, звиняюсь, что запутал. |
|||
|
||||
| WatchCat |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 14.10.2006 Репутация: нет Всего: нет |
Вот в том и дело, что есть JNDI имя JDBC ресурса, так на него и ещё одна ссылка.
Вот только нафига делать |
|||
|
||||
| tux |
|
|||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 74 Всего: 132 |
Ну вот обращаешься ты к источнику данных из приложения. Естественно, тебе нужно внутри приложения хранить имя этого ресурса. Потом приложение начали разворачивать на сервере у заказчика. Там имя источника совсем другое. Тогда надо соответствующим образом менять это имя в приложении везде, где оно используется. А в реально большом приложении оно может упоминаться кучу раз. И не всегда потому что приложение плохо спроектировано. Понятно, что сделать это не так сложно, но все же удобнее использовать такие ссылки и поменять имя в одном месте. Вопрос философский, конечно. Использовать ссылки или не использовать - дело индивидуальное. |
|||
|
||||
| WatchCat |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 14.10.2006 Репутация: нет Всего: нет |
Совсем необязательно. Можно создать новый датасурс с необходимым JNDI именем, для JBoss'а достаточно в деплое создать файлик с описанием необходимого DS'а, контейнер-то может предоставлять множество датасурсов. Глано имя при разработке выбрать не DefaultDS просто я предпочитаю цепочку в 3 звена: СУБД <> datasource <> application а этот ресурс-реф добавляет ещё одно звено и всё. СУБД <> datasource <> resource-ref <> application Ну вобщем дело вкуса. Единственное применение для себя вижу если захочеться несколько приложений от разных провайдеров замапить на 1 датасурс. |
|||
|
||||
| tux |
|
|||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 74 Всего: 132 |
||||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |