Spring之ResourceLoader
Posted cgl_dong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring之ResourceLoader相关的知识,希望对你有一定的参考价值。
Spring之ResourceLoader
Spring中的ResourceLoader用于加载资源。可以从文件中、网络中、流中加载资源。
资源加载器是个接口,默认从类路径下加载。通过getResource方法从字符串中查找路径。可以从容器中获取ResourceLoader,调用getResource方法。
public interface ResourceLoader {
String CLASSPATH_URL_PREFIX = "classpath:";
Resource getResource(String var1);
@Nullable
ClassLoader getClassLoader();
}
applicationContext为容器:获取类路径下的资源
Resource resource = applicationContext.getResource("demo.txt");
String filename = resource.getFilename();
System.out.println(filename);
InputStream inputStream = resource.getInputStream();
byte[] b=new byte[1024];
int read = inputStream.read(b);
System.out.println(new String(b,0,read));
Resource resource1 = applicationContext.getResource("ApplicationContext.xml");
String filename1 = resource1.getFilename();
System.out.println(filename1);
String description = resource1.getDescription();
System.out.println(description);
applicationContext为容器:获取网络资源
Resource resource2 = applicationContext.getResource("http://jsonplaceholder.typicode.com/posts");
InputStream inputStream1 = resource2.getInputStream();
byte[] b2=new byte[10240];
BufferedInputStream stream = new BufferedInputStream(inputStream1);
int i = stream.read(b2);
System.out.println(new String(b2,0,i));
stream.close();
以上是关于Spring之ResourceLoader的主要内容,如果未能解决你的问题,请参考以下文章
Spring5源码分析(005)——IoC篇之统一资源加载Resource和ResourceLoader
Spring5源码分析(005)——IoC篇之统一资源加载Resource和ResourceLoader
SPRING04_核心组件接口分析Resource具体实现类ResourceLoader资源读取器及策略模式