• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

java网络编程(四)----UDP进阶篇聊天小程序

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

设计要求:单线程模式,客户端只发送数据,数据的来源为键盘录入,服务器端只接收数据,当客户端发送886的时候,客户端和服务器端都退出。

1. 发送端:

public class Send implements Runnable{private DatagramSocket ds;public Send(DatagramSocket ds)

{
      this.ds= ds;
}
@Override break;
}
ds.close();
} catch (Exception e) {
}
}}

2. 接收端:

public class Reci implements Runnable {

private DatagramSocket ds;

public Reci(DatagramSocket ds)
{
this.ds= ds;
}

@Override
public void run() {
// TODO Auto-generated method stub
try {
while(true){

byte[] buf=new byte[1024];
DatagramPacket dp = new DatagramPacket(buf, buf.length);

ds.receive(dp);

String ipString=dp.getAddress().getHostAddress();
int port =dp.getPort();
String data= new String(dp.getData(),0,dp.getLength());

System.out.println("ip :"+ipString+"port :"+port+"data :"+data);

if(data.equals("886"))
{
System.out.println(ipString+"...退出聊天室");
}
}
} catch (IOException e) {

}
}

}

3. 单线程进程启动

public class ChatMultiThreadDemo {

public static void main(String[] args) throws SocketException {

DatagramSocket send = new DatagramSocket();
DatagramSocket reci = new DatagramSocket(10001);

new Thread(new Send(send)).start();
new Thread(new Reci(reci)).start();


}
}


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap