在Java中,我需要知道什么是绑定操作:
ServerSocket.bind()
来自Javadoc:
将ServerSocket绑定到特定地址(IP地址和端口 数)。
我知道什么是绑定和EJB(从示例)到名称。这是相似的吗?
如何将本地地址绑定到服务器套接字?
我正在使用:
providerSocket.bind(new InetSocketAddress("192.168.0.1", 0));
我得到了Already Bound
错误!
答案 0 :(得分:25)
连接需要客户端和服务器。
对于客户端将数据发送到服务器,客户端必须具有服务器的地址和端口号。同样,对于服务器向客户端发送数据,服务器必须具有客户端的地址和端口号。
绑定套接字意味着为套接字分配地址和端口号。
当你这样做时:
providerSocket.bind(new InetSocketAddress("192.168.0.1", 0));
您收到Already Bound
错误,因为providerSocket已有地址和端口号,并且不允许分配新的地址/端口号。创建ServerSocket后,它将被绑定(除非它使用无参数构造函数java.net.ServerSocket.ServerSocket())。
答案 1 :(得分:-2)
你必须留下ServerSocket()
空白而不是ServerSocket(666,9)
你不应该做第二个例子,否则它就不会工作。在ServerSocket的括号内,您不需要输入任何内容。