diff --git a/com/Client.java b/com/Client.java index 64abd4a..0f2dbe7 100644 --- a/com/Client.java +++ b/com/Client.java @@ -11,7 +11,7 @@ public class Client { // public static final int port = 8090; public static final int port = 8090; // public static final String host = "14.1.209.146"; - public static final String host = "127.0.0.1"; + public static final String host = "127.0.0.1"; public static void main(String[] args) { System.out.println("Client Start..."); String str = "000006041010157060000081243025801570102311000120230905104426true500130004130157202309050600000812430todogetCountuserNum10913026任广鹏是个大刷币"; diff --git a/com/engine/util/SocketClientUtil.java b/com/engine/util/SocketClientUtil.java new file mode 100644 index 0000000..375a93a --- /dev/null +++ b/com/engine/util/SocketClientUtil.java @@ -0,0 +1,68 @@ +package com.engine.util; + +import weaver.general.BaseBean; +import weaver.general.StringUtil; + +import java.io.*; +import java.net.Socket; +import java.nio.charset.StandardCharsets; + +//发送SocketUtil +public class SocketClientUtil { + private int port = 8090; + private String host = "127.0.0.1"; + private BaseBean bs = new BaseBean(); + + + public SocketClientUtil(String host ,int port) { + this.port = port; + this.host = host; + } + + public String send(String request) { + // bs.writeLog("Client Start..."); + Socket socket = null; + try { + //创建一个流套接字并将其连接到指定主机上的指定端口号 + socket = new Socket(host,port); + // String str = "000006121010157060000081243025801570102311000120230905104426true500130004130157202309050600000812430todogetCountuserNum10913026任广鹏是个大刷币"; + // System.out.println(str); + //读取服务器端数据 + BufferedReader input = new BufferedReader(new InputStreamReader(socket.getInputStream(), StandardCharsets.UTF_8)); + //向服务器端发送数据 + // PrintStream out = new PrintStream(new OutputStreamWriter(socket.getOutputStream(),StandardCharsets.UTF_8)); + PrintWriter out = new PrintWriter(new OutputStreamWriter(socket.getOutputStream(),StandardCharsets.UTF_8),true); + out.println(request); + String ret = input.readLine(); + System.out.println("服务器端返回过来的是: " + ret); + // bs.writeLog("服务器端返回过来的是: " + ret); + // 如接收到 "OK" 则断开连接 + if (!StringUtil.isEmpty(ret)) { + // bs.writeLog("客户端将关闭连接"); + System.out.println("客户端将关闭连接: " + ret); + Thread.sleep(500); + } + out.close(); + input.close(); + return ret; + } catch (Exception e) { + // bs.writeLog("客户端异常:" + e.getMessage()); + } finally { + if (socket != null) { + try { + socket.close(); + } catch (IOException e) { + socket = null; + // bs.writeLog("客户端 finally 异常:" + e.getMessage()); + } + } + } + return "-1"; + } + + public static void main(String[] args) { + String str = "000006041010157060000081243025801570102311000120230905104426true500130004130157202309050600000812430todogetCountuserNum10913026任广鹏是个大刷币"; + new SocketClientUtil("127.0.0.1",8090).send(str); + } + +} diff --git a/com/engine/web/tjbk/TjbkServerSocket.java b/com/engine/web/tjbk/TjbkServerSocket.java index eb39795..c3d44fb 100644 --- a/com/engine/web/tjbk/TjbkServerSocket.java +++ b/com/engine/web/tjbk/TjbkServerSocket.java @@ -87,7 +87,6 @@ class SocketThread extends Thread { } } - class ProcessSocketData extends Thread { private Socket socket; @@ -112,8 +111,6 @@ class ProcessSocketData extends Thread { PrintWriter pw = new PrintWriter(outputStreamWriter); InputStream inputStream = socket.getInputStream(); BufferedReader in = new BufferedReader(new InputStreamReader(inputStream, StandardCharsets.UTF_8)); - // StringBuilder requestData = new StringBuilder(); - String inputLine; char[] datalen=new char[8];//报文前八位为报文体总长度 in.read(datalen,0,8); String lendata=new String (datalen); @@ -122,21 +119,6 @@ class ProcessSocketData extends Thread { char[] data=new char[length]; int datalength = in.read(data,0,length); String requestData = new String(data); - // inputLine = in.readLine(); - // requestData.append(inputLine); - // System.out.println("Received from client: " + inputLine); - - - - - // byte[] datalen=new byte[8];//报文前八位为报文体总长度 - // inputStream.read(datalen); - // String lendata=new String (datalen); - // int length=Integer.parseInt(lendata); - // // byte[] data=new byte[length]; - // byte[] data=new byte[length]; - // int datalength = inputStream.read(data); - // String requestData = new String(data, 0, datalength); String s = ""; if (!StringUtil.isEmpty(requestData.toString())) { new BaseBean().writeLog("requestData",requestData); @@ -153,8 +135,6 @@ class ProcessSocketData extends Thread { System.out.println(e); } } - - private String execute(String XMLparam){ Map paramMap = XMLUtils.parseXMLToMap(XMLparam);