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();

    }

}

你可能感兴趣的:(tcp)