最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring 中的 ResourceLoader實(shí)例詳解

 更新時(shí)間:2024年11月05日 10:17:16   作者:楊過姑父  
Spring框架提供了ResourceLoader接口,用于加載資源文件,DefaultResourceLoader是其基本實(shí)現(xiàn),只能加載單個(gè)資源,而ResourcePatternResolver繼承自ResourceLoader,增加了按模式加載多個(gè)資源的能力,感興趣的朋友一起看看吧

ResourceLoader 是用來將所需要的資源加載 并封裝成 Resource對(duì)象

public void printStream(InputStream inputStream) throws IOException {
    Reader reader = new InputStreamReader(inputStream);
    BufferedReader bufferedReader = new BufferedReader(reader);
    String line = null;
    while ( (line = bufferedReader.readLine()) != null) {
        System.out.println(line);
    }
}

1.DefaultResourceLoader

DefaultResourceLoader是 ResourceLoader 一個(gè)默認(rèn)的實(shí)現(xiàn),只能加載單個(gè)的資源

@Test
public void getResource() throws IOException {
    ResourceLoader resourceLoader = new DefaultResourceLoader();
    Resource resource = resourceLoader.getResource("beans.xml");
    InputStream inputStream = resource.getInputStream();
    printStream(inputStream);
}
@Test
public void getResourceByPath() throws IOException {
    ResourceLoader resourceLoader = new DefaultResourceLoader();
    Resource resource = resourceLoader.getResource("/com/fll/TestCase.class");
    InputStream inputStream = resource.getInputStream();
    printStream(inputStream);
}

 2.ResourcePatternResolver

 ResourcePatternResolver也是繼承了ResourceLoader,但是ResourcePatternResolver又定義了一個(gè)加載多個(gè)資源的方法,就是按照一個(gè)Pattern加載所有符合的資源

PathMatchingResourcePatternResolver一個(gè)按照ant風(fēng)格的路徑進(jìn)行資源匹配加載的實(shí)現(xiàn)類

@Test
public void getResources() throws Exception {
    ResourcePatternResolver resourcePatternResolver = new PathMatchingResourcePatternResolver();
    Resource[] resources = resourcePatternResolver.getResources("/**");
    Arrays.stream(resources).forEach(
            resource -> {
                if(resource.getFilename().equals("beans.xml")){
                    try {
                        InputStream inputStream = resource.getInputStream();
                        printStream(inputStream);
                    } catch (IOException e) {
                        throw new RuntimeException(e);
                    }
                }else {
                    System.out.println(resource.getFilename());
                }
            }
    );
}

