美文网首页JAVA程序员Java网络编程
JAVA编程学习笔记,网络编程基础TCP与UDP

JAVA编程学习笔记,网络编程基础TCP与UDP

作者: Java小辰 | 来源:发表于2018-04-02 23:29 被阅读549次

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

给你学习路线:html-css-js-jq-javase-数据库-jsp-servlet-Struts2-hibernate-mybatis-spring4-springmvc-ssh-ssm

1:网络编程(理解)

(1)网络编程:用Java语言实现计算机间数据的信息传递和资源共享

(2)计算机网络:是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。

(3)网络编程模型

小编推荐一个学Java的学习裙【 六五零,五五四,六零七 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

网络参考模型

(4)网络编程的三要素

A:IP地址:网络中设备的标识,不易记忆,可用主机名

IP地址组成

IP地址分类

常见的ip操作

java提供了一个类InetAddress 供我们使用:

获取任意主机:getByName()

主机名:getHostName()

主机Ip地址:getHostAddress()

B:端口: 正在运行的程序的标识。(物理端口 :网卡口,这里主要讲的是逻辑端口)

有效端口:0~65535,其中0~1024系统使用或保留端口。

:WINDOWSsystem32driversetcservices文件,了解常用的端口号分配

C:协议

常用的两个协议

UDP与TCP的区别

UDP: 数据打包, 有限制, 不连接, 效率高, 不可靠 举例:发短信,邮件

TCP: 建立数据通道, 无限制, 效率低, 可靠 举例:电话,视频

(3)Socket机制

Socket套接字:网络上具有唯一标识的IP地址和端口号组合在一起才能构成唯一能识别的标识符套接字。

Socket原理机制:

A:通信的两端都有Socket。

B:网络通信其实就是Socket间的通信。

C;数据在两个Socket间通过IO传输。

socket机制图解

(4)UDP协议发送和接收数据

发送:

创建UDP发送端的Socket对象

创建数据并把数据打包

发送数据

释放资源

参考代码

接收:

创建UDP接收端的Socket对象

创建数据包用于接收数据

接收数据

解析数据包

释放资源

小编推荐一个学Java的学习裙【 六五零,五五四,六零七 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

参考代码

(5)TCP协议发送和接收数据

发送:

创建TCP客户端的Socket对象

获取输出流,写数据

释放资源

才考代码

接收:

创建TCP服务器端的Socket对象

监听客户端连接

获取输入流,读取数据

释放资源

参考代码

TCP中出现的问题:

(6)案例:

A:UDP

a:最基本的UDP协议发送和接收数据

b:把发送数据改进为键盘录入

键盘录入发送消息

c:一个简易聊天小程序并用多线程改进

小编推荐一个学Java的学习裙【 六五零,五五四,六零七 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

简单的聊天测试

PS:多线程未展示,即多个用户向同一个客户端发送消息,这里面的可能存在的问题也有很多,这先不总结。

B:TCP

a:最基本的TCP协议发送和接收数据

b:服务器给出反馈

c:客户端键盘录入服务器控制台输出

d:客户端键盘录入服务器写到文本文件

e:客户端读取文本文件服务器控制台输出

f:客户端读取文本文件服务器写到文本文件

g:上传图片

h:多线程改进上传文件

ps:TCP这里将用到数据流操作,

相关文章

  • socket通讯编程

    这一块属于网络编程,主要是学习TCP/IP四层的网络体系结构,学习TCP编程和UDP编程。 java.net中 一...

  • JAVA编程学习笔记,网络编程基础TCP与UDP

    Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和...

  • IO

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

  • Java基础09网络编程

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

  • 网络编程,TCP,UDP

    day26笔记【网络编程,TCP,UDP】 day26授课目录: 1_网络编程(网络编程概述)(了解) A:计算机...

  • Java 网络编程基础 - TCP 与 UDP

    Socket(套接字)网络编程是在网络中实现两个进程间通信的一种方式,其中由 ip 和端口组成 Socket 的作...

  • 第78节:Java中的网络编程(上)

    第78节:Java中的网络编程(上) 前言 网络编程涉及ip,端口,协议,tcp和udp的了解,和对socket通...

  • TCP

    聊聊iOS中网络编程长连接的那些事 网络编程基础知识: 简述传输层协议TCP和UDP的区别总结:TCP协议在传送数...

  • IO

    一.java网络编程 1.基础知识 1)ip地址和端口号 2)tcp/udp协议 3)URL 4)InetAddr...

  • 网络编程

    网络 Socket 基于TCP协议的Socket编程 基于UDP协议的Socket编程

网友评论

    本文标题:JAVA编程学习笔记,网络编程基础TCP与UDP

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