客户端和服务器使用同一台机器
问题描述:
我让我的游戏在多人游戏和单人游戏中表现相同。做到这一点,我们必须在用户的计算机上播放单人游戏时托管服务器。如何使用Java在本地主机上创建服务器?难道就这么简单:客户端和服务器使用同一台机器
echoSocket = new Socket(localhost, 1234);
答
是的,这就是:
java.net.ServerSocket serverSocket = new java.net.ServerSocket(port);
while(true){
java.net.Socket socket = serverSocket.accept();
// do something
// If you want to handle multiple connections at a time,
// you will have to create a Thread for each socket.
}
编辑:如果你希望你的服务器只监听本地主机(所以没有其他计算机可以连接),你会写:
java.net.ServerSocket serverSocket = new java.net.ServerSocket(port);
serverSocket.bind(new java.net.InetSocketAddress("localhost", port));
+0
我只是添加一些手动检查,以确保其他计算机没有连接;正确? – TheNickmaster21
+0
非常感谢你!' – TheNickmaster21
你检查了[this](http://www.cise.ufl.edu/~amyles/tutorials/tcpchat/)了吗? – rfoo
非常酷的教程! – TheNickmaster21