BeanFactory与applicationContext
ApplicationContext获取IOC容器的三种方式:
1、【推荐使用】ClassPathXmlApplicationContext从类路径(class字节码所在的路径)下加载xml文件
2、FileSystemXmlApplicationContext从文件系统路径下加载xml文件
3、XmlWebApplicationContext 在web环境中加载xml文件
注意:ApplicationContext方式解析与加载文件时,会完成applicationContext.xml文档校验,
同时所有管理的<Bean>都会被实例化,且所有依赖关系都会被注入
(applicationContext.xml文档校验:检测你的xml文档有没有出错,所以需要new到所有的<Bean>,也因此占内存)
BeanFactory获取IOC容器的两种方式:
1、[推荐使用]ClassPathResource从类路径(class字节码所在的路径)下加载xml文件
2、FileSystemResource从文件系统路径下加载xml文件
注意:BeanFactory方式解析与加载文件时,不会完成applicationContext.xml文档校验,
只有需要用的<Bean>才会被实例化(懒加载),否则一直不会被实例化
大多数情况下推荐使用ApplicationContext,因为它会完成applicationContext.xml的校验,
虽然比起BeanFactory要占点内存都是对于现在的性能来讲问题不会太大,如果需要做到没一点内存都斤斤计较,那么就选BeanFactory
下一篇:容器与Bean的声生命周期