




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第springboot如何讀取模板文件目錄springboot讀取模板文件第一種第二種第三種SpringBoot讀取配置文件信息一、創(chuàng)建配置文件pertiesapplication.yml二、讀取配置信息@value@ConfigurationProperties三、讀取指定環(huán)境配置
springboot讀取模板文件
前言:resources下的template目錄下的模版文件
templateDir:template/
第一種
Resourceresource=newClassPathResource(templateDir+templateName);
在linux生產(chǎn)環(huán)境下無(wú)法讀取,也可能是其他原因,內(nèi)網(wǎng)不好看錯(cuò)誤
第二種
ResourceLoaderresourceLoader=newDefaultResourceLoader();
Resourceresource=resourceLoader.getResource("classpath:template/"+templateName);
InputStreaminputStream=resource.getInputStream();
各種環(huán)境下都能讀取
第三種
Resourceresource=newPathResource(templateDir+"黑灰數(shù)據(jù)分享模板.xls");
Filefile=resource.getFile();
不確定linux環(huán)境
SpringBoot讀取配置文件信息
一、創(chuàng)建配置文件
當(dāng)我們新建一個(gè)SpringBoot工程的時(shí)候,在資源文件夾resources下,會(huì)自動(dòng)生成默認(rèn)的perties配置文件。
perties
其書(shū)寫(xiě)風(fēng)格為小數(shù)點(diǎn)間隔級(jí)別書(shū)寫(xiě)全路徑。這個(gè)老代碼里面見(jiàn)的比較多。
示例如下:
server.port=8080
spring.datasource.url=jdbc:mysql://localhost:3306/demo
spring.datasource.username=root
spring.datasource.password=root
#演示內(nèi)容
demo.username=test
demo.password=test
application.yml
application.yml和perties有所不同,它采用“樹(shù)形結(jié)構(gòu)”的書(shū)寫(xiě)風(fēng)格,減少了冗余的代碼。
注意:變量的值和變量名之間有且僅有一個(gè)空格。字符串變量不需要引號(hào),當(dāng)然加上了也不會(huì)報(bào)錯(cuò)。
示例如下:
server:
port:8080
spring:
datasource:
url:jdbc:mysql://localhost:3306/demo
username:root
password:root
#演示內(nèi)容
demo:
username:test
password:test
二、讀取配置信息
@value
如果是要讀取單個(gè)或幾個(gè)配置值的信息,可以直接在業(yè)務(wù)Bean中引入這個(gè)成員變量,并加上@value注解聲明。
//其他包
importorg.springframework.beans.factory.annotation.Value;
@Component
publicclassReadConfigValueDemo{
@Value("${demo.username}")
privateStringusername;
@Value("${demo.password}")
privateStringpassword;
//業(yè)務(wù)代碼
@ConfigurationProperties
如果需要讀取的配置文件很多,或則是一組相關(guān)的配置文件,希望在系統(tǒng)組裝起來(lái)復(fù)用,那么我們可以采用構(gòu)建配置Bean的方式。
1.添加pom依賴
這是為了第二步配置Bean的時(shí)候能掃描到配置文件信息
dependency
groupIdorg.springframework.boot/groupId
artifactIdspring-boot-configuration-processor/artifactId
optionaltrue/optional
/dependency
2.創(chuàng)建配置Bean
通過(guò)ConfigurationProperties的prefix前綴屬性,我們可以指定一組配置值,注意屬性名要和配置文件一致,類名無(wú)所謂。
importperties.ConfigurationProperties;
importorg.springframework.stereotype.Component;
@Component
@ConfigurationProperties(prefix="demo")
publicclassDemoConfig{
privateStringusername;
privateStringpassword;
publicStringgetUsername(){
returnusername;
publicStringgetPassword(){
returnpassword;
3.業(yè)務(wù)代碼中使用
哪里需要這一組配置文件,就通過(guò)@Resource或則@Autowired注解自動(dòng)注入即可。
注意:注入配置Bean的類,本身必須也是Spring管理下的一個(gè)Bean,否則會(huì)注入null值。這種情況在一些提供靜態(tài)方法的工具類上可能出現(xiàn)。
@Service
publicclassDemoServiceImpl{
@Resource
privateDemoConfigdemoConfig;
publicvoidtest(){
//讀取配置Bean中的值
System.out.println(demoConfig.getUsername());
}
三、讀取指定環(huán)境配置
SpringBoot項(xiàng)目支持多套配置,例如生產(chǎn)環(huán)境prod、開(kāi)發(fā)環(huán)境dev、測(cè)試環(huán)境test等。
以application.yml格式為例:
#當(dāng)前啟用dev配置文件
spring:
profiles:
active:dev
這種情況下,application.yml和application-dev.yml均能生效。同名的配置項(xiàng)以具體環(huán)境下的配置文件為主。
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 大數(shù)據(jù)助力教育個(gè)性化與精準(zhǔn)化
- 心理分析與現(xiàn)代教育技術(shù)的融合
- 教育與科技的結(jié)合教學(xué)輔助型教育機(jī)器人研究
- 未來(lái)教育視域下的技術(shù)美學(xué)與空間設(shè)計(jì)
- 品牌數(shù)字營(yíng)銷戰(zhàn)略下的多平臺(tái)聯(lián)動(dòng)運(yùn)營(yíng)策略
- 教育領(lǐng)域的大數(shù)據(jù)技術(shù)應(yīng)用及未來(lái)趨勢(shì)分析報(bào)告
- 全球醫(yī)藥市場(chǎng)2025年創(chuàng)新藥物研發(fā)管線布局策略報(bào)告
- 全球鈾礦資源分布特點(diǎn)及2025年核能產(chǎn)業(yè)技術(shù)創(chuàng)新與產(chǎn)業(yè)協(xié)同研究報(bào)告
- 公交優(yōu)先戰(zhàn)略與2025年城市交通擁堵治理的公共交通優(yōu)先政策實(shí)施保障研究報(bào)告
- Carbonic-anhydrase-inhibitor-32-生命科學(xué)試劑-MCE
- 2022年劍河縣事業(yè)單位考試真題及答案
- 電氣控制與PLC應(yīng)用技術(shù)(三菱機(jī)型)高教版YL-235A送料機(jī)構(gòu)控制電路的連接與編程教學(xué)案例高教版
- GB/T 5163-2006燒結(jié)金屬材料(不包括硬質(zhì)合金)可滲性燒結(jié)金屬材料密度、含油率和開(kāi)孔率的測(cè)定
- GB/T 17989.2-2020控制圖第2部分:常規(guī)控制圖
- 建設(shè)項(xiàng)目安全設(shè)施‘三同時(shí)’課件
- 2022語(yǔ)文課程標(biāo)準(zhǔn):“語(yǔ)言文字積累與梳理”任務(wù)群解讀及實(shí)操
- DB15T 489-2019 石油化學(xué)工業(yè)建設(shè)工程技術(shù)資料管理規(guī)范
- 內(nèi)蒙古自治區(qū)通遼市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名居民村民委員會(huì)明細(xì)及行政區(qū)劃代碼
- 螺旋溜槽安裝標(biāo)準(zhǔn)工藝
- 2022年人教版六年級(jí)下冊(cè)語(yǔ)文期末考試卷
- 《土地開(kāi)發(fā)整理項(xiàng)目預(yù)算編制暫行辦法》
評(píng)論
0/150
提交評(píng)論