在Java中,可以使用以下方式獲取端口號和進程ID(PID):
1. 獲取端口號:
- 如果你正在處理一個已知的網絡套接字(Socket)對象,可以使用`getLocalPort()`方法獲取該套接字綁定的本地端口號。例如:
Socket socket = new Socket("localhost", 8080);
int port = socket.getLocalPort();
- 如果你正在處理一個ServerSocket對象,可以使用`getLocalPort()`方法獲取該服務器套接字綁定的本地端口號。例如:
ServerSocket serverSocket = new ServerSocket(8080);
int port = serverSocket.getLocalPort();
2. 獲取進程ID(PID):
- 在Java 9及更高版本中,可以使用`ProcessHandle`類來獲取當前進程的PID。例如:
long pid = ProcessHandle.current().pid();
- 在Java 8及更低版本中,可以使用`java.lang.management`包中的`ManagementFactory`類來獲取當前進程的PID。例如:
import java.lang.management.ManagementFactory;
String processName = ManagementFactory.getRuntimeMXBean().getName();
long pid = Long.parseLong(processName.split("@")[0]);
這些方法可以幫助你在Java中獲取端口號和進程ID。請注意,獲取進程ID的方法可能會因操作系統(tǒng)和Java版本而有所不同。