(十)spring资源访问Resource接口

        如果想要进行磁盘文件的读取操作,首先想到的一定是java.io包中提供的一系列类,还可以继续深入的想到ImputStream,OutputStream,Scanner,PrintStream,BufferedReader等核心的处理操作类.但是现在有如下几个问题,

    这几个类的互相操作难度太高,很多人实际上对于IO的领悟并不是很彻底,

    IO支持的读取有限且复杂:

            |-读取jar包里面的文件呢?

            |-读取不同资源文件的时候操作不统一,例如:读取文件,读取网络;

        所以在整个Spring设计过程之中充分的考虑到了IO操作的种种操作问题,那么提供了一套新的资源访问处理的操作支持,而整个操作的关键就在于:org.springframework.core.io  Resource,而这个接口就表示所有的可用资源读取,在此接口里面定义有如下常用方法

 

   NO 方法名称 类型 描述
1 public long contentLength() throws IOException 普通 取得资源的数据长度
2 public boolean exists() 普通 判断资源是否存在
3 public File getFile() throws IOException 普通 取得资源对应的文件信息
4 public URI getURI() throws IOException 普通 取得资源的完整网络路径
5 public boolean isOpen() 普通 判断资源是否打开
6 public long lastModified() throws IOException 普通 最后一次修改日期
7 public Resource createRelative(String relativePath) throws IOException 普通 创建一个操作的资源
       

Resource本身之属于一个子接口,它有一个对应的父接口org.springframework.core.io.InputStreamResource,在这个接口里面也定义的有资源操作的方法

NO 方法名称 类型 描述
1 public InputStream getInputStream() throws IOException,IllegalStateException 普通 取得资源的输入流
2      
3      
4      

 

Resource本身就是一个接口,那么如果想要使用这个操作接口,需要找到它的子类:ByteArrayResource(内存读取),ClassPathResource(CLASSPATH读取),FileSystemResource(文件读取),

你可能感兴趣的:(Spring)