八 spring 使用外部屬性檔案

2021-07-14 00:21:05 字數 1153 閱讀 4570

為什麼要使用外部屬性檔案

•在配置檔案裡配置 bean 時, 有時需要在 bean 的配置裡混入系統部署的細節資訊(例如: 檔案路徑, 資料來源配置資訊等). 而這些部署細節實際上需要和bean 配置相分離

•spring 提供了乙個 propertyplaceholderconfigurer 的 beanfactory

後置處理器, 這個處理器允許使用者將bean 配置的部分內容外移到屬性檔案中. 可以在 bean 配置檔案裡使用形式為$ 的變數, propertyplaceholderconfigurer 從屬性檔案裡載入屬性, 並使用這些屬性來替換變數.

•spring 還允許在屬性檔案中使用$,以實現屬性之間的相互引用。

這裡以資料來源為例,使用spring自帶的資料來源配置,首先在xml檔案中配置

上面是不使用外部屬性檔案的配置

使用外部屬性檔案的步驟

如果使用了外部屬性配置,那麼需要在類路徑下新增乙個屬性檔案以".properties"結尾,那麼我們命名為db.properties,其編寫風格如下

jdbc.user=root

jdbc.password=123

jdbc.driverclass=com.mysql.jdbc.driver

jdbc.jdbcurl=jdbc:mysql:///test

url的配置中最好在test後面新增
?useunicode=true&characterencoding=utf-8
這樣減少出現亂碼問題

新的配置檔案中應該使用類似於el表示式的方式在value屬性中新增值

預設資料來源的配置

這樣乙個以spring自帶資料來源的屬性檔案已經配置好了,但是使用c3p0的資料來源配置有所不同,主要是定義的name屬性中值不同。

c3p0的配置

所以在配置資料來源的時候要注意這兩種的配置區別

spring使用外部屬性檔案

在配置檔案裡配置bean時,有時候需要在bean的配置裡混入系統部署資訊的細節資訊 例如 檔案路徑,資料來源配置資訊等 而這些部署細節實際上需要和bean配置相分離 如果把這些配置屬性放在配置檔案中,是不是更方便。spring 提供了乙個 propertyplaceholderconfigurer ...

spring中使用外部屬性檔案

p username 通過propertyplaceholderconfiguer的location屬性引入屬性檔案,這樣,在定義bean的時候就可以引用屬性檔案中的屬性了。propertyplaceholderconfiguer的其他屬性location classpath com start p...

Spring 10 使用外部屬性檔案

在配置檔案裡配置 bean 時,有時需要在 bean 的配置裡混入系統部署的細節資訊 例如 檔案路徑,資料來源配置資訊等 而這些部署細節實際上需要和 bean 配置相分離 spring 提供了乙個propertyplaceholderconfigurer的 beanfactory 後置處理器,這個處...