2010-02-23 144 views
7

我打算在一個月的課程中創建一個項目,爲此我想閱讀並嘗試製作一些關於網絡/套接字編程的小測試程序Java的。Java網絡/套接字編程教程

理想情況下,我正在尋找的是一個描述和一個結束程序的教程來創建我可以在兩臺計算機之間發送和拒絕小而簡單的文本消息。不必是任何GUI或類似於簡單版本的東西。

我已經閱讀了Sun自己的主頁和我的一本Java Book中的一些文章,但是我似乎錯過了最後一部分了解「網絡編程」的難題。另外,我不知道現在是否混合了一些東西,但根據我的理解,多線程範例也可以應用於網絡/套接字編程。

因此,我的問題是,如果有人知道一個很好的教程或教育鏈接,我可以得到這個主題的概述。我對Java並不是全新的,但在這種類型的編程方面沒有任何經驗。

感謝 - 周華健

回答

2

從我的經驗,在我看來,如果你想學習抽象的由Java網絡API,並針對該問題的任何語言提供的水平套接字編程,你也有熟悉I/O和線程。那裏有很多教程,我建議你拿一本書。只是一個想法!

2

對於基本步驟,您可能不想閱讀本教程Sockets programming in Java。在這個模型中,大多數人使用一個線程來處理一個網絡連接。

在java 1.4中引入了NIO,這使得前奏更加複雜:Java NIO Tutorial

NIO允許使用Selector,它允許您在一個線程中處理多個連接,從而提高性能。

2

這種學習沒有通用的書。最好的選擇是從java自己的套接字/線程教程等開始here

一旦開始實施,遇到問題就會開始學習,最好再次訪問SO並詢問一堆特定的代碼問題。

4

這是一個很好的樣本章節Java Network Programing。還有其他一些零件可用here,也有sample sources可用。

如果你決定買這本書,我會說這幾章是夠了:

  • 第2章基本網絡概念
  • 第三章基本網絡概念
  • 章4. Java的I/O
  • 第5章線程
  • 第6章向上看的互聯網地址
  • 第7章URI和URL
  • 第9章。對於客戶端套接字
  • 第10章插座的服務器

不要理會NIO之中;這是相當先進的。

另外,我不知道我是不是 混合的東西,但現在我 理解可以在多線程 模式也被應用到 網絡/套接字編程。

是的的確,這是一個非常重要的方面。你會發現爲什麼一旦你閱讀sample chapter

玩得開心!

+0

我真的擁有那本書。它在易於理解的語言中解釋了許多不同的術語。但也存在這樣的問題,它不是解釋所需的東西,而是繼續存在,並且有太多不必要的信息。每次我需要一些東西,在讀完本書之後,我就結束了Java的教程頁面或其他地方的信息更好,更「切合實際」的地方。 – Milan

0

如果你想要一個簡單的,簡單的,易於理解的介紹網絡,我會強烈建議您閱讀:Java程序設計入門9日edtion由梁Y.丹尼爾。第33章是聯網,第32章是多線程。

這本書非常好。幾乎所有我在java中都知道的,我從那本書中得到的。在這本書中,複雜的想法很容易理解。對不起,我無法爲你獲得鏈接。你可以谷歌它。