类 PathResource

  • 所有已实现的接口:
    InputStreamSource, Resource, WritableResource

    public class PathResource
    extends AbstractResource
    implements WritableResource
    Copy from https://github.com/spring-projects/spring-framework.git, with less modifications Resource implementation for Path handles, performing all operations and transformations via the Path API. Supports resolution as a File and also as a URL. Implements the extended WritableResource interface.

    Note: As of 5.1, Path support is also available in FileSystemResource, applying Spring's standard String-based path transformations but performing all operations via the Files API. This PathResource is effectively a pure java.nio.path.Path based alternative with different createRelative behavior.

    从以下版本开始:
    4.0
    作者:
    Philippe Marschall, Juergen Hoeller
    另请参阅:
    Path, Files, FileSystemResource
    • 字段概要

      字段 
      修饰符和类型 字段 说明
      private java.nio.file.Path path  
    • 构造器概要

      构造器 
      构造器 说明
      PathResource​(java.lang.String path)
      Create a new PathResource from a Path handle.
      PathResource​(java.net.URI uri)
      Create a new PathResource from a Path handle.
      PathResource​(java.nio.file.Path path)
      Create a new PathResource from a Path handle.
    • 方法概要

      所有方法 实例方法 具体方法 
      修饰符和类型 方法 说明
      long contentLength()
      This implementation returns the underlying file's length.
      Resource createRelative​(java.lang.String relativePath)
      This implementation creates a PathResource, applying the given path relative to the path of the underlying file of this resource descriptor.
      boolean equals​(java.lang.Object other)
      This implementation compares the underlying Path references.
      boolean exists()
      This implementation returns whether the underlying file exists.
      java.lang.String getDescription()
      Return a description for this resource, to be used for error output when working with the resource.
      java.io.File getFile()
      This implementation returns the underlying File reference.
      java.lang.String getFilename()
      This implementation returns the name of the file.
      java.io.InputStream getInputStream()
      This implementation opens a InputStream for the underlying file.
      java.io.OutputStream getOutputStream()
      This implementation opens a OutputStream for the underlying file.
      java.lang.String getPath()
      Return the file path for this resource.
      java.net.URI getUri()
      This implementation returns a URI for the underlying file.
      java.net.URL getUrl()
      This implementation returns a URL for the underlying file.
      int hashCode()
      This implementation returns the hash code of the underlying Path reference.
      boolean isFile()
      This implementation always indicates a file.
      boolean isReadable()
      This implementation checks whether the underlying file is marked as readable (and corresponds to an actual file with content, not to a directory).
      boolean isWritable()
      This implementation checks whether the underlying file is marked as writable (and corresponds to an actual file with content, not to a directory).
      long lastModified()
      This implementation returns the underlying File's timestamp.
      java.nio.channels.ReadableByteChannel readableChannel()
      This implementation opens a Channel for the underlying file.
      java.nio.channels.WritableByteChannel writableChannel()
      This implementation opens a Channel for the underlying file.
      • 从类继承的方法 java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
      • 从接口继承的方法 com.alibaba.nacos.common.packagescan.resource.Resource

        isOpen
    • 字段详细资料

      • path

        private final java.nio.file.Path path
    • 构造器详细资料

      • PathResource

        public PathResource​(java.nio.file.Path path)
        Create a new PathResource from a Path handle.

        Note: Unlike FileSystemResource, when building relative resources via createRelative(java.lang.String), the relative path will be built underneath the given root: e.g. Paths.get("C:/dir1/"), relative path "dir2" → "C:/dir1/dir2"!

        参数:
        path - a Path handle
      • PathResource

        public PathResource​(java.lang.String path)
        Create a new PathResource from a Path handle.

        Note: Unlike FileSystemResource, when building relative resources via createRelative(java.lang.String), the relative path will be built underneath the given root: e.g. Paths.get("C:/dir1/"), relative path "dir2" → "C:/dir1/dir2"!

        参数:
        path - a path
        另请参阅:
        Paths.get(String, String...)
      • PathResource

        public PathResource​(java.net.URI uri)
        Create a new PathResource from a Path handle.

        Note: Unlike FileSystemResource, when building relative resources via createRelative(java.lang.String), the relative path will be built underneath the given root: e.g. Paths.get("C:/dir1/"), relative path "dir2" → "C:/dir1/dir2"!

        参数:
        uri - a path URI
        另请参阅:
        Paths.get(URI)
    • 方法详细资料

      • getPath

        public final java.lang.String getPath()
        Return the file path for this resource.
      • exists

        public boolean exists()
        This implementation returns whether the underlying file exists.
        指定者:
        exists 在接口中 Resource
        覆盖:
        exists 在类中 AbstractResource
        另请参阅:
        Files.exists(Path, LinkOption...)
      • isReadable

        public boolean isReadable()
        This implementation checks whether the underlying file is marked as readable (and corresponds to an actual file with content, not to a directory).
        指定者:
        isReadable 在接口中 Resource
        覆盖:
        isReadable 在类中 AbstractResource
        另请参阅:
        Files.isReadable(Path), Files.isDirectory(Path, LinkOption...)
      • getInputStream

        public java.io.InputStream getInputStream()
                                           throws java.io.IOException
        This implementation opens a InputStream for the underlying file.
        指定者:
        getInputStream 在接口中 InputStreamSource
        返回:
        the input stream for the underlying resource (must not be null)
        抛出:
        java.io.FileNotFoundException - if the underlying resource does not exist
        java.io.IOException - if the content stream could not be opened
        另请参阅:
        FileSystemProvider.newInputStream(Path, OpenOption...)
      • isWritable

        public boolean isWritable()
        This implementation checks whether the underlying file is marked as writable (and corresponds to an actual file with content, not to a directory).
        指定者:
        isWritable 在接口中 WritableResource
        另请参阅:
        Files.isWritable(Path), Files.isDirectory(Path, LinkOption...)
      • getOutputStream

        public java.io.OutputStream getOutputStream()
                                             throws java.io.IOException
        This implementation opens a OutputStream for the underlying file.
        指定者:
        getOutputStream 在接口中 WritableResource
        抛出:
        java.io.IOException - if the stream could not be opened
        另请参阅:
        FileSystemProvider.newOutputStream(Path, OpenOption...)
      • getUrl

        public java.net.URL getUrl()
                            throws java.io.IOException
        This implementation returns a URL for the underlying file.
        指定者:
        getUrl 在接口中 Resource
        覆盖:
        getUrl 在类中 AbstractResource
        抛出:
        java.io.IOException - if the resource cannot be resolved as URL, i.e. if the resource is not available as descriptor
        另请参阅:
        Path.toUri(), URI.toURL()
      • getUri

        public java.net.URI getUri()
                            throws java.io.IOException
        This implementation returns a URI for the underlying file.
        指定者:
        getUri 在接口中 Resource
        覆盖:
        getUri 在类中 AbstractResource
        抛出:
        java.io.IOException - if the resource cannot be resolved as URI, i.e. if the resource is not available as descriptor
        另请参阅:
        Path.toUri()
      • getFile

        public java.io.File getFile()
                             throws java.io.IOException
        This implementation returns the underlying File reference.
        指定者:
        getFile 在接口中 Resource
        覆盖:
        getFile 在类中 AbstractResource
        抛出:
        java.io.FileNotFoundException - if the resource cannot be resolved as absolute file path, i.e. if the resource is not available in a file system
        java.io.IOException - in case of general resolution/reading failures
        另请参阅:
        InputStreamSource.getInputStream()
      • readableChannel

        public java.nio.channels.ReadableByteChannel readableChannel()
                                                              throws java.io.IOException
        This implementation opens a Channel for the underlying file.
        指定者:
        readableChannel 在接口中 Resource
        覆盖:
        readableChannel 在类中 AbstractResource
        返回:
        the byte channel for the underlying resource (must not be null)
        抛出:
        java.io.FileNotFoundException - if the underlying resource doesn't exist
        java.io.IOException - if the content channel could not be opened
        另请参阅:
        Files.newByteChannel(Path, OpenOption...)
      • writableChannel

        public java.nio.channels.WritableByteChannel writableChannel()
                                                              throws java.io.IOException
        This implementation opens a Channel for the underlying file.
        指定者:
        writableChannel 在接口中 WritableResource
        返回:
        the byte channel for the underlying resource (must not be null)
        抛出:
        java.io.FileNotFoundException - if the underlying resource doesn't exist
        java.io.IOException - if the content channel could not be opened
        另请参阅:
        Files.newByteChannel(Path, OpenOption...)
      • lastModified

        public long lastModified()
                          throws java.io.IOException
        This implementation returns the underlying File's timestamp.
        指定者:
        lastModified 在接口中 Resource
        覆盖:
        lastModified 在类中 AbstractResource
        抛出:
        java.io.IOException - if the resource cannot be resolved (in the file system or as some other known physical resource type)
        另请参阅:
        Files.getLastModifiedTime(Path, LinkOption...)
      • createRelative

        public Resource createRelative​(java.lang.String relativePath)
        This implementation creates a PathResource, applying the given path relative to the path of the underlying file of this resource descriptor.
        指定者:
        createRelative 在接口中 Resource
        覆盖:
        createRelative 在类中 AbstractResource
        参数:
        relativePath - the relative path (relative to this resource)
        返回:
        the resource handle for the relative resource
        另请参阅:
        Path.resolve(String)
      • getFilename

        public java.lang.String getFilename()
        This implementation returns the name of the file.
        指定者:
        getFilename 在接口中 Resource
        覆盖:
        getFilename 在类中 AbstractResource
        另请参阅:
        Path.getFileName()
      • getDescription

        public java.lang.String getDescription()
        从接口复制的说明: Resource
        Return a description for this resource, to be used for error output when working with the resource.

        Implementations are also encouraged to return this value from their toString method.

        指定者:
        getDescription 在接口中 Resource
        另请参阅:
        Object.toString()