网络编程1--毕向东java基础教程视频学习笔记
目录:
01 网络编程概述1
02 网络编程概述2
03网络编程 网络模型
04网络编程 IP地址
05网络编程 TCP和UDP
06网络编程 Socket
07网络编程 UDP发送端
01 网络编程概述1
1.找到对方IP。
2.数据要发送到对方指定的应用程序上,为了标识这些应用程序,给这些网络应用程序都用数字进行标识。为了方便称呼这个数字,把它称为端口,是逻辑端口。
3.定义通信规则,这个通信规则称为协议。国际组织规定了通用协议TCP/IP.
02 网络编程概述2

03网络编程 网络模型

04网络编程 IP地址
IP地址
网络中设备的标识
不易记忆,可用主机名
本地回环地址:127.0.0.1 主机名:localhost
Java中用InetAddress类来描述IP地址。

获得该类实例的方法:
getLocalHost():用于返回本地主机的IP地址
getByName():在给定主机名的情况下确定IP地址
05网络编程 TCP和UDP
UDP:
将数据及源和目的封装在数据包中,不需要建立连接
每个数据报的大小限制在64K内。
不需要建立连接,速度快。
因无连接,是不可靠协议。
TCP:
建立连接,形成传输数据的通道。
在连接中可以进行大数据传输。
通过三次握手完成连接,是可靠协议
必须建立连接,效率和降低。
06网络编程 Socket
Socket有插座的意思
Socket就是为网络服务提供的一种机制。
通信的两端都有Socket。
网络通信其实就是Socket之间的通信。
数据在两个Socket之间通过IO传输。
07网络编程 UDP发送端


示例代码:
import java.net.*; /*
需求:通过UDP传输方式,将一段文字数据发送出去。
思路:
1.建立UDPSocket服务,
2.提供数据,并将数据封装到数据包中。
3.通过Socket服务的发送功能,将数据包发送出去。
4.关闭资源 */
public class UdpSend
{
public static void main(String[] args)throws Exception
{
//1.建立udp服务,通过DatagramSocket对象
DatagramSocket ds=new DatagramSocket(); //2.确定数据,并封装成数据报,
//DatagramPacket(byte[] buf, int length, InetAddress address, int port)
byte[] buf="you are not alone".getBytes();
DatagramPacket dp=new DatagramPacket(buf,buf.length,InetAddress.getByName("61.190.196.18"),10000);
//3.通过Socket服务,将已有的数据包发送出去,通过send方法
ds.send(dp);
//4.关闭资源
ds.close(); }
}
网络编程1--毕向东java基础教程视频学习笔记的更多相关文章
- 多线程--毕向东java基础教程视频学习笔记
目录 1.多线程运行的安全问题 2.多线程同步代码块 3.同步方法的锁是this 4.静态同步方法的锁是Class对象 5.单例设计模式(面试中的考点) 6.死锁(一个发生死锁的例子) 多线程运行的安 ...
- 网络编程2--毕向东java基础教程视频学习笔记
Day 23 08 Udp接收端09 Udp键盘录入数据方式10 Udp聊天11 TCP传输12 TCP传输213 TCP练习14 TCP复制文件 08 Udp接收端 需求:定义一个应用程序,用于接收 ...
- 网络编程4--毕向东java基础教程视频学习笔记
Day24 06 自定义浏览器-Tomcat服务端07 自定义图形界面浏览器-Tomcat服务端08 URL-URLConnection09 小知识点10 域名解析 06 自定义浏览器-Tomcat服 ...
- 网络编程3--毕向东java基础教程视频学习笔记
Day24 01 TCP上传图片02 客户端并发上传图片03 客户端并发登录04 浏览器客户端-自定义服务端05 浏览器客户端-Tomcat服务端 01 TCP上传图片 import java.net ...
- IO流05--毕向东JAVA基础教程视频学习笔记
Day20 10 创建java文件列表11 Properties简述12 Properties存取13 Properties存取配置文件14 Properties练习15 PrintWriter16 ...
- IO流04--毕向东JAVA基础教程视频学习笔记
Day20 01 File概述02 File对象功能-创建和删除03 File对象功能-判断04 File对象功能-获取05 File对象功能-文件列表106 File对象功能-文件列表207 列出目 ...
- IO流01--毕向东JAVA基础教程视频学习笔记
提要 01 IO流(BufferedWriter)02 IO流(BufferedReader)03 IO流(通过缓冲区复制文本文件)04 IO流(readLine的原理)05 IO流(MyBuffer ...
- 集合3--毕向东java基础教程视频学习笔记
Day 15 集合框架01 TreeSet02 TreeSet存储自定义对象03 二叉树04 实现Comparator方式排序05 TreeSet练习06 泛型概述07 泛型使用08 泛型类09 泛型 ...
- 集合2--毕向东java基础教程视频学习笔记
Day14 08 LinkedList09 LinkedList练习10 ArrayList练习11 ArrayList练习2 12 HashSet13 HashSet存储自定义对象14 HashSe ...
随机推荐
- [软件] UnicornViewer
可打开的文件格式有: *.pdg *.tif *.djvu *.djv *.uvz
- C#语法糖之Cookies操作类 asp.net
用法: //声名一个数据集合 var listString = new List<string>() { "a", "b", "c&quo ...
- Thrift在Windows及Linux平台下的安装和使用示例
本文章也同时发表在个人博客Thrift在Windows及Linux平台下的安装和使用示例上. thrift介绍 Apache Thrift 是 Facebook 实现的一种高效的.支持多种编程语言的R ...
- SystemTap知识(一)
SystemTap是一个系统的跟踪探测工具.它能让用户来跟踪和研究计算机系统在底层的实现. 安装SystemTap需要为你的系统内核安装-devel,-debuginfo,-debuginfo-com ...
- Copy和MutableCopy
实现拷贝的方法 -copy: 1.只会产生不可变的副本对象(比如:NSString) 2.[NSMutableString copy] 产品一个不可变的nsstring对象 -mutaleCopy: ...
- Week2 Bing词典Android客户端案例分析
一.软件调研 运行平台:Android 4.4.4 必应版本:5.2.2 1.bug发现 1.1 bug标题:单词挑战无法加载和刷新 bug详细描述:学习界面中的单词挑战模块,点击后没有任何反映,并且 ...
- Scrum 项目 6.0
-------------------------6.0------------------------------------ sprint演示 1.坚持所有的sprint都结束于演示. 团队的成果 ...
- Github教程(1)
Git基本命令 git diff:查看工作树,暂存区,最新提交之间的差别 举例: 在README.MD中增加一行 ## This is the subtitle 执行git diff 命令,查看当前工 ...
- JavaScript中经典方法
jQuery()通过name名称获取当前name中value数组 /** 获取input中name属性相同的 value数组 */ function my_array_name(m){ var val ...
- ActiveReports 9 新功能:借助目录(TOC)控件为报表添加目录功能
在最新发布的ActiveReports 9报表控件中添加了多项新功能,以帮助你在更短的时间里创建外观绚丽.功能强大的报表系统,本文将重点介绍新增文档目录控件(TOC),通过拖拽操作便可添加报表目录. ...