在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的方法可能会因操作系统和Java版本而有所不同。