十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
Java中的多线程回显服务器怎么利用Socket实现?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
成都创新互联专注于企业营销型网站建设、网站重做改版、任城网站定制设计、自适应品牌网站建设、成都h5网站建设、成都做商城网站、集团公司官网建设、成都外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为任城等各大城市提供网站开发制作服务。具体如下:
需要两个类,一个是EchoServer,代表服务器。另外一个是EchoServerClient,代表客户端。代码如下:
package interview; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; public class EchoServer { public static void main(String []args) throws IOException{ ServerSocket server = new ServerSocket(6789); while(true){ Socket client = server.accept(); ClientHandler handler = new ClientHandler(client); new Thread(handler).start(); } } public static class ClientHandler implements Runnable{ private Socket client; @Override public void run() { InputStreamReader isr = null; try { isr = new InputStreamReader(client.getInputStream()); BufferedReader br = new BufferedReader(isr); PrintWriter pw = new PrintWriter(client.getOutputStream()); String msg = br.readLine(); System.out.println("收到" + client.getInetAddress() + "发送的" + msg); pw.println("收到了你发的" + msg); pw.flush(); } catch (IOException e) { e.printStackTrace(); } } public ClientHandler(Socket client){ this.client = client; } } }