TCP编程,Socket通讯
来源:互联网 发布:股票逐笔成交明细数据 编辑:程序博客网 时间:2024/05/22 04:50
网络编程分两种,一种是TCP编程,另一种是UDP编程(点击打开链接)。而本文先讲述简单的TCP编程,Socket套接字连接通讯,实现简单的客户端与服务器之间的信息传输。
下面是客户端与服务器之间简单的数据传输(单对单):
注意:服务端先启动,然后再启动客户端。
客户端:
public class C {public static void main(String[] args) {try {Socket s = new Socket("172.18.122.64", 10086); //访问服务端是本地服务器,端口号是10086,要相同if(s.isConnected()){System.out.println("客户端成功连接");}BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));Scanner in = new Scanner(System.in);/*GetMsg get = new GetMsg(s);get.start();*/while(true){String s1 = in.next();if(s1.equals("exit")){break;}bw.write(s1);bw.newLine();bw.flush();}bw.close();s.close();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();} }}
服务端:
public class S {public static void main(String[] args) {try {ServerSocket server = new ServerSocket(10086); //服务端,端口是10086Socket s = server.accept(); //开始监听连入的客户端口String clientip = s.getInetAddress().getHostAddress(); //获得客户端ip地址System.out.println("连入服务器的是来自:"+clientip);boolean flag = true;GetMsg get = new GetMsg(s);get.start();/*SendMsg send = new SendMsg(s);send.start();*/while(flag){}s.close();server.close();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}}
public class GetMsg extends Thread {private Socket s;public GetMsg(Socket s){this.s = s;}@Overridepublic void run() {// TODO Auto-generated method stubBufferedReader br;String str;try {br = new BufferedReader(new InputStreamReader(s.getInputStream()));boolean flag = true;while(flag){if((str=br.readLine())!=null){System.out.println(str);}}br.close();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}}
以上实现的是客户端与服务器端一对一之间的通讯,也可以实现多人聊天的功能,而服务器在这之间的角色就相当于中介,负责转发信息,如果需要多人聊天的可以留下邮箱或qq号我发给你。
0 0
- TCP编程,Socket通讯
- Socket编程(异步通讯)(Tcp,Udp)
- socket通讯之TCP
- Socket的TCP通讯
- java Socket TCP通讯
- Socket TCP聊天通讯
- TCP socket通讯
- socket编程 通讯协议tcp,数据承载协议http
- Socket编程 (异步通讯,解决Tcp粘包)
- Socket编程 (异步通讯) (Tcp,Udp) 这个是异步
- Socket编程 (异步通讯,解决Tcp粘包)
- TCP/IP 通讯之socket
- python实现socket通讯(TCP)
- Tcp Socket异步通讯实例
- python实现socket通讯(TCP)
- c# TCP Socket通讯基础
- python实现socket通讯(TCP)
- C# Socket的TCP通讯
- 虚拟机下centos6的网络IP配置
- Android开发笔记-----activity简述
- 编译时异常和运行时异常的小细节
- poj 1860 Currency Exchange(Bellman-Ford 改)
- Bipartite Graph
- TCP编程,Socket通讯
- VS2010和Matlab2012b混合编程 配置详解
- Ubuntu 14.04 安装 Altera DS-5
- Mac Os 基本命令行
- Scala详解---------数组、元组、映射
- 在浏览器的地址栏位置, 使用javascript:输入一个表达式来测试.
- 《ASP.NET》数据绑定—DataList实践篇
- 解剖Nginx·自动脚本篇(1)解析配置选项脚本 auto/options
- (WPF)命令