类路径,文件系统之间有什么区别?


问题内容

我知道:

  1. ApplicationContext context = new ClassPathXmlApplicationContext("bean.xml");

从位于类路径中的XML文件加载上下文定义,将上下文定义视为类路径资源。

  1. ApplicationContext context = new FileSystemXmlApplicationContext("bean.xml");

从文件系统中的XML文件加载上下文定义。

  1. XmlWebApplicationContext

从Web应用程序中包含的XML文件中加载上下文定义。

但是,这到底是什么意思?

谢谢 :)


问题答案:
  • ClassPathXmlApplicationContext将从您的类路径读取文件。他们必须在classes你的web应用程序的文件夹或在jar您的lib文件夹中。

  • FileSystemXmlApplicationContext可以访问您的所有文件系统,例如c:/config/applicationContext.xml

  • XmlWebApplicationContext当然可以访问您的Web应用程序中包含的文件,但这不是最重要的事情。它实现了WebApplicationContext,这意味着它将检测ServletContextAware Bean,注册自定义范围(请求,会话等)。