Spring Resource 加載文件的方式

在使用spring做爲容器進行項目開發中會有不少的配置文件,這些配置文件都是經過Spring的Resource接口來實現加載,其實Spring的Resource接口是對java.net.URL的一個強化,由於咱們的配置文件不單單是來自於http請求或者ftp請求,還有不少classpath或者fileSystem或者InputStream(不多見),爲了解決這個需求Spring開發了Resource接口:java

Resource接口源碼以下:spring

package org.springframework.core.io;

import java.io.File;
import java.io.IOException;
import java.net.URI;
import java.net.URL;

public interface Resource extends InputStreamSource {

    boolean exists();

    boolean isReadable();

    boolean isOpen();

    URL getURL() throws IOException;

    URI getURI() throws IOException;

    File getFile() throws IOException;

    long contentLength() throws IOException;

    long lastModified() throws IOException;

    Resource createRelative(String relativePath) throws IOException;

    String getFilename();

    String getDescription();

}

Resource只是一個標準,一個用於解決上面說到的需求的標準,具體的使用方式有如下幾種:spa

1.引用http資源:.net

2.引用classpath資源:code

3.引用fileSystem資源:blog

4.使用相對路徑的資源:接口

code以下:ip

        ClassPathXmlApplicationContext cx = new ClassPathXmlApplicationContext();
        //http:
        Resource template1 = cx.getResource("http://www.chexiang.com");
        //classpath:
        Resource template2 = cx.getResource("calsspath:xxx.text");
        //fileSystem:
        Resource template3 = cx.getResource("file:xsd/spring-aop-3.1.xsd");
        //相對路徑:必須和當前的ApplicationContext路徑在一塊兒
        Resource template4 = cx.getResource("/test/Messenger.groovy");

相關文章
相關標籤/搜索