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

Java Resource路徑整理總結(jié)

 更新時間:2017年03月16日 14:27:56   投稿:lqh  
這篇文章主要介紹了 Java Resource路徑整理總結(jié)的相關(guān)資料,需要的朋友可以參考下

  Java Resource路徑

首先一點很重要,Java中不存在標(biāo)準(zhǔn)的相對路徑,各種相對路徑取資源的方式都是基于某種規(guī)則轉(zhuǎn)化為絕對路勁

然后一點也很重要,絕對不要直接使用絕對路徑,否則死得很難看

基于以上兩點,總結(jié)Resource路徑問題無非歸結(jié)為一點:找基點,也就是在某種環(huán)境下(web、j2ee或jar包等)通過合適的方式找到一個穩(wěn)定的基點,然后通過這個基點找到你要的resource

Java中的基點有哪些呢?大致總結(jié)一下有以下幾種:

1)classpath

如果你要找的資源在classpath下,那么通過classpath這個基點是比較合適的,而取得這個基點方式主要是通過ClassLoader來,具體方法就是 ClassLoader.getResource(String name),而取得ClassLoader的方式很多,比如:

  1. Thread.currentThread().getContextClassLoader()
  2. clazz.getClassLoader()
  3. ClassLoader. getSystemClassLoader()

ClassLoader找resource的實現(xiàn)原理就是先遞歸在parent classLoader中從所在classpath里加載resource(最終如何加載JDK未開源),如果所有層級的classLoader都未找到,則調(diào)用findResource方法來找,而這個方法是暴露給自制classLoader來現(xiàn)實的,因此給了在classpath之外加載resource的機會。

2) 當(dāng)前用戶目錄

就是相對于System.getProperty("user.dir" )返回的路徑, 對于一般項目,這是項目的根路徑。對于JavaEE服務(wù)器,這可能是服務(wù)器的某個路徑。這個并沒有統(tǒng)一的規(guī)范! 然而, 默認(rèn)情況下,java.io 包中的類總是根據(jù)當(dāng)前用戶目錄來分析相對路徑名,如new File("xxx"),就是在 System.getProperty("user.dir" )路徑下找xxx文件。因此,通過這種方式來定位文件可能會出現(xiàn)移植問題。

3) Web應(yīng)用程序的根目錄

在Web應(yīng)用程序中,我們一般通過ServletContext.getRealPath("/" )方法得到Web應(yīng)用程序的根目錄的絕對路徑。

掌握了上面幾個基點,就能很輕松得定位你要找的resource,只不過要清晰地認(rèn)識到不要只圖一時快活,而不管將來移植的死活,要確保能任何環(huán)境下(j2se or web,windows or Linux)不出問題。

 感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關(guān)文章

  • springboot使用國產(chǎn)加密算法方式,sm2和sm3加解密demo

    springboot使用國產(chǎn)加密算法方式,sm2和sm3加解密demo

    這篇文章主要介紹了springboot使用國產(chǎn)加密算法方式,sm2和sm3加解密demo,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Java 讀寫Properties配置文件詳解

    Java 讀寫Properties配置文件詳解

    這篇文章主要介紹了Java 讀寫Properties配置文件詳解的相關(guān)資料,這里舉例說明該如何實現(xiàn),具有參考價值,需要的朋友可以參考下
    2016-11-11
  • Spring Boot Jar 文件能直接運行的操作方法

    Spring Boot Jar 文件能直接運行的操作方法

    本文將深入探討 Spring Boot 的打包過程及其運行原理,揭示其 JAR 文件如何巧妙地集成依賴項、嵌入 Web 容器并實現(xiàn)自動配置,感興趣的朋友跟隨小編一起看看吧
    2024-12-12
  • Java中簡單實用Quartz概述

    Java中簡單實用Quartz概述

    Quartz是一個開源的Java調(diào)度框架,可以用來實現(xiàn)在指定的時間或時間間隔觸發(fā)任務(wù)執(zhí)行的功能,這篇文章主要介紹了Java中簡單實用Quartz,需要的朋友可以參考下
    2023-02-02
  • Java實現(xiàn)多對多網(wǎng)絡(luò)通訊的流程

    Java實現(xiàn)多對多網(wǎng)絡(luò)通訊的流程

    這篇文章主要介紹了Java實現(xiàn)多對多網(wǎng)絡(luò)通訊的流程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04
  • 在SpringBoot中記錄用戶操作日志功能

    在SpringBoot中記錄用戶操作日志功能

    在Web應(yīng)用程序開發(fā)中,記錄用戶操作日志是一項非常重要的任務(wù),它可以幫助我們追蹤用戶行為,分析系統(tǒng)狀況,以及審計系統(tǒng)的安全性,本文將介紹如何在SpringBoot框架中實現(xiàn)用戶操作日志的記錄功能,感興趣的朋友一起看看吧
    2024-12-12
  • Java Servlet中Response對象的使用方法

    Java Servlet中Response對象的使用方法

    本文介紹了Java Servlet中Response對象的使用方法,包括設(shè)置響應(yīng)頭、設(shè)置響應(yīng)編碼、向客戶端發(fā)送數(shù)據(jù)、重定向等操作,同時介紹了常用的響應(yīng)狀態(tài)碼和響應(yīng)類型,幫助讀者更好地理解和掌握Servlet中Response對象的用法
    2023-05-05
  • Java讀取Excel、docx、pdf和txt等文件萬能方法舉例

    Java讀取Excel、docx、pdf和txt等文件萬能方法舉例

    在Java開發(fā)中處理文件是常見需求,本文以實際代碼示例詳述如何使用ApachePOI庫及其他工具讀取和寫入Excel、Word、PDF等文件,介紹了ApachePOI、ApachePDFBox和EasyExcel等庫的使用方法,幫助開發(fā)者有效讀取不同格式文件,需要的朋友可以參考下
    2024-09-09
  • jenkins 構(gòu)建項目之 pipeline基礎(chǔ)教程

    jenkins 構(gòu)建項目之 pipeline基礎(chǔ)教程

    ​pipeline ,簡單來說,就是一套運行在 jenkins 上的工作流框架。這篇文章主要介紹了jenkins 構(gòu)建項目之 pipeline基礎(chǔ)教程,需要的朋友可以參考下
    2020-07-07
  • idea2020.2卡死在reading maven projects

    idea2020.2卡死在reading maven projects

    這篇文章主要介紹了idea2020.2卡死在reading maven projects,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09

最新評論

宁远县| 宁城县| 正宁县| 桂平市| 松潘县| 兰州市| 寿光市| 孝感市| 长泰县| 丹巴县| 晋江市| 农安县| 新平| 子洲县| 迁安市| 威宁| 成都市| 社旗县| 浑源县| 开江县| 集贤县| 贡觉县| 舒城县| 清涧县| 靖安县| 神池县| 西充县| 吴桥县| 六枝特区| 上高县| 景洪市| 汾西县| 连平县| 双城市| 昭平县| 郑州市| 镇赉县| 郯城县| 曲麻莱县| 石台县| 永福县|