Spring源码解析之-资源加载(1)

关于资源加载。Spring抽像了两个接口。分别是

Resource 和ResourceLoader,作用分别是

Resource:所有资源的抽像和访问接口

ResourceLoader:是用于定位和查找Resource的资源。配合Resource来使用

通过Resource 接口来扩展不同类型的资源查询类,比如Spring实例的

ByteArrayResource
ClassPathResource
FileSystemResource 

等常用资源,想获得指定的Resource,只需要用指定的工厂创建即可

例:

BeanFactory beanFactory = new XmlBeanFactory(new ClassPathResource("..."));
ClassPathResource是指导位于Classpath里面的资源

ResourceLoader有一个默认的实现DefaultResourceLoader。你可以理解为他是一个加载资源的模板方法。他抽像了

加载资源的一些前置动作,然后不同的资源加载类继承了DefaultResourceLoader来做为资源加载的具体,如常用的

FileSystemResource

FileSystemXmlAppliactionContext

都重写了DefaultResourceLoader类的getResourceByPath方法。


见类结构图

Spring源码解析之-资源加载(1)_第1张图片


你可能感兴趣的:(Spring源码解析之-资源加载(1))