gpt4 book ai didi

java - 客户端服务器程序未建立连接

转载 作者:行者123 更新时间:2023-12-01 11:17:40 24 4
gpt4 key购买 nike

我对 java 套接字编程非常陌生。我开发了一个简单的客户端服务器程序,其中涉及actionListener。单击加入按钮后,无法建立连接,我的客户端程序没有对我做出任何响应。当我首先运行服务器程序时,服务器程序会响应程序中的一些初始消息以指示服务器正在启动,但是当我运行客户端程序并尝试连接到服务器时,它不会响应任何内容。另外,该程序正在我的电脑上使用两个 CMD 进行测试

我尝试了几种方法,例如flush()、close(),但它也不起作用
Simple client server program not working
这是我的问题的引用来源之一

这是我的客户端程序的一部分

public void actionPerformed(ActionEvent e)
{
if(e.getSource()==btn1)
{
try
{
Socket s = new Socket("127.0.0.1",8888); //initialize the socket in client
DataInputStream input = new DataInputStream(s.getInputStream()); // receive message from server
DataOutputStream output = new DataOutputStream(s.getOutputStream()); // send the message to server
String word = input.readUTF(); // read the input from server
JOptionPane.showMessageDialog(null,word); // display the message
output.flush();
output.close();
btn2.setVisible(true);
btn3.setVisible(true);
btn4.setVisible(true);
}
catch(IOException exp)
{
JOptionPane.showMessageDialog(null,"Client : Can't Connect To Server, Please Try Again");
}

}

这是我的服务器程序
http://codepad.org/AlUr9Qi1

最佳答案

在我看来,问题出在您的服务器代码中。您的服务器在接受时循环:

 while(true)
{
socket = server.accept();
}

因此,您接受套接字并且不执行任何其他操作,并且永远不会到达处理套接字流的代码。您需要从该循环内的套接字读取/写入,可能跨越一个线程来处理套接字,同时继续等待另一个客户端。

关于java - 客户端服务器程序未建立连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31613094/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com