TCP
使用软件聊天,也就是两个以及两个以上用户发送文字消息,达到一种信息交流的目的!
目前计算机通信有两种协议:
①TCP协议:一种面向连接的协议
②UDP协议:称为网络报
在Java中,计算机之间通信采用Socket(套接字)方式实现的。
套接字分为两种:
①流套接字(基于TCP)
②自寻址套接字(基于UDP)
通信模式:请求和响应模式
原理:
服务器循环监听某个端口,客户端发送一个聊天请求到服务器,
然后提示用户收到消息查看并回复。 这个时候对客户端来说:可以是响应,对服务器来说:可以是请求。(既是客户端又是服务器)
根据以上信息,我们就可以实现一个聊天系统!
《基于TCP/IP协议的聊天系统》
伪代码展示:
=*=*=*=*=*=*=*=
服务器:
private int p = 8000; //端口
while(true){
/* 服务器接收消息 /
ServerSocket ss = new ServerSocket(p);
Socket so = ss.accept();//阻塞
InputStream is = so.getInputStream();
byte[] b = new byte[1000];//数组
is.read(b);//读入数组
is.close;//关闭输入流
/ 服务器回复消息 */
OutputStream os = so.getOutputStream();
os.write(“服务器回应”.getBytes());
os.flush();//发送
os.close();//关闭输出流
so.close();//关闭套接字
ss.close();//关闭服务
}
客户端:
/* 发送信息 /
Socket so=new Socket(“127.0.0.1”,8000);
OutputStream os =so.getOutputStream();
os.write(“美女”.getBytes());
os.flush();//发送
os.close();//关闭输出流
/ 接收信息 */
InputStream is = so.getInputStream();
byte[] b = new byte[1000];//数组
is.read(b);//读入数组
is.close;//关闭输入流
String str = new String(b);//转换类型
System.out.println(str);//打印消息
so.close();//关闭套接字
=*=*=*=*=*=*=*=
以上伪代码除没有抛异常基本也不是什么伪代码了。
作者:吴伟
个人主页:http://wuwei.tk