类 UrlResource

  • 所有已实现的接口:
    InputStreamSource, Resource
    直接已知子类:
    FileUrlResource

    public class UrlResource
    extends AbstractFileResolvingResource
    Copy from https://github.com/spring-projects/spring-framework.git, with less modifications Resource implementation for java.net.URL locators. Supports resolution as a URL and also as a File in case of the "file:" protocol.
    从以下版本开始:
    28.12.2003
    作者:
    Juergen Hoeller
    另请参阅:
    URL
    • 字段概要

      字段 
      修饰符和类型 字段 说明
      private java.net.URL cleanedUrl
      Cleaned URL (with normalized path), used for comparisons.
      private java.net.URI uri
      Original URI, if available; used for URI and File access.
      private java.net.URL url
      Original URL, used for actual access.
    • 构造器概要

      构造器 
      构造器 说明
      UrlResource​(java.lang.String path)
      Create a new UrlResource based on a URL path.
      UrlResource​(java.lang.String protocol, java.lang.String location)
      Create a new UrlResource based on a URI specification.
      UrlResource​(java.lang.String protocol, java.lang.String location, java.lang.String fragment)
      Create a new UrlResource based on a URI specification.
      UrlResource​(java.net.URI uri)
      Create a new UrlResource based on the given URI object.
      UrlResource​(java.net.URL url)
      Create a new UrlResource based on the given URL object.
    • 方法概要

      所有方法 静态方法 实例方法 具体方法 
      修饰符和类型 方法 说明
      Resource createRelative​(java.lang.String relativePath)
      This implementation creates a UrlResource, delegating to createRelativeUrl(String) for adapting the relative path.
      protected java.net.URL createRelativeUrl​(java.lang.String relativePath)
      This delegate creates a java.net.URL, applying the given path relative to the path of the underlying URL of this resource descriptor.
      boolean equals​(java.lang.Object other)
      This implementation compares the underlying URL references.
      private java.net.URL getCleanedUrl()
      Lazily determine a cleaned URL for the given original URL.
      private static java.net.URL getCleanedUrl​(java.net.URL originalUrl, java.lang.String originalPath)
      Determine a cleaned URL for the given original URL.
      java.lang.String getDescription()
      This implementation returns a description that includes the URL.
      java.io.File getFile()
      This implementation returns a File reference for the underlying URL/URI, provided that it refers to a file in the file system.
      java.lang.String getFilename()
      This implementation returns the name of the file that this URL refers to.
      java.io.InputStream getInputStream()
      This implementation opens an InputStream for the given URL.
      java.net.URI getUri()
      This implementation returns the underlying URI directly, if possible.
      java.net.URL getUrl()
      This implementation returns the underlying URL reference.
      int hashCode()
      This implementation returns the hash code of the underlying URL reference.
      boolean isFile()
      This implementation always returns false.
      • 从类继承的方法 java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • 字段详细资料

      • uri

        private final java.net.URI uri
        Original URI, if available; used for URI and File access.
      • url

        private final java.net.URL url
        Original URL, used for actual access.
      • cleanedUrl

        private volatile java.net.URL cleanedUrl
        Cleaned URL (with normalized path), used for comparisons.
    • 构造器详细资料

      • UrlResource

        public UrlResource​(java.net.URI uri)
                    throws java.net.MalformedURLException
        Create a new UrlResource based on the given URI object.
        参数:
        uri - a URI
        抛出:
        java.net.MalformedURLException - if the given URL path is not valid
        从以下版本开始:
        2.5
      • UrlResource

        public UrlResource​(java.net.URL url)
        Create a new UrlResource based on the given URL object.
        参数:
        url - a URL
      • UrlResource

        public UrlResource​(java.lang.String path)
                    throws java.net.MalformedURLException
        Create a new UrlResource based on a URL path.

        Note: The given path needs to be pre-encoded if necessary.

        参数:
        path - a URL path
        抛出:
        java.net.MalformedURLException - if the given URL path is not valid
        另请参阅:
        URL(String)
      • UrlResource

        public UrlResource​(java.lang.String protocol,
                           java.lang.String location)
                    throws java.net.MalformedURLException
        Create a new UrlResource based on a URI specification.

        The given parts will automatically get encoded if necessary.

        参数:
        protocol - the URL protocol to use (e.g. "jar" or "file" - without colon); also known as "scheme"
        location - the location (e.g. the file path within that protocol); also known as "scheme-specific part"
        抛出:
        java.net.MalformedURLException - if the given URL specification is not valid
        另请参阅:
        URI(String, String, String)
      • UrlResource

        public UrlResource​(java.lang.String protocol,
                           java.lang.String location,
                           java.lang.String fragment)
                    throws java.net.MalformedURLException
        Create a new UrlResource based on a URI specification.

        The given parts will automatically get encoded if necessary.

        参数:
        protocol - the URL protocol to use (e.g. "jar" or "file" - without colon); also known as "scheme"
        location - the location (e.g. the file path within that protocol); also known as "scheme-specific part"
        fragment - the fragment within that location (e.g. anchor on an HTML page, as following after a "#" separator)
        抛出:
        java.net.MalformedURLException - if the given URL specification is not valid
        另请参阅:
        URI(String, String, String)
    • 方法详细资料

      • getCleanedUrl

        private static java.net.URL getCleanedUrl​(java.net.URL originalUrl,
                                                  java.lang.String originalPath)
        Determine a cleaned URL for the given original URL.
        参数:
        originalUrl - the original URL
        originalPath - the original URL path
        返回:
        the cleaned URL (possibly the original URL as-is)
        另请参阅:
        StringUtils.cleanPath(java.lang.String)
      • getCleanedUrl

        private java.net.URL getCleanedUrl()
        Lazily determine a cleaned URL for the given original URL.
        另请参阅:
        getCleanedUrl(URL, String)
      • getInputStream

        public java.io.InputStream getInputStream()
                                           throws java.io.IOException
        This implementation opens an InputStream for the given URL.

        It sets the useCaches flag to false, mainly to avoid jar file locking on Windows.

        返回:
        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
        另请参阅:
        URL.openConnection(), URLConnection.setUseCaches(boolean), URLConnection.getInputStream()
      • getUrl

        public java.net.URL getUrl()
        This implementation returns the underlying URL reference.
        指定者:
        getUrl 在接口中 Resource
        覆盖:
        getUrl 在类中 AbstractResource
      • getUri

        public java.net.URI getUri()
                            throws java.io.IOException
        This implementation returns the underlying URI directly, if possible.
        指定者:
        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
      • getFile

        public java.io.File getFile()
                             throws java.io.IOException
        This implementation returns a File reference for the underlying URL/URI, provided that it refers to a file in the file system.
        指定者:
        getFile 在接口中 Resource
        覆盖:
        getFile 在类中 AbstractFileResolvingResource
        抛出:
        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
        另请参阅:
        ResourceUtils.getFile(URL, String)
      • createRelativeUrl

        protected java.net.URL createRelativeUrl​(java.lang.String relativePath)
                                          throws java.net.MalformedURLException
        This delegate creates a java.net.URL, applying the given path relative to the path of the underlying URL of this resource descriptor. A leading slash will get dropped; a "#" symbol will get encoded.
        抛出:
        java.net.MalformedURLException
        从以下版本开始:
        5.2
        另请参阅:
        createRelative(String)
      • getFilename

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

        public java.lang.String getDescription()
        This implementation returns a description that includes the URL.
        另请参阅:
        Object.toString()