package com.imooc;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
public class UDPServerThread implements Runnable {
DatagramSocket socket = null;
byte[] data = null;
DatagramPacket packet = null;
public static void main(String[] args) throws IOException {
UDPServerThread serverThread = null;
Thread thread = null;
int count = 0;
DatagramSocket socket = new DatagramSocket(8800);
byte[] data = null;
DatagramPacket packet = null;
while (true) {
data = new byte[1024];
packet = new DatagramPacket(data, data.length);
socket.receive(packet);
serverThread = new UDPServerThread(socket, data, packet);
thread = new Thread(serverThread);
thread.start();
System.out.println("客户端数量为" + (++count));
}
}
public UDPServerThread(DatagramSocket socket, byte[] data, DatagramPacket packet) {
this.socket = socket;
this.data = data;
this.packet = packet;
}
@Override
public void run() {
try {
runMain();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void runMain() throws IOException {
String info = new String(data, 0, packet.getLength());
System.out.println("客户端说" + info);
InetAddress address = packet.getAddress();
System.out.println("客户端IP:" + address.getHostAddress());
int port = packet.getPort();
data = "欢迎您".getBytes();
packet = new DatagramPacket(data, data.length, address, port);
socket.send(packet);
}
}
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