Spring資源訪問設計與策略模式應用

2021-08-19 17:19:05 字數 834 閱讀 7884

spring把所有記錄資訊的載體,例如各種型別的文字配置檔案,二進位制檔案, 網路資源等都統一做了乙個高度的抽象,稱為資源(resources)。spring中最常見的就是xml配置檔案和properties配置檔案。

spring為資源訪問提供了resource介面,該介面提供了強大的資源範問能力,例如檢查資源是否存在,獲取資源對應的檔案等。

resource提供了一系列資源訪問方法

boolean exists(); 判斷資源是否存在inputstream getinputstream(); 定位並開啟資源,返回資源對應的輸入流。每次呼叫都返回新的輸入流。呼叫者必須負責關閉輸入流boolean isopen(); 返回資源檔案是否開啟,如果資源檔案不能多次讀取,每次讀取結束應該顯式關閉,以防止資源洩漏url geturl(); 獲取網路資源的urlfile getfile(); 資源對應的檔案物件 ·string getfilename(); 獲取資源對應的檔名

resource沒有提供訪問任何底層資源的實現邏輯。針對不同的底層資源,spring提供不同的resource實現類,不同的實現類負責不同的資源訪問邏輯。

resource不僅僅是在spring中使用,也可以單獨作為資源訪問的工具。雖然這樣會使**與spring有一定耦合,但這只是對一小塊模組的依賴,不會造成太大的**汙染。

resource本身不提供具體的資源訪問邏輯,針對不同的資源,spring提供了不同的resource實現類來處理不同的資源處理邏輯。

spring提供了如下幾種resource實現類

Spring 資源訪問工具類

jdk所提供的訪問資源的類並不能很好的滿足各種底層資源的訪問需求,因此,spring設計了乙個resource介面,它為應用提供了更強大的訪問底層資源的能力 主要方法 boolean exists 判斷資源是否存在 boolean isopen 判斷資源是否已經開啟 url geturl 如果底層資...

Spring 資源訪問工具類

jdk所提供的訪問資源的類並不能很好的滿足各種底層資源的訪問需求,因此,spring設計了乙個resource介面,它為應用提供了更強大的訪問底層資源的能力 主要方法 boolean exists 判斷資源是否存在 boolean isopen 判斷資源是否已經開啟 url geturl 如果底層資...

spring的靜態資源訪問

一 springmvc 方式一 使用mvc的default servlet handler spring.xml中配置 方式二 使用mvc的resources spring.xml中配置 方式三 啟用tomcat的預設排程器default 要寫在dispatcherservlet的前面,讓defau...