java scoket (UDP通信模型)简易聊天室
2016-10-17 10:46
447 查看
import java.net.DatagramPacket; import java.net.DatagramSocket; /** * 接收线程 * * @author xiaoduc * */ public class ReceiveThread extends Thread { private DatagramSocket ds; public ReceiveThread(int port) { super(); try { this.ds = new DatagramSocket(port); } catch (Exception e) { e.printStackTrace(); } } @Override public void run() { try { //创建byte数组 byte[] buff=new byte[1024]; //创建一个数据包对象 DatagramPacket dp=new DatagramPacket(buff, 1024); //永真循环 while(true){ ds.receive(dp);//接收消息 String str=new String(dp.getData(),0,dp.getLength());//得到数据 System.out.println("接收:"+str);//打印消息 } } catch (Exception e) { e.printStackTrace(); }finally { ds.close(); } } }
import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; /** * 发送线程类 * @author xiaoduc * */ public class SendThread extends Thread{ private DatagramSocket ds; private int sendPort; public SendThread(int port,int sendPort){ super(); this.sendPort=sendPort; try { this.ds=new DatagramSocket(port); } catch (Exception e) { e.printStackTrace(); } } @Override public void run() { try { //循环接收用户输入 BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); String str=null; while((str=br.readLine())!=null){ //创建Datagrampacket对象 DatagramPacket dp=new DatagramPacket(str.getBytes(), 0,str.length(),InetAddress.getByName("localhost"),sendPort); ds.send(dp);//发送数据 System.out.println("发送:"+str);//打印 } } catch (Exception e) { e.printStackTrace(); }finally { ds.close(); } } }
public class Chat { public static void main(String[] args) { //启动发送线程 new SendThread(1091, 1099).start(); } }
public class ReceiveChat { public static void main(String[] args) { //启动接收线程 new ReceiveThread(1099).start(); } }
相关文章推荐
- android 简易UDP通信模型
- 网络通信之简易聊天室(UDP实现)
- android 简易UDP通信模型
- java通信之Scoket-UDP
- Java UDP通信(DatagramPacket类、DatagramSocket类、InetAddress类)(转)
- Java学习之路7——UDP通信
- JAVA 多线程实现聊天(UDP通信 )
- java使用UDP来进行客户端和服务器端通信的简单例子
- Scoket:UDP通讯模型
- 基于udp通信协议开发的简易聊天系统1.0
- java中使用nio包实现非阻塞的UDP通信
- 用java编写简单UDP网络通信程序
- java的UDP进行通信的一个小案例
- TCP/IP Scoket编程之UDP聊天室(C语言实现)
- Java中网络通信编程之UDP通信
- UDP协议制作的GUI聊天室(java)
- ACE反应器模型的应用——UDP通信的设计
- java socket编程——UDP通信
- java学习之路——基于UDP的Socket网络通信实例
- java例程练习(网络编程[简单UDP通信试验])