Socket入门Demo——Tcp协议
2016-01-05 14:27
543 查看
服务端和客户端相互对话,说bye时停止,但只能说一句回复一句
客户端
客户端
package com.TCP; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.Socket; import java.net.UnknownHostException; public class TalkClients { public static void main(String[] args) { try { //通过ip 端口号与服务端建立连接 Socket socket = new Socket("127.0.0.1",88); //监听控制台输入 BufferedReader sin = new BufferedReader( new InputStreamReader(System.in)); //监听服务端输出 PrintWriter os = new PrintWriter( socket.getOutputStream()); //输出服务端内容 BufferedReader is = new BufferedReader( new InputStreamReader(socket.getInputStream())); String str; str=sin.readLine(); //输入bye时停止对话 while(!str.equals("bye")){ os.println(str); os.flush(); //System.out.println("客户端说:"+str); System.out.println("服务器说:"+is.readLine()); str=sin.readLine(); } os.close(); is.close(); //关闭端口 socket.close(); } catch (UnknownHostException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }服务端
package com.TCP; 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 TalkServers { public static void main(String[] args) { try { //服务端创建一个监听端口 ServerSocket ss = new ServerSocket(88); Socket socket = ss.accept(); //监听端口输入流,即获得通过端口传送过来的信息 BufferedReader is = new BufferedReader( new InputStreamReader( socket.getInputStream())); //获得端口输出流,用于输出信息 PrintWriter os = new PrintWriter( socket.getOutputStream()); //获得控制台信息 BufferedReader sin = new BufferedReader( new InputStreamReader( System.in)); System.out.println("客户端说:"+is.readLine()); String line=sin.readLine(); //控制台输入bye 关闭 while(!line.equals("bye")){ os.println(line); os.flush(); //System.out.println("服务器说:"+line); System.out.println("客户端说:"+is.readLine());//读取客户端的内容 line=sin.readLine(); } os.close(); is.close(); socket.close(); ss.close(); } catch (IOException e) { e.printStackTrace(); System.out.println("程序监听异常"); System.exit(-1); } } }
相关文章推荐
- 使用AFNetworking网络请求时出现错误"Request failed: unacceptable content-type: text/html"
- zabbix监控------使用bat监控windows网络状况
- httpClient4.3x 使用
- TCP 三次握手 四次挥手
- httpd+dnsmasq+kickstart部署系统真是太方便了
- 神经网络matlab函数使用
- netty http
- 百度地图api引入https问题
- java网络---再论URL & URI
- unix网络编程之根据主机名(hostname)或网卡名获取IP地址(三种方法)
- HttpClient
- org.apache.http不存在解决办法
- windows系统安装Safari浏览器出错解决方案 (无法访问你试图使用的功能所在的网络位置)
- 浅谈OSI/RM体系结构和TCP/IP体系结构
- 计算机网络层之 P2P
- Nginx1.9 配置TCP负载均衡
- HTTP、TCP、UDP、Socket的区别
- TCP/IP 网络数据封包和解包
- http://wendong866.blog.51cto.com/addblog.php
- Java网络编程总结