spring學習筆記(5)屬性檔案引入使用
外部檔案引用
在配置資料庫引數或郵箱伺服器引數等靜態資源時,相對於直接將資訊寫入Spring的.xml,.java等配置檔案中,更好的做法是將配置資訊分類獨立地存放到外部屬性檔案中,然後在Spring配置檔案中引入使用。這種做法的好處是:
1. 提高配置資訊的資源的複用性,可以供多個應用共享,同時若資源資料發生變化時,我們可以直接修改屬性檔案,即可使更改對多個應用生效。
2. 應用部署人員不用在複雜的spring資訊配置檔案中到處查詢資訊的修改位置,減少出錯的機率。
3. 如果這些資訊分佈在java類環境中,我們還需要在原始檔中修改後重新編譯部署
properties檔案
我們常常將這些配置資訊存放在.properties檔案中。properties檔案以鍵值對的形式儲存檔案資訊,每句結尾不用分號,註釋行用#標記。
在java中。JDK 內建的java.util.Properties 類為我們操作.properties 檔案提供了便利。它的常用方法有:
方法 | 說明 |
---|---|
getProperty(String key) | 用指定的鍵在此屬性列表中搜索屬性。也就是通過引數key ,得到key 所對應的value 。 |
load(InputStream inStream) | 從輸入流中讀取屬性列表(鍵和元素對)。通過對指定的檔案(比如說上面的 test.properties 檔案)進行裝載來獲取該檔案中的所有鍵- 值對。以供getProperty(String key)來搜尋。 |
setProperty(String key,String value) | 呼叫Hashtable的方法put。他通過呼叫基類的put方法來設值鍵- 值對。 |
store(OutputStream out,String comments) | 以適合使用load方法載入到Properties表中的格式,將此Properties表中的屬性列表(鍵和元素對)寫入輸出流。與load 方法相反,該方法將鍵- 值對寫入到指定的檔案中去。 |
clear() | 清除所有裝載的鍵 - 值對。該方法在基類中提供。 |
spring訪問屬性檔案
1. 基於xml等檔案引用屬性
使用spring提供的PropertyPlaceholderConfigurer。配置例項如下:
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"
如果我們的jdbc.perperties檔案中含有內容
user=zeng
,則我們可以通過${user}(=zeng)來獲取。使用spring
<context />
內建標籤來讀取檔案<context:property-placeholder location="WEB-INF.jdbc.properties" file-encoding="utf8/>
2. 基於java類註解配置來引用檔案
比如配置資料來源,我們可以定義如下類,通過標籤來獲取屬性檔案裡面的資訊:
package test;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Component
public class dataSource {
@Value("${driverCLasssName}")
private String driverClassName;
@Value("${url}")
private String url;
@Value("${database}")
private String database;
@Value("${user}")
private String user;
@Value("${password}")
private String password;
}
相關推薦
spring學習筆記(5)屬性檔案引入使用
外部檔案引用 在配置資料庫引數或郵箱伺服器引數等靜態資源時,相對於直接將資訊寫入Spring的.xml,.java等配置檔案中,更好的做法是將配置資訊分類獨立地存放到外部屬性檔案中,然後在Spring配置檔案中引入使用。這種做法的好處是: 1. 提高配置資訊
mybatis學習筆記(5)-配置檔案SqlMapConfig
本文主要講解SqlMapConfig配置檔案 SqlMapConfig.xml中配置的內容和順序如下 properties(屬性)settings(全域性配置引數)typeAliases(類型別名)typeHandlers(型別處理器)objectFactory(物件工
mybatis學習筆記(5)-配置檔案
mybatis學習筆記(5)-SqlMapConfig 標籤: mybatis 本文主要講解SqlMapConfig配置檔案 SqlMapConfig.xml中配置的內容和順序如下 properties(屬性) settings(全域
Vue學習筆記二:檔案引入
公用方法、樣式處理1、公共樣式、共用rem檔案這型別的 直接在main.js中通過import的方式引入,如下:// 引入公共檔案 import './assets/css/reset.css' import './assets/js/useRem.js'2、共用方法,後期會
軟體安全學習筆記(5):FAT32檔案系統與資料恢復
一、FAT32檔案系統結構 1、引導扇區:描述分割槽大小、簇的大小、FAT表個數與大小、分割槽載入程式等。 2、FAT(檔案分配表)FAT1+FAT2:記錄資料儲存區每一個簇的使用情況,形成每個檔案的簇連結串列 3、資料儲存區: 儲存兩類資料:目錄項、檔案資料 二、幾個概
Java虛擬機器學習筆記(5)——類檔案結構
上一篇介紹了JVM物件的記憶體分配和回收策略。這篇接著介紹Java的類檔案結構,這篇的內容可能會比較多,我儘量循序漸進的講。要學習class的檔案結構,先要大體對class檔案結構有哪些內容有一個整體把握。現在,看下面一張表。 上面
學習筆記 matlab .m檔案 - 5
matlab之前一直是在命令視窗輸入命令,對於一些複雜的事,每次一條一條輸入,實在不方便,而且可重複性不高, 但是matlab提供了檔案方式,解決的這個問題 matlab檔案是一個字尾名為.M的檔案 ,如果PC不顯示字尾名,可以設定顯示,具體方法請自行網上搜索。 matlab可以執
Spring 學習筆記(五)IOC之零註解配置(用註解代替applicationContext.xml配置檔案)
有了這個東西開發方便很多,不用寫xml那些配置嘍。 package org.spring.exampleAOP; import org.springframework.context.annotation.ComponentScan; import org.springframework.co
Spring 學習筆記(三)IOC之XML方式配置 第二回Bean節點屬性的配置
<?xml version="1.0" encoding="UTF-8" ?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/X
Spring Cloud學習筆記5——天氣預報系統(4)為天氣預報製作
開發環境 JDK8+ Gradle4+ Redis 3.2.100 Apache HttpClient 4.5.3 Spring Boot Web Starter Spring Boot Data Redis Starter Spring Boot Quart
Spring入門學習(外部屬性檔案) 第七節
Spring入門學習 第七節 外部屬性檔案 匯入連線資料庫相應的jar包 建立Spring配置檔案 外部屬性檔案 匯入連線資料庫相應的jar包 新增相應的包<!-- https://mvnrep
【Linux學習筆記】獲取檔案屬性 — stat()、fstat()、lstat()小結
相關文章 Linux是基於檔案的作業系統,一切皆檔案。下面就詳細的整理一下關於Linux檔案屬性的內容。 一、檔案屬性函式 系統提供了3個獲取檔案屬性的函式,分別是:stat()、fstat()、lstat()。 1、函式原型 標頭檔案包含:
spring 學習筆記 引入通知
建立引入引入是為需要方法的類新增屬性和方法。可以用一個已存在的類讓他實現另外的介面,維持另外的狀態(這也叫混合)。引入能夠動態的建立複合物件,提供了多型繼承的好處。 class AuditableIntroductionInterceptor extends Delegat
spring學習筆記(21)程式設計式事務配置,service層概念引入
訪問資料庫事務匯入 public <E> E add(Object object) { return (E) getSessionFactory().openSession().save(object); } 通過直接開啟sess
Spring學習筆記 在XML配置檔案中使用properties檔案的鍵值
property檔案可以很方便的在部署執行階段改變一些特定配置屬性,比如資料庫連線等。然後在程式中根據鍵名使用property檔案中的特定屬性。在Spring中也可以在XML配置檔案中的Bean定義時通過property檔案動態進行屬性值的定義。 使用方法描述 假如入
Spring學習筆記(一)配置檔案的使用
emmmmmm……如何搭建springboot專案,已經超級簡單了,這裡就不記錄下來了 application配置檔案使用 專案預設使用的是 application.properties ,但是
hibernate學習筆記5---實體類或屬性名與資料庫關鍵字衝突、hql命名引數、hql實現通用分頁
一、實體類或屬性名與資料庫關鍵字衝突問題 1、實體類名與資料庫中的關鍵字衝突 比如:實體表User與oracle中的系統表衝突 解決方式1:在xml中新增table屬性,指定表名,使其不與name預設相等 <?xml version="1.0" encoding="
【Spring學習筆記】4:三種做屬性連線的Annotation,指示初始化和銷燬方法的Annotation
屬性連線 屬性連線是指配置DI的方式,之前學了可以在<bean ...></bean>裡面使用<constructor-arg .../>和<property .../> 元素做屬性連線。 Spring裡還可以
Spring學習筆記(二)——註解建立物件和注入屬性
一、Bean相關的註解 與SpringBean相關的註解有以下四大類: @Component:標註一個普通的Spring Bean類 @Controller:標註一個控制器元件類 @Service:標註一個業務邏輯元件類 @Repository:標註一個D
Linux學習筆記5-使用者身份與檔案許可權
使用者的身份與能力 UID(User IDentification) : 每個使用者都有對應的UID值,就像我們的身份證號碼 GID(Group IDentification):可將多個使用者加入某個組中,方便指派任務或工作 使用者組名稱與GID儲存在/e