Java中的简单客户端 - 服务器应用程序

时间:2015-03-02 23:31:18

标签: java eclipse client-server

我开始学习服务器 - 客户端应用程序,我将这个Java代码示例用于客户端和服务器:

http://docs.oracle.com/javase/tutorial/networking/sockets/examples/EchoServer.java http://docs.oracle.com/javase/tutorial/networking/sockets/examples/EchoClient.java

我在两个Eclipse实例上运行了两个应用程序。

代码保持不变,除了更改:

            //out.println(inputLine);
            System.out.println(inputLine);

在服务器端。 对于印刷品#34; Hello"," Bye"在服务器端的main()的开头和结尾。当然,我将客户端使用的IP设置为我的计算机的IP(使用ipconfig - 不是唯一的IP)

根据我的理解,客户端发送的所有内容都应出现在服务器标准输出上,直到客户端键入" Cntrl C" (除非我理解错了)。

这是我在客户端编写的输入:

boooooooooo
baaaaaa
paaaaaaa

这就是我在服务器端得到的:

Hello
boooooooooo

这里有些事情让我意外 - 服务器似乎在main()中运行, 但是从第一次印刷后的某些原因来看,它停止了。

我尝试在while行的客户端代码中设置断点

while ((userInput = stdIn.readLine()) != null) { out.println(userInput); System.out.println("echo: " + in.readLine()); }

但程序流程遇到的只有两次,然后再到那里了。 当它输入时,userInput没有被评估,我怀疑因为readline()返回null。但为什么要呢?如果EOF字符未插入客户端的标准输入。

0 个答案:

没有答案