第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在Spring Boot的application.properties中使用env變量

在Spring Boot的application.properties中使用env變量

慕斯709654 2019-10-15 09:55:37
我們正在開發(fā)一個Spring Boot Web應用程序,正在使用的數(shù)據(jù)庫是MySql;我們擁有的設置是我們首先在本地對其進行測試(意味著我們需要在PC上安裝MySql);然后我們推向Bitbucket ;Jenkins自動檢測到對Bitbucket的新推送并在其上進行構建(要使Jenkins mvn構建通過,我們還需要在運行Jenkins的虛擬機上安裝MySql)。如果Jenkins構建通過,我們會將代碼推送到OpenShift上的應用程序(使用Jenkins上的Openshift部署插件)。我們的問題,因為你可能已經(jīng)想通了就是:在application.properties我們不能對MySql信息進行硬編碼。由于我們的項目將在3個不同的地方(local,Jenkins和OpenShift)運行,因此我們需要使數(shù)據(jù)源字段動態(tài)化application.properties(我們知道這樣做的方式不同,但目前正在研究此解決方案)。spring.datasource.url = spring.datasource.username = spring.datasource.password = 我們想到的解決方案是在本地和Jenkins vm中創(chuàng)建系統(tǒng)環(huán)境變量(以OpenShift命名它們的方式命名),并分別為其分配正確的值:export OPENSHIFT_MYSQL_DB_HOST="jdbc:mysql://localhost"export OPENSHIFT_MYSQL_DB_PORT="3306"export OPENSHIFT_MYSQL_DB_USERNAME="root"export OPENSHIFT_MYSQL_DB_PASSWORD="123asd"我們已經(jīng)做到了,而且行得通。我們還檢查了Map<String, String> env = System.getenv();是否可以將環(huán)境變量設置為java變量,如下所示:String password = env.get("OPENSHIFT_MYSQL_DB_PASSWORD");   String userName = env.get("OPENSHIFT_MYSQL_DB_USERNAME");   String sqlURL = env.get("OPENSHIFT_MYSQL_DB_HOST"); String sqlPort = env.get("OPENSHIFT_MYSQL_DB_PORT");現(xiàn)在剩下的唯一事情就是我們需要在我們的程序中使用這些java變量application.properties,這就是我們遇到的麻煩。在哪個文件夾,以及我們?nèi)绾?,需要分配password,userName,sqlURL,和sqlPort變量application.properties能夠看到他們,我們?nèi)绾螌⑺鼈儼赼pplication.properties?我們嘗試了許多事情,其中之一是:spring.datasource.url = ${sqlURL}:${sqlPort}/"nameofDB"spring.datasource.username = ${userName}spring.datasource.password = ${password}到目前為止沒有運氣。我們可能沒有將這些env變量放在正確的類/文件夾中,或者在中錯誤地使用了它們application.properties。非常感謝您的幫助??!謝謝!
查看完整描述

3 回答

  • 3 回答
  • 0 關注
  • 5352 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號