gpt4 book ai didi

java - 了解 InitialContext 在 java 中的实际用途?

转载 作者:搜寻专家 更新时间:2023-11-01 03:27:31 26 4
gpt4 key购买 nike

我在遗留项目中工作最多,在这些项目中我发现了这一行 ctx.lookup("datasource"); 很多次。根据我在 Initial context 中遇到的用法,它用于获取与 webserver/appserver 中的某个名称绑定(bind)的 java 对象。

  • 例如,我们通过 weblogic 的管理控制台创建数据源,然后我们可以通过 ctx.lookup("datasource") 在 java 程序中以编程方式使用该对象。如果我没记错的话,我在 EJB 实现期间也看到过这种代码,其中某个对象与服务器本身的某个名称绑定(bind)。

Java 文档说当构造初始上下文时,它的环境会使用传递给构造函数的环境参数中定义的属性进行初始化。所以可能是我之前提到的用法,初始上下文是用环境参数构造的(这可能意味着管理员在服务器中创建的对象,如数据源、连接池(如果有))。这是我唯一可以关联初始上下文的用途。

请告诉我初始上下文类的用法是否正确?

基本上有了初始上下文,我们就可以绑定(bind)/查找具有相同名称的 java 对象。在 webserver/appserver 的情况下,数据源、连接池等对象可能在启动时被服务器绑定(bind),我们可以直接查找它们吗?

最佳答案

这看起来像是对上下文类的正确使用。在较新的 EJB 实现中,您还可以使用 @EJB@PersistenceContext 注释。如需更深入的了解,请阅读有关 Dependency Injection 的维基百科文章.

关于java - 了解 InitialContext 在 java 中的实际用途?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9654522/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com