码迷,mamicode.com
首页 > 编程语言 > 详细

Java Socket和ServerSocket编程

时间:2015-08-19 17:39:20      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:socket



Socket server 和 client 通信流程图:

技术分享

服务端代码:

   serverSocket = new ServerSocket();
   serverSocket.setReuseAddress(true);
   serverSocket.bind(new InetSocketAddress(port));
   socket = serverSocket.accept();
   socket.setSoTimeout(timeOut);  //表示接收数据时的等待超时数据, 此方法必须在接收数据之前执行才有效. 此外, 当输入流的 read()方法抛出 SocketTimeoutException后, Socket仍然是连接的, 可以尝试再次读数据, 单位为毫秒, 它的默认值为 0(表示会无限等待, 永远不会超时)
   socket.setKeepAlive(false);   //表示对于长时间处于空闲状态的Socket, 是否要自动把它关闭
   in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
   if (in.ready())
   {
   //流准备好了做处理
   }
   in.close()
   pool.shutdown();


客户端代码:发信息

socketclient = new Socket(serverip, port);
    socketclient.setSoTimeout(0);
    socketclient.setKeepAlive(false);
    
    os = new BufferedOutputStream(socketclient.getOutputStream());
    os.write(information);
    os.flush();
    
    os.close();
    Thread.sleep(3000);

参考文章:

http://shihuan830619.iteye.com/blog/2041774

 

本文出自 “一无所有-天行者” 博客,请务必保留此出处http://tianxingzhe.blog.51cto.com/3390077/1685868

Java Socket和ServerSocket编程

标签:socket

原文地址:http://tianxingzhe.blog.51cto.com/3390077/1685868

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!