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(); } }