目录标题 网络编程计算机网络网络编程的目的网络编程的要素如何实现网络的通信规则:网络通信的协议TCP/IP参考模型总结一 网络编程中两个主要的问题 1 如何准确的定位到网络上的一台或者多台主机 域名:www.baidu.com IP 14.215.177.38(百度的IP) 2 找到主机之后如何进行通信二 网络编程中的要素 1 IP和端口号(Java中IP类和端口类) 2 网络通信协议(Java中Udp类 tcp类) IPip地址:代码 InetAddress一 作用 唯一定位一台网络上的计算机(相当于人的身份证) 二 127.0.0.1:本机localhost IP地址的分类一 IP地址的分类(IPv4/IPv6) IPv4是:127.0.0.1 四个字节组成 0-255 42亿 ;三十亿在北美 亚洲四亿 2011年就用尽; IPv6:fe80::15f5:cab4:207d:1e00%9 128位的 八个无符号整数组成 公网(互联网)-私网(局域网)ABCD类地址 域名 :记忆IP问题IP:www.vip.com www.baidu.com练习测试IP(类 InetAddress) 端口练习InetSocketAddress类通信协议例子:协议 就好比我们现在说的普通话 都必须要说普通话 否则无法交流 而网络通信协议会比较多一点 例:速率 传输速率 代码结构 传输控制 问题 非常的复杂 所以要大事化小 TCP/IP协议簇:实际上是一组协议重要: 1 TCP 用户传输协议 2 UDP:用户数据报协议 出名的协议: 4 TCP 用户传输协议 5 IP:网络互连协议 TCP UDP 对比TCP:打电话 1.连接 稳定 2.三次握手 四次挥手UDP: 发短信 1 不连接 不稳定 2.客户端 服务端 没有明确的界限 TCP客户端 1 连接服务器Socket 2 发送消息 服务器 1.建立服务的端口 ServerSocket 2. 等待用户的连接 accept 3. 接受用户的消息(客户端)练习客户端和服务端管道流解释 什么是文件上传复制一个图片到 这个包下面 然后在进行 文件上传练习客户端和服务端运行代码 先启动服务端 在启动客户端 什么是Tomcat在上面的操作中 我们已经创建出 自定义的 客户端和 自定义的 服务端但是这里有 Tomcat服务器 S 客户端 浏览器 B Java后台开发 用的是 Tomcat服务器 S 重点 : 同一个协议下 端口号不能重复例如: http://locallhost:8080/ http为协议 local为IP 8080为端口 什么是UDPTCP类似于打电话 需要连接 而 UDP类似于发短信 发短信: 不用连接 但是需要知道对方的地址发送消息 客户端 因为不需要连接 所以不用建立服务端也不会报错 所以只发送出去了消息 没有消息接受的代码 所以相对于 TCP 如果直接运行 客户端 会直接报错 而 UDP不会练习接受消息 服务端 UDP聊天实现如果想实现多人一起聊天 就需要利用多线程练习一发送者和接收者练习二(重点!!!)在线咨询 :两个人都可以是发送方 也可以是接收方 先利用多线程创建类重点!!! 实现 多线程的 学生类 和老师类方法二可以利用cmd 进行与IDE 进行交流交互 1 找到 代码.class的文件夹下 打开cmd 2 在cmd中找到代码运行 3 然后在IDE中 启动老师类 在cmd中启动学生类out文件下存放的是 .class代码 可以搜索:如何开启window端口 URL:下载网络资源URL就是一个网络类 它代表的是一个地址 练习一下载一个文本 1 打开tomcat 2 在本地电脑 tomcat 的 webapps文件夹下 3 在webapps文件夹下 创建一个自己的文件下 并创建一个文本 文本内容随意(利用NOtepadd++ 进行编辑文本内容) 4 编写代码 运行代码后 发现文件下载下来 证明代码成功练习二比如下载网络歌曲 网易云上面的 前提 这个不用保证tomcat 打开 跟上面的不同 网络编程 计算机网络 网络编程的目的 网络编程的要素 如何实现网络的通信 规则:网络通信的协议 TCP/IP参考模型 总结 一 网络编程中两个主要的问题 1 如何准确的定位到网络上的一台或者多台主机 域名:www.baidu.com IP 14.215.177.38(百度的IP) 2 找到主机之后如何进行通信 二 网络编程中的要素 1 IP和端口号(Java中IP类和端口类) 2 网络通信协议(Java中Udp类 tcp类) IP ip地址:代码 InetAddress 一 作用 唯一定位一台网络上的计算机(相当于人的身份证) 二 127.0.0.1:本机localhost IP地址的分类 一 IP地址的分类(IPv4/IPv6) IPv4是:127.0.0.1 四个字节组成 0-255 42亿 ;三十亿在北美 亚洲四亿 2011年就用尽; IPv6:fe80::15f5:cab4:207d:1e00%9 128位的 八个无符号整数组成 公网(互联网)-私网(局域网) ABCD类地址 域名 :记忆IP问题 IP:www.vip.com www.baidu.com 练习测试IP(类 InetAddress) 端口 练习InetSocketAddress类 通信协议 例子:协议 就好比我们现在说的普通话 都必须要说普通话 否则无法交流 而网络通信协议会比较多一点 例:速率 传输速率 代码结构 传输控制 问题 非常的复杂 所以要大事化小 TCP/IP协议簇:实际上是一组协议 重要: 1 TCP 用户传输协议 2 UDP:用户数据报协议 出名的协议: 4 TCP 用户传输协议 5 IP:网络互连协议 TCP UDP 对比 TCP:打电话 1.连接 稳定 2.三次握手 四次挥手 UDP: 发短信 1 不连接 不稳定 2.客户端 服务端 没有明确的界限 TCP 客户端 1 连接服务器Socket 2 发送消息 服务器 1.建立服务的端口 ServerSocket 2. 等待用户的连接 accept 3. 接受用户的消息(客户端) 练习 客户端和服务端 管道流解释 什么是文件上传 复制一个图片到 这个包下面 然后在进行 文件上传 练习 客户端和服务端 运行代码 先启动服务端 在启动客户端 什么是Tomcat 在上面的操作中 我们已经创建出 自定义的 客户端和 自定义的 服务端 但是这里有 Tomcat服务器 S 客户端 浏览器 B Java后台开发 用的是 Tomcat服务器 S 重点 : 同一个协议下 端口号不能重复 例如: http://locallhost:8080/ http为协议 local为IP 8080为端口 什么是UDP TCP类似于打电话 需要连接 而 UDP类似于发短信 发短信: 不用连接 但是需要知道对方的地址 发送消息 客户端 因为不需要连接 所以不用建立服务端也不会报错 所以只发送出去了消息 没有消息接受的代码 所以相对于 TCP 如果直接运行 客户端 会直接报错 而 UDP不会 练习 接受消息 服务端 UDP聊天实现 如果想实现多人一起聊天 就需要利用多线程 练习一 发送者和接收者 练习二(重点!!!) 在线咨询 :两个人都可以是发送方 也可以是接收方 先利用多线程创建类 重点!!! 实现 多线程的 学生类 和老师类 方法二 可以利用cmd 进行与IDE 进行交流交互 1 找到 代码.class的文件夹下 打开cmd 2 在cmd中找到代码运行 3 然后在IDE中 启动老师类 在cmd中启动学生类 out文件下存放的是 .class代码 可以搜索:如何开启window端口 URL:下载网络资源 URL就是一个网络类 它代表的是一个地址 练习一 下载一个文本 1 打开tomcat 2 在本地电脑 tomcat 的 webapps文件夹下 3 在webapps文件夹下 创建一个自己的文件下 并创建一个文本 文本内容随意(利用NOtepadd++ 进行编辑文本内容) 4 编写代码 运行代码后 发现文件下载下来 证明代码成功 练习二 比如下载网络歌曲 网易云上面的 前提 这个不用保证tomcat 打开 跟上面的不同