SpringBoot启动配置参数
时间: 2023-08-22 17:35:40 浏览: 183
Spring Boot 可以使用以下方式配置启动参数:
1. application.properties/yml 文件
在 application.properties 或 application.yml 文件中,我们可以通过键值对的方式配置启动参数,例如:
```
server.port=8080
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=123456
```
2. 命令行参数
我们也可以在命令行中使用 -- 参数来配置启动参数,例如:
```
java -jar myapp.jar --server.port=8080 --spring.datasource.url=jdbc:mysql://localhost:3306/test --spring.datasource.username=root --spring.datasource.password=123456
```
3. 环境变量
我们可以使用环境变量来配置启动参数,例如:
```
export SERVER_PORT=8080
export SPRING_DATASOURCE_URL=jdbc:mysql://localhost:3306/test
export SPRING_DATASOURCE_USERNAME=root
export SPRING_DATASOURCE_PASSWORD=123456
java -jar myapp.jar
```
4. 配置类
我们也可以使用配置类来配置启动参数,例如:
```java
@Configuration
public class AppConfig {
@Value("${server.port}")
private int port;
@Bean
public TomcatServletWebServerFactory tomcatFactory() {
return new TomcatServletWebServerFactory() {
@Override
protected void postProcessContext(Context context) {
SecurityConstraint securityConstraint = new SecurityConstraint();
securityConstraint.setUserConstraint("CONFIDENTIAL");
SecurityCollection collection = new SecurityCollection();
collection.addPattern("/*");
securityConstraint.addCollection(collection);
context.addConstraint(securityConstraint);
}
};
}
@Bean
public EmbeddedServletContainerCustomizer containerCustomizer() {
return container -> {
TomcatEmbeddedServletContainerFactory tomcat = (TomcatEmbeddedServletContainerFactory) container;
tomcat.addConnectorCustomizers(connector -> {
connector.setPort(port);
});
};
}
}
```
以上是 Spring Boot 中配置启动参数的几种方式。
阅读全文