gpt4 book ai didi

java - Spring IoC 和 Java EE

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:30:13 24 4
gpt4 key购买 nike

在 Spring 中,通过 ApplicationContext 类,我可以利用 IoC 功能并获得对 bean 的引用,如下所示

public class Driver {

public static void main(String args[])
{
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("/spring-config.xml");

MyClass myClass = (MyClass)applicationContext.getBean("myClass");

}

我希望能够对 Java EE 执行相同的操作,但我似乎无法在应用程序服务器之外执行此操作。

我正在尝试以下操作

public class Driver {

public static void main(String args[])
{

InitialContext ic;

try {

ic = new InitialContext();
// JNDI lookup
MyClass myClass = (MyClass)ic.lookup("java:module/MyClass");
} catch (NamingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}


}

到目前为止,通过这种方法我得到了 javax.naming.NoInitialContextException。我的问题是如何使用 Java EE 在独立应用程序中加载 IoC 功能?

编辑感谢大家的帮助...我使用了 OpenWebBeans CDI 实现...感谢您的帮助。

最佳答案

目前您正在使用 JNDI ,不是 IoC。

如果您希望 JNDI 在独立应用程序中工作以查找“jndi 客户端”的远程数据谷歌。

如果您想在 Java EE 应用程序中使用 IoC - 检查 CDI

关于java - Spring IoC 和 Java EE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15245825/

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