co to jest java: comp / env?
Co oznacza java:comp/env
?
Jak wygląda wygląd:
Context envContext = (Context)initContext.lookup("java:comp/env");
Czy ?
Rozumiem, że spojrzenie w stylu:
(DataSource)envContext.lookup("jdbc/MyDatasource")
Wyszukuje nazwę MyDatasource
w context.xml
lub web.xml
, aby uzyskać adres URL bazy danych. Naprawdę ? !! ale co robi ten pierwszy ?
2 answers
java:comp/env
jest węzłem w drzewie JNDI, gdzie można znaleźć właściwości dla bieżącego komponentu Java EE (webapp lub EJB).
Context envContext = (Context)initContext.lookup("java:comp/env");
Umożliwia zdefiniowanie zmiennej wskazującej bezpośrednio na ten węzeł. Pozwala na wykonywanie
SomeBean s = (SomeBean) envContext.lookup("ejb/someBean");
DataSource ds = (DataSource) envContext.lookup("jdbc/dataSource");
Zamiast
SomeBean s = (SomeBean) initContext.lookup("java:comp/env/ejb/someBean");
DataSource ds = (DataSource) initContext.lookup("java:comp/env/jdbc/dataSource");
Ścieżki względne zamiast ścieżek bezwzględnych. Do tego jest używany.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-05-15 22:08:16
Jest to Globalna tablica hashtable w pamięci, w której możesz przechowywać zmienne globalne według nazwy.
Schemat URL" java: "powoduje, że JNDI szuka klasy javaURLContextFactory
, która jest zwykle dostarczana przez kontener aplikacji, np. Oto implementacja Tomcat javadoc
Zobacz także NamingManager.getURLContext
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-24 11:49:01