Socket有插座、插口、插槽的意思。只要两台计算机的插口(Socket)连接起来,这两台计算机就能进行网络通信。套接字(Socket)允许程序将网络连接当成一个流,可以向 这个流中写字节,也可以从这个流中读取字节,套接字(Socket)为程序员屏蔽了网络底层细节。
Java中有两种TCP套接字:一种是服务器套接字(ServerSocket),一种是客户端套接字(Socket)。
ServerSocket类设计成在等待客户端建立连接之前不做任何事的“监听器”。
Socket类为建立于服务器连接而设计。
一个典型的C/S应用为
首先在服务器运行ServerSocket程序
ServerSocket server = new ServerSocket(9999);//监听本机的9999端口
Socket socket = server.accept();//accept()是一个阻塞方法,直到有客户端的请求
Socket socket = new socket("127.0.0.1",9999);//与制定IP的服务器和端口进行通信
通过以上程序就能建立服务器和客户端的连接,注意一定要先运行服务器端的程序后才运行客户端的程序。建立连接后就可以通过Socket通过流的形式进行通信。