1.命令行參數配置java
Spring Boot是基於jar包運行的,打成jar包的程序能夠直接經過spring
java -jar export.jar
能夠經過命令修改應用服務器端口安全
java -jar export.jar --server.port=9000
2.常規屬性注入服務器
常規Spring環境下,可以使用@ProperySource指定properties文件位置,而後經過@Value注入值。app
在Spring Boot中只須要在application.properties定義屬性,直接使用@Value注入便可this
3.類型安全的配置spa
每一個屬性都用@Value注入則略顯麻煩,Spring Boot提供了基於類型安全的配置方式,經過@ConfigurationProperties將properties屬性和一個Bean及其屬性關聯,實現類型安全。.net
// application.properties book.name=Spring Boot book.author=Spring
經過@ConfigurationProperties加載properties文件內的配置,經過prefix屬性指定properties的配置前綴,經過locations可執行properties文件位置。命令行
類型安全的Bean code
import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; /** * @author Kevin * @description * @date 2016/7/6 */ @Component // application.properties默認加載 因此不須要指定locations // @ConfigurationProperties(prefix = "book",locations={"classpath:author.properties"}) @ConfigurationProperties(prefix = "book") public class Book { private String name; private String author; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAuthor() { return author; } public void setAuthor(String author) { this.author = author; } }
4.Profile配置
Profile是Spring用來針對不一樣環境對不一樣配置提供的支持。application-prod.properties(生產環境)、application-dev.properties(開發環境)。經過在application.properties中設置
spring.profiles.active=prod
指定加載不一樣的profile配置文件