/** 代表加載classpath下的所有資源

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:beans="http://www.springframework.org/schema/beans"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
           http://www.springframework.org/schema/context
           http://www.springframework.org/schema/context/spring-context-2.5.xsd
           http://www.springframework.org/schema/aop
           http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">
    <bean name="person" class="com.fll.start.Person">
        <property name = "name" value = "zhangsan"/>
        <property name = "age" value = "20"/>
    </bean>
</beans>
TestCase.class
AnnotationContainerStartProcess.class
Car.class
InputStreamPrinter.class
Person.class
XmlContainerStartProcess.class
DefaultResourceLoaderTest.class
InputResourceTest.class
ResourcePatternResolverTest.class
SpringStringUtilsTest.class
resource_loader
start
fll
com

可以看到確實(shí)匹配到了所有的資源,包括目錄

到此這篇關(guān)于Spring 中的 ResourceLoader的文章就介紹到這了,更多相關(guān)Spring ResourceLoader內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mybatis的selectKey作用詳解

    mybatis的selectKey作用詳解

    這篇文章主要介紹了mybatis的selectKey作用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。</P><P>
    2022-01-01
  • Java實(shí)現(xiàn)前綴樹詳解

    Java實(shí)現(xiàn)前綴樹詳解

    Java實(shí)現(xiàn)前綴樹(Trie樹)是一種樹形數(shù)據(jù)結(jié)構(gòu),用于字符串的存儲(chǔ)和查找,適用于大量字符串的快速匹配。通過將字符串拆分為字符序列,依次構(gòu)建樹形結(jié)構(gòu),將每個(gè)字符串的字符依次存儲(chǔ)在樹的節(jié)點(diǎn)上,實(shí)現(xiàn)高效的字符串匹配
    2023-04-04
  • java 中類似js encodeURIComponent 函數(shù)的實(shí)現(xiàn)案例

    java 中類似js encodeURIComponent 函數(shù)的實(shí)現(xiàn)案例

    這篇文章主要介紹了java 中類似js encodeURIComponent 函數(shù)的實(shí)現(xiàn)案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • 手把手教你搞懂冒泡排序和選擇排序

    手把手教你搞懂冒泡排序和選擇排序

    這篇文章主要介紹了java數(shù)組算法例題代碼詳解(冒泡排序,選擇排序),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-07-07
  • 使用Java將字符串在ISO-8859-1和UTF-8之間相互轉(zhuǎn)換

    使用Java將字符串在ISO-8859-1和UTF-8之間相互轉(zhuǎn)換

    大家都知道在一些情況下,我們需要特殊的編碼格式,如:UTF-8,但是系統(tǒng)默認(rèn)的編碼為ISO-8859-1,遇到這個(gè)問題,該如何對(duì)字符串進(jìn)行兩個(gè)編碼的轉(zhuǎn)換呢,下面小編給大家分享下java中如何在ISO-8859-1和UTF-8之間相互轉(zhuǎn)換,感興趣的朋友一起看看吧
    2021-12-12
  • SpringBoot+thymeleaf+Echarts+Mysql 實(shí)現(xiàn)數(shù)據(jù)可視化讀取的示例

    SpringBoot+thymeleaf+Echarts+Mysql 實(shí)現(xiàn)數(shù)據(jù)可視化讀取的示例

    本文主要介紹了SpringBoot+thymeleaf+Echarts+Mysql 實(shí)現(xiàn)數(shù)據(jù)可視化讀取的示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • Spring boot開發(fā)web應(yīng)用JPA過程解析

    Spring boot開發(fā)web應(yīng)用JPA過程解析

    這篇文章主要介紹了Spring boot開發(fā)web應(yīng)用JPA過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • SpringBoot監(jiān)控API請(qǐng)求耗時(shí)的6中解決解決方案

    SpringBoot監(jiān)控API請(qǐng)求耗時(shí)的6中解決解決方案

    本文介紹SpringBoot中記錄API請(qǐng)求耗時(shí)的6種方案,包括手動(dòng)埋點(diǎn)、AOP切面、攔截器、Filter、事件監(jiān)聽、Micrometer+Prometheus,具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-07-07
  • Java構(gòu)造方法實(shí)例詳解(動(dòng)力節(jié)點(diǎn)java學(xué)院整理)

    Java構(gòu)造方法實(shí)例詳解(動(dòng)力節(jié)點(diǎn)java學(xué)院整理)

    其實(shí)java構(gòu)造方法很簡單,下面通過示例給大家分享java構(gòu)造方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下
    2017-04-04
  • java8日期工具類封裝的實(shí)戰(zhàn)記錄

    java8日期工具類封裝的實(shí)戰(zhàn)記錄

    java time包中的是類是不可變且線程安全的,新的時(shí)間及日期API位于java.time中,下面這篇文章主要給大家介紹了關(guān)于java8日期工具類封裝的相關(guān)資料,需要的朋友可以參考下
    2021-09-09

最新評(píng)論

东宁县| 铜川市| 江津市| 靖西县| 汤阴县| 贺兰县| 黑水县| 玛多县| 靖州| 晋中市| 辽源市| 石城县| 弋阳县| 吴忠市| 淮南市| 湖口县| 郯城县| 山东| 兰西县| 温泉县| 邮箱| 桓仁| 固安县| 象山县| 六枝特区| 崇义县| 天峻县| 托里县| 仪陇县| 彰化县| 沈丘县| 马龙县| 巧家县| 凤城市| 霍城县| 珲春市| 尚志市| 金门县| 正镶白旗| 清苑县| 阿瓦提县|