Как настроить порт для приложения Spring Boot
Как настроить порт TCP/IP, на котором будет слушать приложение Spring Boot, чтобы оно не использовало порт по умолчанию 8080
?
5 ответ(ов)
Вы можете также настроить порт программно.
Для Spring Boot 2.x.x:
@Configuration
public class CustomContainer implements WebServerFactoryCustomizer<ConfigurableServletWebServerFactory> {
public void customize(ConfigurableServletWebServerFactory factory) {
factory.setPort(8042);
}
}
Для более старых версий:
@Configuration
public class ServletConfig {
@Bean
public EmbeddedServletContainerCustomizer containerCustomizer() {
return (container -> {
container.setPort(8012);
});
}
}
Таким образом, вы можете задать желаемый порт для вашего приложения в зависимости от используемой версии Spring Boot.
Вы можете установить порт в Java коде следующим образом:
HashMap<String, Object> props = new HashMap<>();
props.put("server.port", 9999);
new SpringApplicationBuilder()
.sources(SampleController.class)
.properties(props)
.run(args);
Либо можно указать порт в файле application.yml
:
server:
port: 9999
Или в файле application.properties
:
server.port=9999
Также можно задать порт как параметр командной строки:
-Dserver.port=9999
Если вы используете application.yml
, добавьте следующие строки в этот файл:
server:
port: 9000
Также, если вы хотите назначить случайный порт, используйте 0 вместо 9000.
Чтобы задать порт для вашего Spring Boot приложения, добавьте следующую строку в файл application.properties
:
server.port=8080
Эта настройка указывает серверу, что он должен слушать на порту 8080. Не забудьте перезапустить приложение, чтобы изменения вступили в силу. Если нужно использовать другой порт, просто измените число на желаемое значение.
Если вам нужно задать порт программным способом, вы можете сделать это во время запуска приложения:
System.getProperties().put("server.port", 80);
SpringApplication.run(App.class, args);
Это может быть полезно для ситуаций, когда порт зависит от окружения. Хорошего дня!
Как работают сервлеты? Инстанцирование, сессии, общие переменные и многопоточность
Разница между StringBuilder и StringBuffer
Java 8: Преобразование List<V> в Map<K, V>
Возможные значения конфигурации hbm2ddl.auto в Hibernate и их назначение
Что такое PECS (Producer Extends Consumer Super)?