Java程序猿之网络编程实现(30)

网络编程的实现过程我们已经很清楚了:

通过套接字找到要连接的服务器计算机

向服务器发送输出流

服务器接收输入流

经过以上三个步骤,从而实现客户端向服务器的通信;那根据Java面向对象的思想,其实每一步工作都有对象帮我们实现完成,我们只需让他们来做事;而完成网络编程的对象都位于java.net包中,名字叫socket;

我是客户端Socket,你把套接字给我,我负责打通到服务器端的通道;


我是ServerSocket,我负责等着,看有没有客户端要来找我,在等待,一直在等待;

而且我只负责等待,当我等到了客户端,我会交给另一个对象,我服务器端Socket来接待,他跟客户端socket是同类,好说话;


所以客户端和服务器端成功通信的步骤细化下来如下图:

1.客户端socket出发,通过套接字找到目标服务器端的ServerSocket应用程序


2.服务器端ServerSocket一直都在,也一直在等待,等待有人请求连接;而当真的有连接到来,ServerSocket会礼貌的呼喊服务器产生的socket接待来宾


3.客户端socket和服务器端socket亲切对话,实现信息交互;而ServerSocket自己又开始继续等待;


4.有其他客户端socket出发,ServerSocket继续负责接待,同时呼喊另一个服务端socket进行信息处理


具体的代码实现如下:

客户端socket:

服务器端ServerSocket:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值