在计算机网络编程技术中,两个进程或者说两台计算机可以通过一个网络通信连接实现数据的交换,这种通信链路的端点就被称为“套接字”(英文名称也就是Socket)。

        在我们进行创建客户端和服务器,并在客户端和服务器之间传输数据时,我们会使用到Socket的方法和之前学习的IO流的方法。

        完成这一操作的步骤:

1、先创建一个服务器类,通过

ServerSocket serverSocket=new ServerSocket(8888);

创建一个服务器端口,端口为8888,我们就可以在客户端中通过查找这个端口8888进行与服务器的连接。(括号里的数字可以填写1-2^16次方中的任意一个数),因为1-1024的数字基本已经被占用了,所以我们在创建端口时不要使用1-1024的数字。

2、然后书写以下代码通过accept方法接受套接字。

Socket socket=serverSocket.accept();

3、然后创建一个客户端类,通过以下代码连接到服务器中的端口

Socket socket=new Socket(InetAddress.getLocalHost,8888);

因为我是在同一台电脑上创建的服务器和客户端,所以括号左边就通过这个方法选到本机的ip地址,如果在不同机器上创建的,则左边就可以写服务器对应的ip地址或者域名,如百度就是

Socket socket=new Socket("www.baidu.com",8888);

4、连接完成后可以通过socket.getOutputSteam()方法在客户端中书写数据。

OutputStream outputStream = socket.getOutputStream();
outputsteam.write("hello,beijing".getbyte())

5、在服务器中通过socket.getInputSteam()方法接受数据

InputStream inputStream = socket.getInputStream();

然后在使用IO流接收数据的方法,先创建一个数组,然后通过while循环遍历这个数组得到数据,就完成了客户端与服务器之间的数据交换。

6、写完以上代码必须对socket和流进行关闭。即socket.close();

                                                                              inputsteam.close();等。