对于非webapp,是否有相当于spring Context Loader

时间:2009-05-20 18:49:14

标签: java spring

我想要一个类似于spring的ContextLoader / ContextLoaderListener / ContextLoadServlet的类。当应用程序服务器初始化并将配置的上下文放入内存时,将调用这些类。

对于没有容器包装的应用程序,这有什么比喻呢?

这将排除多个实例化,提供统一的检索位置,并且不会遭受双重检查锁定跛行。

2 个答案:

答案 0 :(得分:2)

经典的是ClassPathXmlApplicationContext:

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.scripting.Messenger;

public final class Boot {

    public static void main(final String[] args) throws Exception {
        ApplicationContext ctx = new ClassPathXmlApplicationContext("scripting/beans.xml");
        Messenger messenger = (Messenger) ctx.getBean("messenger");
        System.out.println(messenger);
    }
}

查看更多here

答案 1 :(得分:2)

可在此处找到替代解决方案:

Simple Spring, use of ClasspathApplicationContext for standalone apps, how to reuse?

使用SingletonBeanFactoryLocator。