springboot 使用區分不同環境下不同配置

辦法有很多:

1.註解:
@Profiles()+@ActiveProfiles()
@profile註解是spring提供的一個用來標明當前運行環境的註解,@ActiveProfiles用來表示使用哪種環境。當修改@ActiveProfile中的值時,所調用的內容也會隨之改變。

 

 

2.多環境配置:
通過application.properties裏spring.profiles.active=dev,pro,qa取值不同來使用不同配置文件
application-dev.properties,application-pro.properties,application-qa.properties
3.通過命令行設置屬性值:
java -jar xxx.jar --server.port=8888,通過使用—server.port屬性來設置xxx.jar應用的端口爲8888。

在命令行運行時,連續的兩個減號--就是對application.properties中的屬性值進行賦值的標識。所以,java -jar xxx.jar --server.port=8888命令,等價於我們在application.properties中添加屬性server.port=8888,該設置在樣例工程中可見,讀者可通過刪除該值或使用命令行來設置該值來驗證。

通過命令行來修改屬性值固然提供了不錯的便利性,但是通過命令行就能更改應用運行的參數,那豈不是很不安全?是的,所以Spring Boot也貼心的提供了屏蔽命令行訪問屬性的設置,只需要這句設置就能屏蔽:SpringApplication.setAddCommandLineProperties(false)。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章