TCP服务器端和客服端(一)

就是一个客服端(Socket)和服务器(ServerSocket)端的链接间。我的理解是一个服务端可以链接多个客服端。

在客服端有输入流outPutStream. 用于发送数据

在服务器端有输出流。inputStream. 用于接受数据。

其他的我觉得多写几次就能够理解了。

客服端Socket

package Text;

import java.io.OutputStream;
import java.net.InetAddress;
import java.net.Socket;

public class Soc
{
    public static void main(String[] args)throws Exception
    {
        
         //发送端的链接    
        Socket s = new Socket(InetAddress.getByName("192.168.1.100"),10010); 
        //给一个输入流
        
        OutputStream out = s.getOutputStream();
        
        //写入到输出流里面去。
        out.write("我在想你是不是笨蛋呢?".getBytes());
        s.close();
    }
}

下面是服务器端。ServerSocket

package Text;

import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;


public class socSev
{
    //TCP服务端
    //1.建立一个服务端的socket服务。并且监听相应的端口
    //2.然后获取到客服端的对象 。 accept();
    //4.然后读取相应的数据
    public static void main(String[] args) throws Exception
    {
        //创建服务器端的套接字
        ServerSocket ss = new ServerSocket(10010);
        Socket s = ss.accept();//获取客服端的套接字
        
        
        //获取客服端的ip地址
        String ip = s.getInetAddress().getHostAddress();
        System.out.println(ip+"链接中................");
        //获取输入字节流
        InputStream input = s.getInputStream();
        byte[] buf = new byte[1024];
        //读取数据
        int i=input.read(buf);
        System.out.println(new String(buf,0,i));
        
        //关闭连接
        s.close();
        ss.close();
    }
}
原文地址:https://www.cnblogs.com/ganwei/p/4553519.html