类 ResourceUtils

java.lang.Object
cn.taketoday.util.ResourceUtils

public abstract class ResourceUtils extends Object
从以下版本开始:
2.1.6
作者:
TODAY 2019-05-15 13:37
  • 字段详细资料

    • CLASSPATH_URL_PREFIX

      public static final String CLASSPATH_URL_PREFIX
      Pseudo URL prefix for loading from the class path: "classpath:".
      另请参阅:
    • JAR_ENTRY_URL_PREFIX

      public static final String JAR_ENTRY_URL_PREFIX
      另请参阅:
    • JAR_SEPARATOR

      public static final String JAR_SEPARATOR
      另请参阅:
    • FILE_URL_PREFIX

      public static final String FILE_URL_PREFIX
      URL prefix for loading from the file system: "file:".
      另请参阅:
    • JAR_URL_PREFIX

      public static final String JAR_URL_PREFIX
      URL prefix for loading from a jar file: "jar:".
      另请参阅:
    • WAR_URL_PREFIX

      public static final String WAR_URL_PREFIX
      URL prefix for loading from a war file on Tomcat: "war:".
      另请参阅:
    • URL_PROTOCOL_FILE

      public static final String URL_PROTOCOL_FILE
      URL protocol for a file in the file system: "file".
      另请参阅:
    • URL_PROTOCOL_JAR

      public static final String URL_PROTOCOL_JAR
      URL protocol for an entry from a jar file: "jar".
      另请参阅:
    • URL_PROTOCOL_WAR

      public static final String URL_PROTOCOL_WAR
      URL protocol for an entry from a war file: "war".
      另请参阅:
    • URL_PROTOCOL_ZIP

      public static final String URL_PROTOCOL_ZIP
      URL protocol for an entry from a zip file: "zip".
      另请参阅:
    • URL_PROTOCOL_WSJAR

      public static final String URL_PROTOCOL_WSJAR
      URL protocol for an entry from a WebSphere jar file: "wsjar".
      另请参阅:
    • URL_PROTOCOL_VFSZIP

      public static final String URL_PROTOCOL_VFSZIP
      URL protocol for an entry from a JBoss jar file: "vfszip".
      另请参阅:
    • URL_PROTOCOL_VFSFILE

      public static final String URL_PROTOCOL_VFSFILE
      URL protocol for a JBoss file system resource: "vfsfile".
      另请参阅:
    • JAR_FILE_EXTENSION

      public static final String JAR_FILE_EXTENSION
      File extension for a regular jar file: ".jar".
      另请参阅:
    • JAR_URL_SEPARATOR

      public static final String JAR_URL_SEPARATOR
      Separator between JAR URL and file path within the JAR: "!/".
      另请参阅:
    • WAR_URL_SEPARATOR

      public static final String WAR_URL_SEPARATOR
      Special separator between WAR URL and jar part on Tomcat.
      另请参阅:
  • 构造器详细资料

    • ResourceUtils

      public ResourceUtils()
  • 方法详细资料

    • getResources

      public static Resource[] getResources(String pathPattern) throws IOException
      Resolve the given location pattern into Resource objects.

      Overlapping resource entries that point to the same physical resource should be avoided, as far as possible. The result should have set semantics.

      参数:
      pathPattern - The location pattern to resolve
      返回:
      the corresponding Resource objects
      抛出:
      IOException - in case of I/O errors
    • getResources

      public static Resource[] getResources(String pathPattern, @Nullable ClassLoader classLoader) throws IOException
      Resolve the given location pattern into Resource objects.

      Overlapping resource entries that point to the same physical resource should be avoided, as far as possible. The result should have set semantics.

      参数:
      pathPattern - The location pattern to resolve
      classLoader - The ClassLoader to search (including its ancestors)
      返回:
      the corresponding Resource objects
      抛出:
      IOException - in case of I/O errors
    • getResource

      public static Resource getResource(String location)
      Get Resource with given location
      参数:
      location - resource location
    • getResource

      public static Resource getResource(URL url)
    • getResource

      public static Resource getResource(File file)
      Get Resource from a file
      参数:
      file - source
      返回:
      a FileSystemResource
    • isFileURL

      public static boolean isFileURL(URL url)
      Determine whether the given URL points to a resource in the file system, i.e. has protocol "file".
      参数:
      url - the URL to check
      返回:
      whether the URL has been identified as a file system URL
    • isJarURL

      public static boolean isJarURL(URL url)
      Determine whether the given URL points to a resource in a jar file. i.e. has protocol "jar", "war, ""zip", "vfszip" or "wsjar".
      参数:
      url - the URL to check
      返回:
      whether the URL has been identified as a JAR URL
    • isJarFileURL

      public static boolean isJarFileURL(URL url)
      Determine whether the given URL points to a jar file itself, that is, has protocol "file" and ends with the ".jar" extension.
      参数:
      url - the URL to check
      返回:
      whether the URL has been identified as a JAR file URL
    • extractJarFileURL

      public static URL extractJarFileURL(URL jarUrl) throws MalformedURLException
      Extract the URL for the actual jar file from the given URL (which may point to a resource in a jar file or to a jar file itself).
      参数:
      jarUrl - the original URL
      返回:
      the URL for the actual jar file
      抛出:
      MalformedURLException - if no valid jar file URL could be extracted
    • useCachesIfNecessary

      public static void useCachesIfNecessary(URLConnection con)
      Set the "useCaches" flag on the given connection, preferring false but leaving the flag at true for JNLP based resources.
      参数:
      con - the URLConnection to set the flag on
    • toURI

      public static URI toURI(URL url) throws URISyntaxException
      Create a URI instance for the given URL, replacing spaces with "%20" URI encoding first.
      参数:
      url - the URL to convert into a URI instance
      返回:
      the URI instance
      抛出:
      URISyntaxException - if the URL wasn't a valid URI
      另请参阅:
    • toURI

      public static URI toURI(String location) throws URISyntaxException
      Create a URI instance for the given location String, replacing spaces with "%20" URI encoding first.
      参数:
      location - the location String to convert into a URI instance
      返回:
      the URI instance
      抛出:
      URISyntaxException - if the location wasn't a valid URI
    • isUrl

      public static boolean isUrl(String resourceLocation)
      Return whether the given resource location is a URL: either a special "classpath" pseudo URL or a standard URL.
      参数:
      resourceLocation - the location String to check
      返回:
      whether the location qualifies as a URL
      另请参阅:
    • extractArchiveURL

      public static URL extractArchiveURL(URL jarUrl) throws MalformedURLException
      Extract the URL for the outermost archive from the given jar/war URL (which may point to a resource in a jar file or to a jar file itself).

      In the case of a jar file nested within a war file, this will return a URL to the war file since that is the one resolvable in the file system.

      参数:
      jarUrl - the original URL
      返回:
      the URL for the actual jar file
      抛出:
      MalformedURLException - if no valid jar file URL could be extracted
      另请参阅:
    • getResourceAsStream

      public static InputStream getResourceAsStream(String resourceLocation) throws IOException
      Get a InputStream from given resource string
      参数:
      resourceLocation - Target resource string
      返回:
      A InputStream
      抛出:
      IOException - If any IO Exception occurred
      从以下版本开始:
      4.0
    • getURL

      public static URL getURL(String resourceLocation) throws FileNotFoundException
      Resolve the given resource location to a java.net.URL.

      Does not check whether the URL actually exists; simply returns the URL that the given location would correspond to.

      参数:
      resourceLocation - the resource location to resolve: either a "classpath:" pseudo URL, a "file:" URL, or a plain file path
      返回:
      a corresponding URL object
      抛出:
      FileNotFoundException - if the resource cannot be resolved to a URL
      从以下版本开始:
      4.0
    • getFile

      public static File getFile(String resourceLocation) throws FileNotFoundException
      Resolve the given resource location to a java.io.File, i.e. to a file in the file system.

      Does not check whether the file actually exists; simply returns the File that the given location would correspond to.

      参数:
      resourceLocation - the resource location to resolve: either a "classpath:" pseudo URL, a "file:" URL, or a plain file path
      返回:
      a corresponding File object
      抛出:
      FileNotFoundException - if the resource cannot be resolved to a file in the file system
      从以下版本开始:
      4.0
    • getFile

      public static File getFile(URL resourceUrl) throws FileNotFoundException
      Resolve the given resource URL to a java.io.File, i.e. to a file in the file system.
      参数:
      resourceUrl - the resource URL to resolve
      返回:
      a corresponding File object
      抛出:
      FileNotFoundException - if the URL cannot be resolved to a file in the file system
      从以下版本开始:
      4.0
    • getFile

      public static File getFile(URL resourceUrl, String description) throws FileNotFoundException
      Resolve the given resource URL to a java.io.File, i.e. to a file in the file system.
      参数:
      resourceUrl - the resource URL to resolve
      description - a description of the original resource that the URL was created for (for example, a class path location)
      返回:
      a corresponding File object
      抛出:
      FileNotFoundException - if the URL cannot be resolved to a file in the file system
      从以下版本开始:
      4.0
    • getFile

      public static File getFile(URI resourceUri) throws FileNotFoundException
      Resolve the given resource URI to a java.io.File, i.e. to a file in the file system.
      参数:
      resourceUri - the resource URI to resolve
      返回:
      a corresponding File object
      抛出:
      FileNotFoundException - if the URL cannot be resolved to a file in the file system
      从以下版本开始:
      4.0
    • getFile

      public static File getFile(URI resourceUri, String description) throws FileNotFoundException
      Resolve the given resource URI to a java.io.File, i.e. to a file in the file system.
      参数:
      resourceUri - the resource URI to resolve
      description - a description of the original resource that the URI was created for (for example, a class path location)
      返回:
      a corresponding File object
      抛出:
      FileNotFoundException - if the URL cannot be resolved to a file in the file system
      从以下版本开始:
      4.0
    • toURL

      public static URL toURL(String location) throws MalformedURLException
      Create a URL instance for the given location String, going through URI construction and then URL conversion.
      参数:
      location - the location String to convert into a URL instance
      返回:
      the URL instance
      抛出:
      MalformedURLException - if the location wasn't a valid URL
      从以下版本开始:
      4.0
    • toRelativeURL

      public static URL toRelativeURL(URL root, String relativePath) throws MalformedURLException
      Create a URL instance for the given root URL and relative path, going through URI construction and then URL conversion.
      参数:
      root - the root URL to start from
      relativePath - the relative path to apply
      返回:
      the relative URL instance
      抛出:
      MalformedURLException - if the end result is not a valid URL
      从以下版本开始:
      4.0