什么是java:comp / env?

什么意思java:comp/env

看起来像什么:

Context envContext = (Context)initContext.lookup("java:comp/env");

怎么办?

我了解查询如下:

(DataSource)envContext.lookup("jdbc/MyDatasource")

MyDatasourcecontext.xml或中查找名称,web.xml以获取数据库的URL。 _是这样吗 ?!! _但是,前者看起来如何?

回答:

java:comp/env 是JNDI树中的节点,您可以在其中找到当前Java EE组件(Web应用程序或EJB)的属性。

Context envContext = (Context)initContext.lookup("java:comp/env");

允许定义直接指向此节点的变量。它允许做

SomeBean s = (SomeBean) envContext.lookup("ejb/someBean");

DataSource ds = (DataSource) envContext.lookup("jdbc/dataSource");

而不是

SomeBean s = (SomeBean) initContext.lookup("java:comp/env/ejb/someBean");

DataSource ds = (DataSource) initContext.lookup("java:comp/env/jdbc/dataSource");

相对路径而不是绝对路径。这就是它的用途。

以上是 什么是java:comp / env? 的全部内容, 来源链接: utcz.com/qa/408453.html

回到顶部