例如
BeanFactory bf = new XmlBeanFactoy(new ClassPathResource("beanFactoryTest.xml"))
java把不同的资源抽象成url,通过注册不同的handler来处理不同来源的资源的读取逻辑,
但是没有特别classpath servletConcontext等 特殊的handler处理,因此spring有自己一套的抽象结构,Resource接口来封装底层资源。
它抽象了spring使用的底层资源File URL classpath等,首先,定义了三个判断当前资源状态的方法,存在性,可读性,是否处于打开状态
public XmlBeanFactory(Resource resource, BeanFactory parentBeanFactory) throws BeansException { super(parentBeanFactory); this.reader.loadBeanDefinitions(resource); }