public class TestSocketUtils extends ObjectSE
localhost
で使用可能な TCP ポートを見つけるためのシンプルなユーティリティ。 これは SocketUtils
の限定された形式であり、Spring Framework 5.3.16 から廃止され、Spring Framework 6.0 で削除されました。
TestSocketUtils
は、使用可能なランダムポートで外部サーバーを起動する統合テストで使用できます。ただし、これらのユーティリティは、指定されたポートのその後の可用性について保証しないため、信頼できません。TestSocketUtils
を使用してサーバーの使用可能なローカルポートを見つける代わりに、オペレーティングシステムによって選択または割り当てられたランダムな一時ポートで起動するサーバーの機能に依存することをお勧めします。そのサーバーと対話するには、サーバーが現在使用しているポートをサーバーに照会する必要があります。
コンストラクターと説明 |
---|
TestSocketUtils() TestSocketUtils は静的ユーティリティメソッドのみで構成されていますが、このコンストラクターは意図的に public です。 |
修飾子と型 | メソッドと説明 |
---|---|
static int | findAvailableTcpPort() [1024, 65535] の範囲からランダムに選択された使用可能な TCP ポートを見つけます。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public TestSocketUtils()
TestSocketUtils
は静的ユーティリティメソッドのみで構成されていますが、このコンストラクターは意図的に public
です。このクラスの静的メソッドは、Spring 式言語(SpEL)と次の構文を使用して、XML 構成ファイル内から呼び出すことができます。
<bean id="myBean" ... p:port="#{T(org.springframework.test.util.TestSocketUtils).findAvailableTcpPort()}" />
このコンストラクターが private
の場合、使用箇所ごとに完全修飾クラス名を SpEL の T()
関数に指定する必要があります。このコンストラクターが public
であるという事実により、次の例に示すように、SpEL を使用してボイラープレート構成を減らすことができます。
<bean id="socketUtils" class="org.springframework.test.util.TestSocketUtils" />
<bean id="myBean" ... p:port="#{socketUtils.findAvailableTcpPort()}" />
public static int findAvailableTcpPort()
IllegalStateExceptionSE
- 使用可能なポートが見つからなかった場合