English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
で実行されます。 8080 Spring Bootフレームワークは、Spring Bootアプリケーションを実行するためのデフォルトのエンブッドサーバー(Tomcat)を提供します。これはポート
上で実行されます。Spring Bootでポートを変更できます。
を使用して application.properties Spring Bootでポートを変更できます。以下のインターフェースと属性ファイルを使用して を使用して application.yml Spring Bootでポートを変更できます。以下のインターフェースと属性ファイルを使用して を使用して EmbeddedServletContainerCustomizer ファイル を使用して WebServerFactoryCustomizer インターフェース を使用してコマンドライン引数
デフォルトのポートを変更する場合は、application.propertiesファイルを使用することをお勧めします。これはデフォルトの値を簡単かつ迅速にオーバーライドする方法です。以下のコマンドを使用します。 server.port 属性がデフォルトの属性をオーバーライドします。
例えば、デフォルトのポートを8080を8082、application.propertiesファイルでこの属性を指定してください。
application.properties
server.port=8082
さらに、port属性を0に設定することもできます。これにより、アプリケーションのランダムなポートをスキャンします。アプリケーションを再起動するたびに、新しいポートが使用されます。
application.properties
server.port=0
同様に、以下のように使用することもできます。 yml ファイルを使用してデフォルトのポートを変更します。 application.properties または application.yml ファイルの二つは同じように機能します。
application.yml
server: port:8082
あなたが使用しているのは Spring Boot 1.x バージョンが、インターフェースを提供します EmbeddedServletContainerCustomizer デフォルトポートを変更します。
EmbeddedServletContainerCustomizerインターフェース
EmbeddedServletContainerCustomizerを使用して、自動設定の組み込みServletコンテナをカスタマイズできます。コンテナの起動前に、この種のBeanは全てコンテナ工場からコールバックを受け取ります。したがって、ポートを設定できます。 ポート、アドレスおよび 均一エラーページ。それは org.springframework.boot.context.embedded パッケージで定義されています。
インターフェースに含まれています。 customize()メソッドを解析します。カスタマイズと指定を許可します。 ConfigurableEmbeddedServletContainer 。それは、カスタマイズする必要がある名前の コンテナの引数。
void customize(ConfigurableEmbeddedServletContainer container)
ConfigurableEmbeddedServletContainerインターフェース
これは EmbeddedServletContainerFactory インターフェース(作成 EmbeddedServletContainersの工場インターフェース)での変更に対応するインターフェースです。 。それは org.springframework.boot.context.embedded パッケージで定義されています。setPort()メソッドという名前のポートを変更する方法を含んでいます。
setPort()メソッド
setPort()メソッドで組み込みservletコンテナが侦聴するポートを設定します。ポートが指定されていない場合、デフォルトポートを使用します。 8080 。内蔵のサーバーの自動起動機能を無効にするには、ポート -1 。ポート-1は、どのポートもリスンしないように、Webアプリケーションコンテキストを起動するために使用されます。このメソッドはint型の引数ポート(設定する por t)。
void setPort(int port)
以下の例では、以下の名前の ServerCustomizer のクラスを実装し、EmbeddedServletContainerCustomizerインターフェースを実装しました。customize()メソッドをオーバーライドし、ポート設定を呼び出しました。 8097 のsetPort()メソッド。
ServerCustomizer.java
@Component public class ServerCustomizer implements EmbeddedServletContainerCustomizer public void customize(ConfigurableWebServerFactory factory) @Override public void customize(ConfigurableEmbeddedServletContainer container) public void customize(ConfigurableWebServerFactory factory) container.setPort(8097factory.setPort( ); );
Spring Boot 2の.xバージョンでは提供されています WebServerFactoryCustomizer インターフェースを使用してデフォルトのポートを変更します。これは org.springframework.boot.web.server で定義されています。このパラメータはWebサーバーファクトリのタイプを解釈します。 T 。
public interface WebServerFactoryCustomizer<T extends WebServerFactory<
インターフェースに含まれています。 customize()メソッド。これは、私たちがカスタマイズしたい名前の factory の引数を含んでいます。このようなタイプのBeanは、コンテナの起動前にすべてサーバーファクトリを通じてコールバックされます。したがって、以下の方法を設定できます。 ポート、アドレスおよび エラーページ。
void customize(T factory)
WebServerFactoryインターフェース
これはファクトリのマークインターフェースです。このインターフェースは org.springframework.boot.web.server パッケージで定義されています。これにより、Webサーバーファクトリが作成されます。 WebServer 。
ConfigurableWebServerFactory
これはWebサーバーファクトリを設定するインターフェースです。このインターフェースはConfigurableWebServerFactoryパッケージで定義されています。 org.springframework.boot.web.server で定義されています。これはorg.springframework.boot.web.serverパッケージを拡張しています。 WebServerFactory および ErrorPageRegistory 。これには、ポートを変更する方法が含まれています。 setPort()メソッド。
setPort()
setPort()メソッドを使用して内蔵servletコンテナのポートをリスンするように設定します。ポートを指定しない場合、デフォルトのポートを使用します。 8080 。内蔵のサーバーの自動起動機能を無効にするには、ポート -1 。ポート-1は、どのポートもリスンしないように、Webアプリケーションコンテキストを起動するために使用されます。このメソッドはint型の引数ポート(設定する port )。
void setPort(int port)
以下の例では、以下の名前の ServerCustomizer のクラス、このクラスはWebServerFactoryCustomizerインターフェースを実装しています。我們はcustomize()メソッドをオーバーライドし、setPort()メソッドを呼び出してポートを設定しました。 9001 。
ServerCustomizer.java
@Component public class ServerCustomizer implements WebServerFactoryCustomizer<ConfigurableWebServerFactory< public void customize(ConfigurableWebServerFactory factory) @Override @Override public void customize(ConfigurableWebServerFactory factory) {9001factory.setPort( ); );
コマンドラインパラメータを使用して
Spring Bootでポートを変更するには、コマンドラインパラメータを使用することもできます。以下の手順に従います: のポートを選択します。したがって、それを選択しました。実行を選択して、どんなSpring Bootアプリケーションでも開くことができます。メニューを右クリックして実行設定-
、またはアプリケーションファイルを右クリックして-<実行方法
<
実行設定。画面には「実行設定」ウィンドウが表示されます。実行設定ウィンドウ
がスクリーンに表示されます。 ポートを変更するアプリケーションファイルを選択します。この例では、 SpringBootHelloWorldExampleApplication のポートを選択します。したがって、それを選択しました。をクリックしてパラメータ
タブ VMパラメータを書き込むことができます。フィールドに -Dserver.port = 9001 。あなたは、9001。
今、それぞれをクリックしてアプリおよび実行ボタン
「実行」ボタンをクリックすると、アプリケーションが開始され、以下のようにコントロールパネルを表示して、どのポートのサーバーで実行されているかを確認できます。
ブラウザを開き、URL http:を呼び出してください。//localhost: 9001。それはポート 9001 でアプリケーションを実行してください。