Spring两个容器ApplicationContext和BeanFactory的区别
ApplicationContext容器是Spring框架中Bean容器的一种,它是基于BeanFactory构建的。BeanFactory是最简单且基础的的容器,提供简单DI支持;而ApplicationContext提供应用框架级别的服务,例如:从属性文件解析文本信息以及发布应用事件给感兴趣的事件监听者。
FileSystemXmlApplicationContext和ClassPathXmlApp-licationContext
Spring自带了多种类型的ApplicationContext。下面罗列的几个是你最有可能遇到的:
1.AnnotationConfigApplicationContext:从一个或多个 基于Java的配置类中加载Spring应用上下文
2.AnnotationConfigWebApplicationContext:从一个或 多个基于Java的配置类中加载Spring Web应用上下文。
3.ClassPathXmlApplicationContext:从类路径下的一个或 多个XML配置文件中加载上下文定义,把应用上下文的定义文件 作为类资源。
4.FileSystemXmlapplicationcontext:从文件系统下的一 个或多个XML配置文件中加载上下文定义。
5.XmlWebApplicationContex:从Web应用下的一个或多个 XML配置文件中加载上下文定义。
使用FileSystemXmlApplicationContext和使用ClassPathXmlApp-licationContext的区别在于:FileSystemXmlApplicationContext在指定的文件系统路 径下查找文件;而ClassPathXmlApplicationContext 是在所有的类路径(包含JAR文件)下查找文件。