package com.hxzkappboot.udp;
|
|
import com.hxzkappboot.pojo.TbSystem;
|
import com.hxzkappboot.service.SystemService;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Component;
|
|
import javax.annotation.PostConstruct;
|
import java.io.IOException;
|
import java.io.UnsupportedEncodingException;
|
import java.net.*;
|
import java.nio.charset.StandardCharsets;
|
import java.util.List;
|
|
|
/** 该类用于UDP转发数据到指定端口地址 */
|
@Component
|
public class Udp_Out {
|
|
@Autowired
|
private SystemService systemService;
|
public static Udp_Out udpout;
|
|
@PostConstruct //关键四:通过@PostConstruct注解实现注入
|
public void init() {
|
udpout = this;
|
}
|
/**
|
* 实现UDP转发
|
*
|
* @param data
|
* 需要转发的数据
|
* @param lenth需要转发的数据长度
|
* @param type需要转发的数量类型
|
* @throws IOException
|
*/
|
|
/**将数据发送cs端*/
|
public static void udp_to_cs(String message) {
|
DatagramPacket packet = null;
|
DatagramSocket socket = null;
|
InetAddress address = null;
|
int port = 7000;
|
String ip = "127.0.0.1";
|
// int port = 6002;
|
// String ip = "111.198.60.6";
|
byte[] data = null;
|
|
try {
|
data = message.getBytes(StandardCharsets.UTF_8);
|
} catch (Exception var12) {
|
var12.printStackTrace();
|
}
|
|
int length = data.length;
|
|
try {
|
address = InetAddress.getByName(ip);
|
} catch (UnknownHostException var11) {
|
var11.printStackTrace();
|
}
|
|
try {
|
socket = new DatagramSocket();
|
} catch (SocketException var10) {
|
var10.printStackTrace();
|
}
|
|
packet = new DatagramPacket(data, length, address, port);
|
|
try {
|
socket.send(packet);
|
} catch (IOException var9) {
|
var9.printStackTrace();
|
}
|
|
socket.close();
|
}
|
|
}
|