public class ClientTest { public static void main(String[] args) { Socket socket = null; try { socket = new Socket("127.0.0.1", 5656); Packet packet = new Packet(PacketType.BUSINESS,"hello"); byte[] dataBytes = packet.getData().toString().getBytes(); int length = dataBytes.length + 6; byte[] bytes = TypeKit.int2Bytes(length); byte[] packetBytes = new byte[length]; System.arraycopy(bytes,0,packetBytes,0,bytes.length); packetBytes[bytes.length] = (byte)1; packetBytes[bytes.length+1] = packet.getType().value(); System.arraycopy(dataBytes,0,packetBytes,bytes.length+2,dataBytes.length); OutputStream out = socket.getOutputStream(); /*ByteBuffer header = ByteBuffer.allocate(4); header.putInt(6+ packet.getData().toString().getBytes().length); byte[] array = header.array(); byte[] data = new byte[array.length + 2 + dataBytes.length ]; int i = 0; for(;i< array.length;i++){ System.out.println(i+"-->"+array[i]); data[i] = array[i]; } data[i++] = (byte)1; data[i++] = packet.getType().value(); for(int j =0;j< dataBytes.length;j++,i++){ data[i] = dataBytes[j]; } out.write(data);*/ /*out.write(header.array()); out.write((byte)1); out.write((byte)1); out.write(packet.getType().value()); out.write(dataBytes);*/ out.write(packetBytes); out.flush(); } catch (Exception e) { e.printStackTrace(); } finally { if (socket != null) { try { socket.close(); } catch (IOException e) { e.printStackTrace(); } socket = null; } } } }
socket ->netty
最新推荐文章于 2024-02-06 17:38:59 发布