1

我正在创建一个使用 Spring bean 的应用程序,我需要ApplicationContextxml. 由于它不是服务器应用程序,它没有文件夹。WEB-INF那么,我应该把xml文件放在哪里?

4

3 回答 3

3

这个主题的 spring 文档起初有点压倒性。应用程序上下文配置的 spring 文档中的一个方便的起点是here

文件系统 xml 应用程序上下文可能是最容易开始的。所以:

ApplicationContext appCtx = 
    new FileSystemXmlApplicationContext("/path/to/springconfig.xml");

如果ClassPathApplicationContext您的应用程序类路径中有 xml 配置,请使用。在此示例中,它可能是项目目录 src/config/springconfig.xml 下的 springconfig.xml。

ApplicationContext appCtx = 
    new ClassPathXmlApplicationContext("config/springconfig.xml");

如果在构建应用程序后不确定 springconfig.xml 的最终位置,可以使用以下命令列出 jar 的内容:

jar -tvf myapp.jar

对于默认的 eclipse java 项目,project-home/bin目录是类路径的开始。

在这里提出了一个相关的问题

于 2012-05-13T13:50:12.550 回答
3

使用ClassPathXmlApplicationContext

ApplicationContext ctx = 
  new ClassPathXmlApplicationContext("applicationContext.xml");

或者考虑迁移到@Configuration

ApplicationContext ctx = 
  new AnnotationConfigApplicationContext(AppConfig.class);

whereAppConfig被注释@Configuration并且不需要 XML。

于 2012-05-13T13:50:32.520 回答
1

检查此示例Spring Setter Injection

如果 XML 在应用程序类路径中,则像这样使用

    ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");

否则,如果 XML 在文件系统中,则使用

     ApplicationContext context = new FileSystemXmlApplicationContext("beans.xml");
于 2012-05-13T13:47:12.033 回答