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

Spring Boot 讀取靜態(tài)資源文件的方法

 更新時(shí)間:2017年09月26日 10:25:07   作者:kinginblue  
本篇文章主要介紹了Spring Boot 讀取靜態(tài)資源文件的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

一、需求場(chǎng)景

有時(shí)候我們需要在項(xiàng)目中使用一些靜態(tài)資源文件,比如城市信息文件 countries.xml,在項(xiàng)目啟動(dòng)后讀取其中的數(shù)據(jù)并初始化寫進(jìn)數(shù)據(jù)庫(kù)中。

二、實(shí)現(xiàn)

靜態(tài)資源文件 countries.xml 放在 src/main/resources 目錄下

使用 Spring 的 ClassPathResource 來(lái)實(shí)現(xiàn) :

Resource resource = new ClassPathResource("countries.xml");
File file = resource.getFile();
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(file)));

ClassPathResource 類的注釋如下:

Resource implementation for class path resources. Uses either a given ClassLoader or a given Class for loading resources.

Supports resolution as java.io.File if the class path resource resides in the file system, but not for resources in a JAR. Always supports resolution as URL.

翻譯過(guò)來(lái)就是:

類路徑資源的資源實(shí)現(xiàn)。使用給定的ClassLoader或給定的類來(lái)加載資源。

如果類路徑資源駐留在文件系統(tǒng)中,則支持解析為 java.io.File,如果是JAR中的資源則不支持。始終支持解析為URL。

三、Jar 中資源文件

上面也提到了,如果靜態(tài)資源文件在文件系統(tǒng)里,則支持解析為 java.io.File,程序是能正常工作的。

到項(xiàng)目打包成 Jar 包放到服務(wù)器上運(yùn)行就報(bào)找不到資源的錯(cuò)誤了!

解決法案是:不獲取 java.io.File 對(duì)象,而是直接獲取輸入流:

Resource resource = new ClassPathResource("countries.xml");
BufferedReader br = new BufferedReader(new InputStreamReader(resource.getInputStream()));

說(shuō)明:構(gòu)造得到 resource 對(duì)象之后直接獲取其輸入流 resource.getInputStream()。

四、附錄

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • springBoot server.port=-1的含義說(shuō)明

    springBoot server.port=-1的含義說(shuō)明

    這篇文章主要介紹了springBoot server.port=-1的含義說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • Spring?Boot?接口加解密功能實(shí)現(xiàn)

    Spring?Boot?接口加解密功能實(shí)現(xiàn)

    在我們?nèi)粘5腏ava開發(fā)中,免不了和其他系統(tǒng)的業(yè)務(wù)交互,或者微服務(wù)之間的接口調(diào)用;如果我們想保證數(shù)據(jù)傳輸?shù)陌踩瑢?duì)接口出參加密,入?yún)⒔饷?,這篇文章主要介紹了Spring?Boot?接口加解密功能實(shí)現(xiàn),需要的朋友可以參考下
    2023-04-04
  • maven配置本地倉(cāng)庫(kù)的方法步驟

    maven配置本地倉(cāng)庫(kù)的方法步驟

    本文主要介紹了maven配置本地倉(cāng)庫(kù)的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • 不同Java泛型構(gòu)造函數(shù)的詳解

    不同Java泛型構(gòu)造函數(shù)的詳解

    這篇文章主要介紹了不同Java泛型構(gòu)造函數(shù)的詳解,因?yàn)閷?duì)象是應(yīng)用類型,對(duì)象賦值是指向同一個(gè)對(duì)象,所以如果需要保存對(duì)象某個(gè)時(shí)刻的狀態(tài),就需要構(gòu)造函數(shù)來(lái)new一個(gè)新的對(duì)象。下面我們來(lái)詳細(xì)了解一下吧
    2019-06-06
  • Spring Boot多數(shù)據(jù)源及其事務(wù)管理配置方法

    Spring Boot多數(shù)據(jù)源及其事務(wù)管理配置方法

    本篇文章主要介紹了Spring Boot多數(shù)據(jù)源及其事務(wù)管理配置方法,具有一定的參考價(jià)值,有興趣的可以了解一下。
    2017-04-04
  • Java簡(jiǎn)單工廠模式詳細(xì)解釋

    Java簡(jiǎn)單工廠模式詳細(xì)解釋

    本文主要介紹了JAVA簡(jiǎn)單工廠模式(從現(xiàn)實(shí)生活角度理解代碼原理)的相關(guān)知識(shí)。具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧
    2021-11-11
  • Spring Cloud Feign報(bào)錯(cuò)問(wèn)題解決

    Spring Cloud Feign報(bào)錯(cuò)問(wèn)題解決

    這篇文章主要介紹了Spring Cloud Feign報(bào)錯(cuò)問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • java對(duì)double數(shù)組排序示例分享

    java對(duì)double數(shù)組排序示例分享

    這篇文章主要介紹了java對(duì)double數(shù)組排序示例,代碼簡(jiǎn)單,下面我們直接上代碼,需要的朋友可以參考下
    2014-03-03
  • skywalking源碼解析javaAgent工具ByteBuddy應(yīng)用

    skywalking源碼解析javaAgent工具ByteBuddy應(yīng)用

    這篇文章主要為大家介紹了skywalking源碼解析javaAgent工具ByteBuddy應(yīng)用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2022-03-03
  • MybatisPlus特殊查詢的實(shí)現(xiàn)介紹

    MybatisPlus特殊查詢的實(shí)現(xiàn)介紹

    這篇文章主要介紹了MybatisPlus查詢投影、聚合查詢、分組查詢、等值查詢、范圍查詢、模糊查詢、排序查詢,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧
    2022-10-10

最新評(píng)論

连州市| 宣恩县| 霍邱县| 简阳市| 曲阳县| 石柱| 陵水| 额敏县| 大英县| 齐河县| 乐清市| 青河县| 富源县| 吉安市| 鱼台县| 东港市| 安义县| 都兰县| 定南县| 横山县| 涡阳县| 合作市| 宜宾市| 蛟河市| 云安县| 永济市| 廉江市| 涞源县| 夏津县| 都匀市| 新巴尔虎右旗| 龙州县| 扎鲁特旗| 绵竹市| 宁晋县| 镇平县| 麻江县| 伊吾县| 朝阳市| 麻城市| 乡城县|