演示TCP传输
 
1.Tcp分客户端和服务端
2.客服端对应的对象是scoket
   服务端对应的对象是serverscoket
客户端:
通过查阅scoket对象,发现在建立对象时,就可以连接指定的主机。
因为tcp是面向连接的,所以在建立scoket服务时,就要有服务端存在,并连接成功,形成通路后,在该通道进行数据的传输。
 
需求:给服务端发送一个文本数据
步骤:
    1.创建Socket服务并指定要连接的主机和端口。可以采用构造方法Socket(String host, int port)或对象方法connect(SocketAddress endpoint) 
    2.获取Sockett中的输出流,用来发送数据。方法是OutputStream getOutputStream()
    3.关闭客户端流。
//例子如下:
import java.net.*;
import java.io.*;
class TcpClient
{  public static void main(String[] args)throws Exception{//创建客户端的Socket服务,指定目的主机和端口     Socket s = new Socket("192.168.1.105",8888);//为了发送数据,应该获取Socket中的输出流, OutputStream out = s.getOutputStream();out.write("tcp is coming!".getBytes());//关闭客户端流
      s.close();}
}

需求:定义端点接收数据,并打印在控制台上。
服务端:
1.建立服务端的Socket服务,构造函数ServerScoket(int port),并监听一个端口
2.获取连接过来的客服端对象,方法Socket accept() ,这个方法是阻塞式的,没有连接就等。
3.如果客服端发送过来数据,那么服务端要使用对应的客服端对象,并采用该客服端的读取流对象来读取发过来的数据。并打印在控制台。
4.关闭服务端(可选操作) 
//例子如下:
class TcpServer
{public static void main(String[] args)throws Exception{//建立服务端的Socket服务,并监听一个端口ServerSocket ss = new ServerSocket(8888);//通过accept方法获取连接过来的客服端对象Socket s = ss.accept();String IP = s.getInetAddress().getHostAddress();System.out.println(IP+"...connected!");        //获取客户端发送给来的数据,服务端要使用客服端对象的读取流类读取数据。方法InputStream getInputStream()  InputStream in = s.getInputStream();byte[] buf = new byte[1024];int len = in.read(buf);System.out.println(new String(buf,0,len));s.close();//关闭客户端
        ss.close();//关闭服务端(可选操作)
    }
}

Java:网络编程值TCP的使用相关推荐

  1. Java网络编程:TCP实现群聊私聊代码

    Java网络编程:TCP实现群聊&私聊代码 和上一篇博客差不多,只不过是在群里的基础之上增加了私聊的功能,我们约定,私聊格式为:@xxx:msg 如何实现私聊呢,加入客户端c给服务器发送消息, ...

  2. JAVA网络编程:TCP/IP数据包结构

    2019独角兽企业重金招聘Python工程师标准>>> 一般来说,网络编程我们仅仅须要调用一些封装好的函数或者组件就能完毕大部分的工作,可是一些特殊的情况下,就须要深入的理解网络数据 ...

  3. Java网络编程:TCP,UDP,sock编程

    第一节 网络基础知识 常用的通信协议 MAC地址:(Media Access Control Address,媒体存取控制位址), IP:(Internet Protocol,网际协议) UDP:(U ...

  4. 【java网络编程】TCP三次握手、四次挥手,常见Socket通信BIO

    网络编程,网络通信 内容管理 TCP三次握手,四次挥手 TCP 建立连接 --- 三次握手 TCP断开 ---- 四次挥手 java网络IO BIO 同步阻塞 Socket通信模型 BIO网络通信De ...

  5. java 网络编程 UDP TCP

    网络编程 网络编程主要用于解决计算机与计算机(手机.平板..)之间的数据传输问题. 网络编程: 不需要基于html页面就可以达到数据之间的传输. 比如: feiQ , QQ , 微信.... 网页编程 ...

  6. Java网络编程:TCP实现聊天

    客户端 package com.zhl.nett;import java.io.IOException; import java.io.OutputStream; import java.net.In ...

  7. 【Java 网络编程】TCP 数据传输示例 ( 客户端参数设置 | 服务器端参数设置 | ByteBuffer 存放读取数据类型 )

    文章目录 I 客户端代码示例 II 服务器端代码示例 III 运行结果 I 客户端代码示例 import java.io.IOException; import java.io.InputStream ...

  8. JAVA 网络编程中TCP和UDP

    网络的相关概念 网络通信 概念:两台设备之间通过网络实现数据传输 网络通信:将数据通过网络从一台设备传输到另一台设备 java.net包下提供了一系列的类或接口,供程序使用,完成网络通信 网络 概念: ...

  9. 【Java 网络编程】TCP 传输机制 ( 数据拆分 | 排序 | 顺序发送 | 顺序组装 | 超时重发 )

    文章目录 I TCP 传输过程 II TCP 传输示例 III TCP 传输特殊情况处理 I TCP 传输过程 1. TCP 传输过程 : 排序 , 顺序发送 , 顺序组装 ; ① 排序 : TCP ...

最新文章

  1. 时序数据库连载系列: 时序数据库一哥InfluxDB之存储机制解析
  2. 面对不可避免的故障,我们造了一个“上帝视角”的控制台
  3. 使用spring的@autowired注解,无法实例化dao
  4. IPv6与IPv4比较
  5. mysql删除unionkey_MySQL索引如何优化?二十条铁则送给你
  6. AjaxControltoolkit学习笔记—Animation使用详解
  7. javascript之奇淫技巧
  8. JAVA编程思想课程视频
  9. winpe 卡巴斯基本升级内部错误
  10. extremecomponents-1.0.1.jar 的使用小例子
  11. WPF教程(二)Binding
  12. 算法细节系列(25):加减乘除
  13. kali 改root_linux切换到root用户,kali怎么切换root身份运行
  14. HTML CSS 背景图居中属性background-position
  15. poj 3067 树状数组
  16. Android 系统生成 releasekey
  17. 使用freenom注册免费顶级域名并在梅林上使用DDNS
  18. Xilinx FFT IP使用总结
  19. 学习vb知识的方法总结
  20. 计算机网络安全-----身份认证

热门文章

  1. C# 读取计算机CPU,HDD信息
  2. SparkSQL ThriftServer 安全相关功能的现状分析
  3. iOS性能优化 - 网络图片加载优化
  4. nginx的HTTP模块编写
  5. 记录git常用操作命令
  6. 移动端图片上传旋转、压缩的解决方案
  7. 简书非官方大数据(一)
  8. 自己动手写一个印钞机 第四章
  9. java数组简单介绍以及其方法
  10. CSS过渡动画的理解