Socket套接字的简单用法

tech2024-06-27  69

什么是socket?

应用层通过传输层传输数据时,TCP或UDP会遇到同时为多个应用进程提供并发的服务, 而多个TCP连接或多个应用程序进程使用同一个TCP协议端口.

为了区别不同的连接和进程,许多计算机操作系统为了应用程序与TCP/IP协议交互提供了称为套接字(socket)的接口,所以,套接字是应用程序和TCP/UDP之间通信的门

Socket描述了一个IP、端口对。它简化了程序员的操作,知道对方的IP以及PORT就可以给对方发送消息,再由服务器端来处理发送的这些消息。所以,Socket一定包含了通信的双发,即客户端(Client)与服务端(server)

Client

package com.mtlk.wd; import java.io.OutputStream; import java.net.Socket; public class ClientDemo { public static void main(String[] args) throws Exception{ Socket soc = new Socket("127.0.0.1",9000); OutputStream ost = soc.getOutputStream(); String str = "Hello world"; ost.write(str.getBytes()); soc.close(); } }

Server

package com.mtlk.wd; import java.io.InputStream; import java.net.ServerSocket; import java.net.Socket; import java.util.Scanner; public class ServerDemo { public static void main(String[] args) throws Exception{ ServerSocket ss = new ServerSocket(9000); Socket s = ss.accept(); InputStream is = s.getInputStream(); Scanner sc = new Scanner(is); System.out.println(sc.next()); ss.close(); s.close(); } }
最新回复(0)