Java Network Programming笔记
来源:互联网 发布:mac qq发离线文件 编辑:程序博客网 时间:2024/05/16 07:43
复习java network Programming
本书的目的是让我们知道java底层组件的结构,以及它们是如何组合、封装来实现网络通讯的。作者举出的例子主要还是以HTTP协议为主。
在java网络编程接口的结构:
IO stream: inputstream/outputstream,以及在他们之上的filter、buffer。不管你的资源是http、ftp、本地文件系统,你都要经过input、output bytes,并把这些bytes转化为你所需要的格式。
network IO里面比较重要的概念是Blocking、Non-Blocking。
Socket: 其实sun科学家对Socket API的划分要比c、c++系统下的api更加合适。其特点有二,明确的区分了server、client,也就是serverSocket和Socket,serverSocket的工作室lister一个端口,让后返回Socket。不像C的api,需要通过传入的parameter来区分。
另外sun的socket是要返回output、input对象的,真正的读写工作于socket本身分离了,socket只专注于对这条数据通路的设置,而不关注与读写。
socket是把tcp/ip协议三层之上的数据传输给你,而本身你是可以对socket作一些设置的,这些设置主要是对第三层(tcp、udp)协议的控制,比如tcp、udp的选择,timeout的设置等等。
在掌握了socket和 io stream后,就可以利用api写一些简单的network程序,并且知道底层代码运作情况。
Threads:多线程编程在写network server时是必须的,你绝对不会让你的服务器作为单线程跑把?多线程模型中的关键点是临界区的访问,锁等等。
在IO stream、Socket、Threads三大块你都掌握好后,下一步是对tcp/ip四层的协议开刀,protocol handler由你来写,apache基金的httpcore和httpclient就提供http协议的接口,另外sun的URL package也包含了很多protocol handler,不过他们都是放在sun的package中,而不是java,由此可见sun对自己的工作关注点是非常明确的。
- Java Network Programming笔记
- Java Network Programming 笔记(1)
- Java Network Programming 笔记(2)
- Java Network Programming 笔记(3)
- Java Network Programming 笔记(1)
- Java Network Game Programming
- Java Network Programming, Third Edition
- unix network programming 笔记——SOCK_RAW
- unix network programming 笔记——SOCK_RAW .
- UNIX Network Programming笔记之第一章
- UNIX Network Programming笔记之第二章
- UNIX Network Programming笔记之第三章
- UNIX Network Programming笔记之第四章
- UNIX Network Programming笔记之第七章
- UNIX Network Programming笔记之第八章
- UNIX Network Programming笔记之第十二章
- Chapter 11 Network Programming [《CSAPP》 笔记]
- Java(TM) Network Programming and Distributed Computing
- UNICODE和ANSI兼容性
- 一步一步学习struts2(3):Action的配置
- WinIo 模拟键盘鼠标··
- win7下ps/2键盘、笔记本键盘、触摸板无法使用的一种解决办法
- [技术回顾]面向对象
- Java Network Programming笔记
- 同步通信和异步通信
- c++ 数据封装模式之一: 简单工厂模式
- c++ 数据封装模式之一: 简单工厂模式
- [技术回顾]09年3月份学习的2种开发模式
- VC编译出现 "Internal error during IncrBuildImage"
- Jim Chan函数调用的汇编程序过程
- c++ 数据封装模式之二: 工厂方法模式
- 初始化隐藏对话框程序