web開發(fā)幾種獲取資源屬性文件的方法

? ? ? ? web開發(fā),經(jīng)常使用資源屬性(*.properties)存儲系統(tǒng)變量,例如db.properties存放jdbc連接屬性,redis.properties存放redis連接屬性。而程序往往多個場景使用這些系統(tǒng)變量,下面根據(jù)使用場景對獲取資源屬性文件進行詳細描述。

一、xml文件獲取資源屬性文件

? ? ? ? spring mvc + mybatis項目,需要指定工程數(shù)據(jù)源和mybatis配置屬性,一般是以spring-mybatis.xml作為mybatis在spring中的集成配置。spring-mybatis.xml可以直接使用el表達式獲取db.proprities文件中變量,eg:${jdbc.username}、${jdbc.password}

db.properties
spring-mybatis.xml

二:JAVA程序獲取資源屬性文件

? ? ?java程序有兩種方法可獲取配置文件中變量;

2.1使用ResourceBundle獲取

? ? ? java.util.ResourceBundle提供國際化捷徑。通過此類,可以讀取資源屬性文件(*.properties),然后依據(jù)*.properties文件的名稱信息,匹配當前系統(tǒng)的國別語言信息,然后獲取相應的*.properties文件的內(nèi)容。

? ? ? 首先根據(jù)文件路徑和語言環(huán)境獲取國際化文件;

? ? ? ?再根據(jù)資源屬性文件中key值,獲取value;

2.2使用spring @Value注解方式直接獲取資源屬性文件中變量值

? ? ? ?此種方法,直接可以作用在類的變量上,變量量加上@Value("xxx")注解,即可從資源屬性文件查找變量xxx=yyy,并把yyy set給類的變量;eg:

? ? ? ? 從資源屬性文件中查找imghost.url的值,并將值set給imghost變量;

三、頁面獲取資源屬性文件

? ? ? ?有些業(yè)務場景,頁面需要獲取資源屬性文件中的變量,并展示出。下面針對freemarker渲染模板引擎,講講在.ftl如何獲取資源文件。

1、配置freemarker視圖解析器;用于視圖解析,后臺將需要渲染在頁面上的對象放入ModelMap中,通過視圖解析器,解析并渲染至頁面中;

freemarker解析器配置

2、配置spring資源文件;“messages”是資源配置文件名稱,messages.properties

3、自定義spring.ftl文件;spring.ftl文本內(nèi)容鏈接;

4、頁面引用spring.ftl

<#import"/common/spring.ftl" as spring/>

5、使用<@spring/>實現(xiàn)讀取資源文件;eg:<@spring.message“jdbc.username”/>,從第二步配置資源文件message.properties讀取jdbc.username的值。

ps:對spring整合freemarker國際化的朋友,可以跟蹤spring.ftl、AbastractTemplateView.java、RequestContext.java源碼,里面有答案。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,271評論 6 342
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,551評論 19 139
  • 這些屬性是否生效取決于對應的組件是否聲明為 Spring 應用程序上下文里的 Bean(基本是自動配置的),為一個...
    發(fā)光的魚閱讀 1,488評論 0 14
  • 1. 簡介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL、存儲過程以及高級映射的優(yōu)秀的...
    笨鳥慢飛閱讀 6,232評論 0 4
  • 五一放假,想要到塘沽找我的大學同學王老師玩兒,順便帶上我的兩個好朋友,一個是我的同事,就叫她善良吧,一個有想法...
    橫折閱讀 430評論 1 2

友情鏈接更多精彩內(nèi)容