spring引入properties檔案,並在controller等層獲得引入檔案中屬性的值
引入配置檔案方法一:
用context:property-placeholder引入配置檔案<!-- 配置由spring讀取jdbc的屬性檔案 -->
<context:property-placeholder location="classpath:jdbc.properties,classpath:aaaaa.properties"/>
然後${...}取即可
<property name="driverClassName" value="com.mysql.jdbc.Driver" /> <property name="url" value="${jdbc.url}" /> <property name="username" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" />
引入配置檔案方法二:
用PropertyPlaceholderConfigurer,在spring的xml檔案中配置。
2.1 使用場景一:
在配置資料庫連線池的dataSource中引入jdbc.properties檔案屬性,很常用
配置資料庫連線池時,在datasource獲取配置檔案的屬性可以參考以下兩篇文章,我就不詳細寫了,只簡要貼一點程式碼。
要在spring的xml中引用properties檔案中定義的屬性,需要進行特殊的載入,利用PropertyPlaceholderConfigurer
典型配置如下:用PropertyPlaceholderConfigurer,在spring的xml檔案中配置。<bean id="common.propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="ignoreResourceNotFound" value="true" /><!--忽略未找到檔案 -->
<property name="ignoreUnresolvablePlaceholders" value="true" />
<property name="fileEncoding" value="UTF-8" />
<property name="locations">
<list>
<value>classpath*:conf/default-*.properties</value>
<value>classpath*:conf/*.properties</value>
</list>
</property>
</bean>
這個是呼叫的locations的list賦值方式,也可以單獨一條
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations" value="classpath:com/foo/jdbc.properties"/>
</bean>
properties中配置:
jdbc.driverClassName=org.hsqldb.jdbcDriver
下面的內容中,就可以通過
value="${jdbc.driverClassName}"
來訪問properties的值
2.2 使用場景二:
在controller等層怎麼使用配置檔案中的屬性。
例如:你在spring中引入了aaaaa.properties檔案,aaaaa.properties檔案中有一個屬性a=http:8080。
當你想在controller定義一個變數的值為http:8080,如private String a="http:8080"可以這樣寫
@value("{a}")
private String a;
呵呵,是不是很高大上呢。。。。使用場景還是比較多的。
注:debug後如果發現a沒有注入值,在springmvc或者struts2的xml配置檔案中加入
<context:property-placeholder location="classpath:aaaaac.properties"/>
(主要是父子容器的問題導致沒有注入)
------------------------------------------2016-06-19更新-----------------------------------
相關推薦
spring引入properties檔案,並在controller等層獲得引入檔案中屬性的值
引入配置檔案方法一: 用context:property-placeholder引入配置檔案 <!-- 配置由spring讀取jdbc的屬性檔案 --> <context:property-placeholder location="classpath:
Linux運維之批量下載指定網站的100個圖片檔案,並找出大於200KB的檔案
題目為: 有一百個圖片檔案,它們的地址都是 http://down.fengge.com/img/1.png http://down.fengge.com/img/2.png … 一直到 http://down.fengge.com/img/100.png 批量下載這10
以位元組流接受鍵盤輸入後寫入檔案,並以緩衝位元組流複製檔案
一、程式碼及解釋 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io.File
C#呼叫批處理(bat)檔案,並獲取執行批處理(bat)檔案後返回值
/// /// 執行BAT檔案 /// /// csv檔案引數 /// bat檔案執行返回值 static string execBAT(string fileName) { ProcessStartInfo pro = new System.Diagnostics.ProcessStartInf
golang遍歷某個目錄下的檔案,並讀取檔名到一個csv檔案
package main import ( "encoding/csv" "fmt" "os" "path/filepath" "container/list" ) var outputFileName string = "filesName.csv" func Che
關於html頁面展現pdf檔案,並隱藏列印、下載等按鈕的總結
關於html頁面展現pdf檔案,並隱藏列印、下載等按鈕的總結 由於專案需求,要在頁面預覽pdf檔案而不能提供下愛列印功能,故在網上查詢了一些前輩的經驗,自己也嘗試了一番,現在講經驗總結一下。 pdfobject.js jquery.media.js pdf.js
debian9安裝arm-linux-gcc交叉編譯器,並安裝windows和linuxs共享檔案的samba伺服器
1,首先下載arm-linux-gcc安裝包,http://arm9.net/download.asp 解壓:tar -zxvf *.tar.gz 2,修改環境,使得系統能夠識別arm-linux-gcc, 方法1:##sudo vi /etc/environment 方
Windows遍歷全盤所搜檔案,並通過多執行緒顯示搜尋進度(C++/C)
程式設計軟體,系統 軟體:VS2017 工程屬性:MFC對話方塊(其他工程屬性稍作修改也適用) 系統:windows10家庭版 主要思想 1、利用CFileFind實現查詢檔案 2、利用遞迴實現全盤搜尋 3、多執行緒實現父對話方塊搜尋檔案時,子對話方塊顯示搜尋進度 軟體執行效
js 把字串儲存為txt檔案,並下載到本地
程式碼如下 exportRaw('text.txt','123123123') function fakeClick(obj) { var ev = document.createEvent("MouseE
讀取檔案,並按原格式輸出檔案內容的三種方式
1 filename = 'Car.py' 2 3 #讀取整個檔案 4 with open(filename) as file_object: 5 lines = file_object.read() 6 print(lines) 7 8 9 #遍歷檔案物件 10
【筆記】window下 使用c++遍歷資料夾及其子資料夾和檔案,並列印檔案路徑及各檔案內容
這兩天一直在學習如何使用c++遍歷資料夾、讀取檔案內容和寫入檔案。 話不多說,直接上程式碼 /** 檔案功能:遞迴遍歷資料夾,遍歷資料夾及其子資料夾和檔案.列印資料夾名稱、檔名稱和檔案數目*** 參考:https://www.cnblogs.com/collectionne/p/679230
用python批量獲取某路徑資料夾及子資料夾下的指定型別檔案,並按原資料夾結構批量儲存處理後的檔案
因為是把自己成功執行的整個程式碼按幾部分截取出來的,所以每一小節程式碼不一定能單獨執行,特此說明。 1.獲取某路徑資料夾及子資料夾下的指定pcm型別檔案的全部路徑 import os def eachfile(filepath): pathdi
提取物體檢測結果中的image_id,並把image_id存到csv 檔案裡面
假如你的物體檢測預測結果格式如下: [ {"score": 0.9953131675720215, "category_id": 1, "image_id": 139, "bbox": [415.0774841308594, 158.3828125, 50.91650390625, 141.03
C#:讀取html模板檔案,並替換修改檔案中指定值,儲存為修改後的檔案
1.準備html模板檔案:Pages/Device/DeviceModel8.html 2 using System.IO:讀取檔案內容,並替換指定內容 &nbs
Java讀取1G以上的txt檔案,並對內容進行解析,利用BufferedReader設定快取大小
讀取檔案路徑 ,讀入 使用帶緩衝的輸入輸出流,效率更高,速度更快。建立一個內部緩衝區陣列並將其儲存在 buf 中,該buf的大小預設為8192。 File file = new File(filepath); BufferedInputStream fis = ne
【複製指定目錄下的指定型別檔案,並修改後綴名】
package com.companyname.common.test; import java.io.*; /** * @Description * @Author Created by shusheng. * @Email [email protected] * @Date 2
linux編寫定時清空日誌檔案的指令碼檔案,並新增定時任務
--------例如在/ usr / spider / logs /下新增一個clearlog.sh指令碼 1.建立clearlog.sh指令碼檔案touch clearlog.sh 2.編寫clearlog.sh指令碼內容:vi clearlog.sh, 3.儲存退出並賦予許可權
Java 尋找一個目下的所有“.Java”檔案,並將他們的絕對路徑存到一個文字檔案中
import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.FilenameFilter; import java.io.IOExce
配置檔案,並讀取資訊
新建一個proprerties的檔案 建立一個讀取檔案引數的工具類 package com.surekam.alarm.util; import java.io.*; import java.util.Properties; public class PropertiesUtil
讀取Excel檔案,並對Excel檔案進行描述性分析
> mydata<-read.csv("E:\\╰凝初寒つ\\學習檔案\\大資料概論\\R語言\\soapdata.csv",header=T) > dim(mydata) > mydata<-head(mydata,41) >