网络编程是RPC的奠基,RPC编程贯穿了程序员生涯的始终。本章首先分析为什么要学网络编,本课为谁设计,然后介绍课程内容主线脉络,让大家清晰知道本课程并非光说不练的假把式,而是处处有实战,实战项目步步优化,最后通过综合项目巩固所学。...1-1 【探秘java.io】始于BIO,陷于NIO,终于AIO (13:26)
第2章 网络层的解析与协议本章首先对网络中涉及的网络链路层的解析进行讲解,进一步引出网络基本协议知识。使学员了解分层思想,对三种协议的定位及作用有所了解。2-1 URL解析与构造 (06:27)2-2 域名DNS的解析过程 (07:02)2-3 域名DNS查询的两种方式:递归与迭代 (06:47)2-4 网络协议快速扫盲 (09:32)2-5 网络协议分门别类 (02:11)2-6 连接一切(物理、网卡、主机、端口的连接) (06:48)2-7 网络各个层的数据包格式 (10:25)
第3章 解读java.io专业术语也可以变得生动精辟本章对java.io包进行介绍,同时以一个直击灵魂的例子“告白为例”讲解同步异步阻塞非阻塞等几个专业术语,通俗易懂,印象深刻,最后简单普及线程及线程池的使用方式,主要目的是在后面IO网络编程中分析问题及使用做储备。...3-1 java.io之字符流 (18:01)3-2 java.io之字节流 (13:53)3-3 Socket概述 (13:29)3-4 同步异步阻塞非阻塞 (12:47)3-5 网络通信中的线程池 (14:04)
第4章 JavaIO的“前世”:BIO阻塞模型本章引入编程模型的概念,首先通过分析BIO编程模型,使同学了解BIO设计思想;然后对BIO编程核心类和网络编程原理进行讲解,使同学掌握BIO编程步骤,为后续进行基于NIO的聊天室做铺垫。4-1 Socket与ServerSocket (05:43)4-2 实战:ServerSocket (18:22)4-3 实战:Socket (15:01)4-4 运行简单的服务器客户端实例 (06:04)4-5 运行改进的服务器客户端实例(上) (06:40)4-6 运行改进的服务器客户端实例(下) (03:58)
第5章 实战:基于BIO的多人聊天室设计与实现光说不练假把式。所谓以史为鉴,可以知兴替,现在开始用最古老最传统的技术BIO进行多人聊天室的设计和实战。从BIO编程模型的分析,到聊天室功能的抽象,到设计与UML建模,最终到实现,进一步优化重构,步步不离实际开发。...5-1 BIO编程模型简析 (06:21)5-2 多人聊天室功能概述 (02:02)5-3 多人聊天室设计 (07:26)5-4 多人聊天室设计UML建模之时序图 (12:36)5-5 实现聊天室服务端:ChatServer (31:50)5-6 实现聊天室监听器:ChatHandler(上) (05:03)5-7 实现聊天室监听器:ChatHandler(下) (21:32)5-8 实现聊天室客户端:ChatClient (21:50)5-9 实现聊天室用户输入监听器:UserInputHandler(上) (10:27)5-10 实现聊天室用户输入监听器:UserInputHandler(下) (00:28)5-11 多人聊天室演示(上) (03:13)5-12 多人聊天室演示(下) (02:20)5-13 伪异步IO编程模型简析 (06:32)5-14 使用伪异步IO改进多人聊天室 (07:45)
第6章 JavaIO的“今生”:NIO非阻塞模型首先对比上一章BIO编程模型介绍NIO编程模型,通过对比讲解NIO在编程模型上的优点;然后讲解NIO中核心类;分别利用BIO和NIO实战本地文件拷贝功能并分析性能差异引起的原因,夯实NIO的基本功,为后续的改造聊天室功能做技术铺垫。...6-1 NIO概述 (13:29)6-2 Buffer简析 (16:38)6-3 Channel简析 (02:21)6-4 实战:多方法实现本地文件拷贝(上) (25:41)6-5 实战:多方法实现本地文件拷贝(下) (27:41)6-6 本地文件拷贝演示(上) (15:02)6-7 本地文件拷贝演示(下) (09:41)6-8 Selector简析 (17:20)
第7章 实战:使用NIO改造多人聊天室传说,目前很火的NIO框架是Netty,不学好NIO,进入Netty世界会被虐,还有RPC的基石也是NIO,所以话不多说,本章以代码驱动式让你全面掌握NIO模型下的编程,同时让你感受聊天室改造后性能的提升。7-1 NIO编程模型精讲 (16:43)7-2 NIO模型实现ChatServe_1 (15:51)7-3 NIO模型实现ChatServer_2 (19:28)7-4 NIO模型实现ChatServer-accept事件 (04:53)7-5 NIO模型实现ChatServer_read事件 (16:40)7-6 NIO模型实现ChatServer_forwardMessage (17:39)7-7 NIO模型实现ChatServer_handles (19:21)7-8 NIO模型实现ChatClient_1 (13:54)7-9 NIO模型实现ChatClient_2 (13:55)7-10 NIO模型多人聊天室演示 (08:51)
第8章 JavaIO的“后世”之师:AIO异步通信模型首先对照BIO、NIO介绍AIO编程模型,回顾三种编程模型,总结IO网络编程的演化历史;然后讲解JDK中AIO核心类及实现原理并梳理AIO编程步骤。8-1 内核IO模型 (21:25)8-2 异步调用机制 (08:13)8-3 服务器端实现(第一回合) (16:21)8-4 服务器端实现(第二回合) (16:41)8-5 服务器端实现(第三回合) (13:48)8-6 服务器端实现(最终回合) (14:52)8-7 客户端实现 (17:05)8-8 演示 (05:08)
第9章 实战:基于AIO改造多人聊天室所谓前事不忘后事之师,尽管当前AIO用的很少,不过按照技术发展的进程,未来可期。因此我们需要面向未来学习,面向未来编程。本章对聊天室进行AIO改造,同时观察改造前后性能的提升。9-1 AIO模型 (10:37)9-2 ChatServer服务器的创建 (14:40)9-3 ChatServer服务器实现AcceptHandler (17:42)9-4 ChatServer服务器实现ClientHandler (27:09)9-5 ChatServer服务器在线用户列表操作 (08:22)9-6 ChatServer服务器提取客户端身份标识 (04:56)9-7 ChatServer服务器转发信息操作 (12:04)9-8 AIO客户端实现 (11:41)9-9 AIO客户端实现消息发送 (05:38)9-10 AIO多人聊天室演示 (03:46)
第10章 综合实战:简易版Web服务器【“道”与“术”的进阶】本章先对服务器基本知识做介绍;然后分析web服务器的原理及使用;最后带领学员动手从设计到测试完整实现一个简易版web服务器。10-1 向服务器请求资源 (11:52)10-2 Tomcat结构 (14:50)10-3 实现Request (17:39)10-4 测试Request (04:57)10-5 实现Response (28:22)10-6 测试Response (16:45)10-7 实现Connector和Processor (15:51)10-8 实现TestClient (06:20)10-9 向webserver请求静态资源 (01:44)10-10 实现ServletRequest和ServletResponse (05:30)10-11 实现Servlet (08:10)10-12 使用facade模式 (14:24)10-13 实现ServletProcessor (13:33)10-14 测试ServletProcessor (07:40)10-15 向webserver请求动态资源 (05:09)10-16 使用nio模型重写connector (18:06)10-17 向改写后的webserver发送请求 (00:42)
第11章 JavaIO经典再现【面试装逼必备佳品】本章回顾前面学习到的原理及实践编程中观察到的现象,对三种IO进行总结,归纳出三种IO的优劣势及使用场景和使用限制;对常见面试题进行解答;归纳总结网络编程所有知识点。11-1 BIO聊天室运行状态 (06:02)11-2 使用线程池的BIO聊天室运行状态 (03:59)11-3 NIO聊天室运行状态 (02:13)11-4 AIO聊天室运行状态 (02:16)11-5 三种IO模型的适用场景 (06:17)
第12章 曲终人散,江湖再会恭喜小伙伴们,闯关成功,顺利get√到java.io的技能,课程尾声,对全课进行总结梳理,预祝小伙伴们前程似锦,他日我们江湖再见~~12-1 思维导图总结(上) (15:22)12-2 思维导图总结(下) (15:09)