和服务器建立TCP连接的工具

来源:互联网 发布:php qq发邮件源代码 编辑:程序博客网 时间:2024/06/10 05:22

工具

个人知道的,和服务器建立TCP连接的工具有两个:

  • telnet
  • nc

使用方法

在看《Java核心卷2》的Socket使用方法时,看到书上例子是使用 telnet 进行测试的。上网看了一下 telnet 原理。telnet 其实就是一个建立TCP连接,并且能向服务器发送和接收“字符流”的工具。

前一段时间,看到了nc命令,这个也可以建立 TCP 监听,并且还可以连接 TCP。所以,下面使用 telnet 的地方,也可以使用nc命令。

Java程序如下:

package socket;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.io.PrintWriter;import java.net.ServerSocket;import java.net.Socket;import java.util.Scanner;public class SocketServerTest {    public static void main(String[] args) throws IOException {        try (ServerSocket server = new ServerSocket(9111)) {            try (Socket incoming = server.accept()) {                InputStream inStream = incoming.getInputStream();                OutputStream outStream = incoming.getOutputStream();                try (Scanner in = new Scanner(inStream)) {                    PrintWriter out = new PrintWriter(outStream, true);                    out.println("Hello! Say BYE to exit");                    boolean done = false;                    while (!done && in.hasNextLine()) {                        String line = in.nextLine();                        out.println("Echo:" + line);                        if (line.trim().equals("BYE")) done = true;                    }                }            }        }    }}

telnet命令:

telnet localhost 9111

nc命令:

nc localhost 9111
原创粉丝点击