美文网首页java语言
Java基础09网络编程

Java基础09网络编程

作者: jjdxmashl | 来源:发表于2017-02-16 17:21 被阅读63次

Java 基础08GUI

熟练掌握什么是网络编程,网络编程的三要素,Socket原理机制、UDP传输、TCP传输等。

网络编程三要素

网络编程三要素:①IP:网络中设备的标识,不易记忆,可用主机名,计算机的标识IPv4使用4个字节IPv6使用16个字节②端口:用于标识进程的逻辑地址,不同进程的标识,应用程序标识,使用2个字节范围是1-65535③协议UDP:将数据源和目的封装成数据包中,不需要建立连接;每个数据报的大小在限制在64k;因无连接,是不可靠协议;不需要建立连接,速度快;
TCP:建立连接,形成传输数据的通道;在连接中进行大数据量传输;通过三次握手完成连接,是可靠协议;必须建立连接,效率会稍低;

网络参考模型

UDP协议收发数据

  1. DatagramSocket与DatagramPacke
  2. 建立发送端,接收端。
  3. 建立数据包。
  4. 调用Socket的发送接收方法。
  5. 关闭Socket。
  6. 发送端与接收端是两个独立的运行程序。

发送:

1:建立udp的socket服务
2:将要发送的数据封装成数据包
3:通过udp的socket服务,将数据包发送出
4:关闭资源

接收:

1:建立udp的socket服务.
2:通过receive方法接收数据
3:将收到的数据存储到数据包对象中
4:通过数据包对象的功能来完成对接收到数据进行解析.
5:可以对资源进行关闭

TCP协议收发数据

  1. Socket和ServerSocket
  2. 建立客户端和服务器端
  3. 建立连接后,通过Socket中的IO流进行数据的传输
  4. 关闭socket
  5. 同样,客户端与服务器端是两个独立的应用程序。

发送:

1:建立客户端的Socket服务,并明确要连接的服务器。
2:如果连接建立成功,就表明,已经建立了数据传输的通道.就可以在该通道通过IO进行数据的读取和写入.该通道称为Socket流,Socket流中既有读取流,也有写入流.
3:通过Socket对象的方法,可以获取这两个流
4:通过流的对象可以对数据进行传输
5:如果传输数据完毕,关闭资源

接收:

1:建立服务器端的socket服务,需要一个端口
2:服务端没有直接流的操作,而是通过accept方法获取客户端对象,在通过获取到的客户端对象的流和客户端进行通信
3:通过客户端的获取流对象的方法,读取数据或者写入数据
4:如果服务完成,需要关闭客户端,然后关闭服务器,但是,一般会关闭客户端,不会关闭服务器,因为服务端是一直提供服务的

相关文章

  • Android应用开发:网络编程2

    网络编程 Java基础:网络编程 Uri、URL、UriMatcher、ContentUris详解 Android...

  • Http协议

    网络编程 Java基础:网络编程 Uri、URL、UriMatcher、ContentUris详解 Android...

  • 动脑学院架构篇-Java Socket编程基础及深入讲解

    【Socket】Java Socket编程基础及深入讲解 Socket是Java网络编程的基础,了解还是有好处的,...

  • JAVA技术知识体系

    java基础 java虚拟机 集合框架 网络编程-Socket 并发编程-Thread io 数据库操作-JDBC...

  • IO

    java网络编程 阻塞IO NIO 1. java网络编程 基础知识1.ip地址和端口号2.tcp/udp协议3....

  • Java基础09网络编程

    Java 基础08GUI 熟练掌握什么是网络编程,网络编程的三要素,Socket原理机制、UDP传输、TCP传输等...

  • java文艺复兴

    JAVA 语言基础 理解面向对象OO 常用类 集合 IO 多线程 GUI(??) 网络编程 JAVA WEB (...

  • 【Java基础】java网络编程

    源代码:https://gitee.com/AgentXiao/NetProgram 一、几个概念 1、网络 将不...

  • java网络编程基础

    Java为网络支持提供了java.net包,该包下的URL和URLConnection等类提供了以编程方式访问we...

  • Java基础:网络编程

    1. 网络编程概述 1.1 计算机网络 是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接...

网友评论

    本文标题:Java基础09网络编程

    本文链接:https://www.haomeiwen.com/subject/lcehwttx.html