学习Java网络编程推荐书籍

12
为了弥补我在网络基础知识方面的明显缺失,我正在寻找一本书,它最好包含以下内容:
-> 1或2章节介绍传输层:tcp、udp等;
-> 1或2章节介绍应用层:http、dns等;
-> 其余部分将致力于使用与Java相关的技术以实际方式发送数据。这将涉及到已有产品的讨论(例如Hessian、Protobuf、Thrift、Tibco……)、性能比较、案例研究等。
是否有这样的一本书存在?
编辑:感谢至此提供的所有答案……但是列出的大多数书籍都过于侧重于网络堆栈的较低层(即TCP/IP、网络管理……)。 这只是答案一半。 我仍然渴望听到关于另一半的建议:围绕Java开发人员可用于运送数据的“最新选择”,哪些产品/框架可用,以及它们的比较。

“网络基础” - 你需要多深入的了解?首先,如果你还没有这样做,我建议从维基百科页面开始:http://en.wikipedia.org/wiki/OSI_model - 这应该为你理解网络协议的基础知识提供一个良好的起点。 - Jean Hominal
嗯,回复的人可能没有告诉你有关另一半问题的任何书籍,可能是因为他们不知道有这样的书。即使是讲述Protobuf或Thrift的书籍也很难找到;要找到一本对这些框架进行良好比较的书籍更加困难。 - Jean Hominal
7个回答

9

1
相当过时(发布于2004年),但是最接近我所寻找的。 - Eleco
1
第四版:http://shop.oreilly.com/product/0636920028420.do - JBoy
1
这还有意义吗? - rooni

4
如果您想提高网络基础知识,最好阅读涵盖网络基础知识的书籍。一旦您熟悉了网络基础知识,就可以开始学习Java教程中的网络部分,并探索适当的Java库。网络是一个独立于任何编程语言的领域,其理解是独立的。
话虽如此,以下是我发现有用的一些网络书籍: TCP/IP详解卷1:协议 作者:Douglas Comer TCP/IP详解卷1:协议 作者:W.Richard Stevens 计算机网络 作者:Andrew.S.Tanenbaum

4

这个资源适合初学者了解网络基础知识,但不深入探讨现有产品和技术的优缺点(也就是我问题中提到的最后一点)。 - Eleco

2

2

针对TCP/IP的文本(不是Java为中心)

如果您需要一本关于Java网络编程的书,我建议选择这本。大多数书籍已经过时,没有涵盖新的内容,而这本书则包括NIO,同时在示例中使用了泛型。


1
作为网络基础知识的入门读物,我推荐Craig Hunt所著的《TCP/IP Network Administration, Third Edition》。这本书提供了一章关于TCP/IP协议栈,另一章涵盖了寻址和路由,其余部分则深入介绍了大多数常见的网络服务和诊断工具。
如果你想要一本权威参考书,那么Richard Stephens所著的《TCP/IP Illustrated, Vol 1: The Protocols》是一个不错的选择。如果你对网络非常着迷,可以考虑购买或借阅第2和第3卷。
至于Java特定的网络介绍,我建议Elliotte Rusty Harold所著的《Java Network Programming, Third Edition》。这本书确实受到了一些批评,但我仍然认为它是一个很好的入门读物,并且易于理解。

1

计算机网络-自顶向下方法由Kurose/Ross编写,具有较重的Java倾向,并且在伴随网站上有大量的Java项目。

章节:

  1. 计算机网络和互联网
  2. 应用层(HTTP、FTP、SMTP)
  3. 传输层(TCP、UDP)
  4. 网络层(路由器、IP)
  5. 链路层和局域网
  6. 无线和移动网络
  7. 多媒体网络
  8. 计算机网络安全
  9. 网络管理

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接