/********************************************************************************************
* author:conowen@大钟
* E-mail:conowen@hotmail.com
* http://blog.csdn.net/conowen
* 注:本文为原创,仅作为学习交流使用,转载请标明作者及出处。
********************************************************************************************/
1、Socket的简介
通常来说,Socket也称为“套接字”。从字面上面来看,socket的中文意思为“插座”。举个例子,一台服务器可能会提供很多服务,每种服务对应一个Socket,(也可以这么说,每个Socket就是一个插座,客户若是需要这种服务,就将插头到相应的插座上面就行了)而客户的“插头”也是一个Socket。服务端要和客户端通信,两者都要实例化一个Socket。
Java在包java.net里面提供了两个类:ServerSocket和Socket,前者用于实例化服务器的Socket,后者用于实例化客户端的Socket,也就是说服务器和客户端的Socket是不一样的。
2、Socket的通信过程简单描述
通常来说,我们只需要构造客户端的Socket来和目标服务器通信即可,但是为了方便演示,下面假设服务器也是我们自己架构。
2.1、首先,构造客户端Socket
构造客户端的Socket方法有以下几种,参数里面通常都是指向目标服务器的IP地址、目标服务器的端口号,目标服务器的主机名。
如://注意,0~1023端口为系统保留,用户设定的端口号应该大于1023
Socket client=new Socket("192.168.1.23", 2012);
//第