spring Resource资源体系
在使用spring进行实际开发中会需要读取很多配置文件,spring有自己的读取文件的体系,这些配置文件都是通过Resource接口在加载的
org.springframework.core.io.Resource Resource接口是对资源的抽象,它的每一个实现类代表对每一种资源的访问策略。
在idea工具中打开文件 选中类名按ctrl+alt+B 查看类的的继承和实现。
在类文件中按ctrl+alt+shift+U可以生成如下UML类图
public interface Resource extends InputStreamSource {
/**
* 确定该资源是否以物理形式存在
*/
boolean exists();
/**
* 资源是否是可读的
*/
default boolean isReadable() {
return exists();
}
/**
* 资源是否是打开的
*/
default boolean isOpen() {
return false;
}
/**
* 是否是文件
*/
default boolean isFile() {
return false;
}
/**
* 返回资源的URL
*/
URL getURL()throws IOException;
/**
* 返回资源的URI
*/
URI getURI()throws IOException;
/**
* 返回资源的File
*/
File getFile()throws IOException;
/**
* 返回ReadableByteChannel
*/
default ReadableByteChannel readableChannel()throws IOException {
return Channels.newChannel(getInputStream());
}
/**
* 资源长度
*/
long contentLength()throws IOException;
/**
* 最后修改时间
*/
long lastModified()throws IOException;
/**
* 根据相对路径生产资源
*/
Resource createRelative(String relativePath)throws IOException;
/**
* 获取文件名
*/
@Nullable
String getFilename();
/**
* 描述
*/
String getDescription();
}