JAVA網路程式設計第四版

Book description

開發網路應用程式

本書對Java網路程式設計提供完整介紹,讀者會學到如何使用Java的網路類別庫,輕鬆完成多執行緒伺服器,加密通訊,區域網路廣播與發送數據到伺服器端處理程式等常見的網路通訊任務。

作者Elliotte Rusty Harold在書中以完整的範例介紹方法與類別,重新編寫過的第四版涵蓋了REST,SPDY,非同步的I/O以及其他新技術。

‧TCP/IP,UDP/IP等網際網路底層通訊協定
‧處理網路輸出入的Java API
‧InetAddress與DNS交互運作
‧以URI與URL類別尋找與下載網路資源
‧深入解析HTTP通訊協定,包括REST,標頭與cookie等
‧以Java的socket類別開發網路用戶端與伺服器程式
‧透過非阻斷的I/O管理巨量連線

作者Elliotte Rusty Harold有近二十年的Java網路程式設計經驗,他曾經寫過多本關於Java,XML與HTML書籍,是許多專業論壇的專題主講人之一,同時也是Jaxen XPath library與XOM等開源專案的參與者

Table of contents

  1. 封面
  2. 書名頁
  3. 英文版權頁
  4. 獻給
  5. 目錄 (1/2)
  6. 目錄 (2/2)
  7. 前言 (1/2)
  8. 前言 (2/2)
  9. 第一章 網路概論
  10. 網路
  11. 網路的分層
  12. 主機至網路層
  13. 網際網路層
  14. 傳輸層
  15. 應用層
  16. IP、TCP與UDP
  17. IP位址與域名
  18. 埠(port)
  19. 網際網路
  20. 位址區塊
  21. 轉址(NAT)
  22. 防火牆
  23. 代理(proxy)伺服器
  24. 主從式架構
  25. 網路標準
  26. IETF的RFC
  27. W3C建議書
  28. 第二章 串流
  29. 輸出串流
  30. 輸入串流
  31. 標記與重置
  32. 過濾器串流
  33. 串接過濾器
  34. 有緩衝區的串流
  35. PrintStream
  36. 資料串流
  37. Reader與Writer
  38. Writer
  39. OutputStreamWriter
  40. Reader
  41. 過濾器Reader與Writer
  42. PrintWriter
  43. 第三章 執行緒
  44. 執行緒運作
  45. 執行緒的subclass
  46. 實作Runnable介面
  47. 從執行緒回傳資訊
  48. 競爭狀態(race condition)
  49. 輪詢(polling)
  50. 回呼(callback)
  51. Future、Callable與Executor
  52. 同步(synchronization)
  53. 同步化區段
  54. 同步化method
  55. 同步化的替代方案
  56. 死結
  57. 執行緒排程
  58. 優先權
  59. 搶佔行為(preemption) (1/2)
  60. 搶佔行為(preemption) (2/2)
  61. 執行緒的pool與executor
  62. 第四章 網際網路位址
  63. InetAddress類別
  64. 建構InetAddress物件
  65. Getter Method
  66. 位址的種類
  67. 檢查連接性
  68. 物件方法
  69. Inet4Address與Inet6Address
  70. NetworkInterface類別
  71. Factory Method
  72. Getter Method
  73. 一些有用的程式
  74. SpamCheck
  75. 處理網站記錄
  76. 第五章 URL與URI
  77. URI
  78. URL
  79. 相對路徑(relative)URL
  80. URL類別
  81. 建構URL
  82. 從URL取得資料 (1/2)
  83. 從URL取得資料 (2/2)
  84. 分解URL
  85. 等式與比較
  86. 型別轉換
  87. URI類別
  88. 建構URI
  89. URI的組成部分
  90. 解析相對路徑URI
  91. 等式與比較
  92. 以字串表示
  93. x-www-form-urlencoded
  94. URLEncoder
  95. URLDecoder
  96. 代理
  97. 系統屬性
  98. Proxy類別
  99. ProxySelector類別
  100. 透過GET與伺服器端程式通訊
  101. 存取密碼保護的網站
  102. Authenticator類別
  103. PasswordAuthentication類別
  104. JPasswordField類別
  105. 第六章 HTTP
  106. 通訊協定
  107. Keep-Alive
  108. HTTP Methods
  109. 請求資料
  110. Cookie
  111. CookieManager
  112. CookieStore
  113. 第七章 URLConnection
  114. 建立URLConnection
  115. 從伺服器讀取資料
  116. 讀取標頭
  117. 讀取特定標頭欄位 (1/2)
  118. 讀取特定標頭欄位 (2/2)
  119. 讀取未定義標頭欄位
  120. 快取
  121. Java的網頁快取
  122. 連線組態
  123. protected URL url
  124. protected boolean connected
  125. protected boolean allowUserInteraction
  126. protected boolean doInput
  127. protected boolean doOutput
  128. protected boolean ifModifiedSince
  129. protected boolean useCaches
  130. Timeout
  131. 設定用戶端請求的HTTP標頭
  132. 輸出資料到伺服器 (1/2)
  133. 輸出資料到伺服器 (2/2)
  134. URLConnection的安全考量
  135. 猜測MIME媒體格式
  136. HttpURLConnection
  137. 請求的method
  138. 切斷連線
  139. 處理伺服器回應
  140. 代理伺服器
  141. 串流模式
  142. 第八章 用戶端的Socket
  143. 使用socket
  144. 使用Telnet偵測通訊協定
  145. 以socket讀取伺服器 (1/2)
  146. 以socket讀取伺服器 (2/2)
  147. 以socket輸出到伺服器
  148. 建構與連接socket
  149. 基本建構元
  150. 選擇連線網路介面
  151. 無連線建構
  152. socket定址
  153. 代理伺服器
  154. 取得socket資訊
  155. 關閉或連線中?
  156. toString()
  157. 設定socket選項
  158. TCP_NODELAY
  159. SO_LINGER
  160. SO_TIMEOUT
  161. SO_RCVBUF與SO_SNDBUF
  162. SO_KEEPALIVE
  163. OOBINLINE
  164. SO_REUSEADDR
  165. IP_TOS服務分類
  166. socket的例外
  167. GUI應用程式中的socket
  168. whois
  169. 網路用戶端函式庫 (1/2)
  170. 網路用戶端函式庫 (2/2)
  171. 第九章 伺服器的socket
  172. 使用ServerSocket
  173. 輸出二進位資料
  174. 多執行緒伺服器
  175. 以socket撰寫伺服器
  176. 關閉伺服器socket
  177. 伺服器記錄
  178. 記錄什麼
  179. 如何記錄
  180. 建構伺服器socket
  181. 無綁定的建構
  182. 取得伺服器socket資訊
  183. socket選項
  184. SO_TIMEOUT
  185. SO_REUSEADDR
  186. SO_RCVBUF
  187. 服務類型
  188. HTTP伺服器
  189. 單檔伺服器
  190. 重新導向
  191. 全功能HTTP伺服器 (1/2)
  192. 全功能HTTP伺服器 (2/2)
  193. 第十章 加密的Socket
  194. 加密通訊
  195. 建構加密用戶端socket
  196. 選擇加密套件(Cipher Suite)
  197. 事件處理程序
  198. Session管理
  199. 用戶模式
  200. 建構加密的伺服器端socket
  201. SSLServerSockets組態
  202. 選擇加密套件
  203. session管理員
  204. 用戶模式
  205. 第十一章 非阻斷I/O(NIO)
  206. 用戶端範例
  207. 伺服器範例 (1/2)
  208. 伺服器範例 (2/2)
  209. 緩衝區
  210. 建構緩衝區
  211. 填入與排放
  212. 批量(bulk)
  213. 資料轉換
  214. view緩衝區
  215. 收攏(compacting)緩衝區
  216. 複製緩衝區
  217. 分割(slicing)緩衝區
  218. 記號與重置
  219. Object的method
  220. 通道
  221. SocketChannel
  222. ServerSocketChannel
  223. Channels類別
  224. 非同步通道(Java 7)
  225. socket選項(Java 7)
  226. 選擇就緒的socket
  227. Selector類別
  228. SelectionKey類別
  229. 第十二章 UDP
  230. UDP通訊協定
  231. UDP用戶端
  232. UDP伺服器
  233. DatagramPacket類別
  234. 建構元
  235. 讀取的method
  236. setter
  237. DatagramSocket類別
  238. 建構元
  239. 發送與接收數據報
  240. 管理連線
  241. socket選項
  242. SO_TIMEOUT
  243. SO_RCVBUF
  244. SO_SNDBUF
  245. SO_REUSEADDR
  246. SO_BROADCAST
  247. IP_TOS
  248. 一些有用的應用程式
  249. 簡單的UDP用戶端
  250. UDPServer
  251. UDP版echo用戶端
  252. DatagramChannel
  253. 使用DatagramChannel
  254. 第十三章 IP多址傳送
  255. 多址傳送
  256. 多址傳送的位址與群組
  257. 用戶端與伺服器
  258. 路由器與路徑
  259. 使用多址傳送socket
  260. 建構元
  261. 與多址傳送群組溝通
  262. 兩個簡單的範例
  263. 索引 (1/3)
  264. 索引 (2/3)
  265. 索引 (3/3)
  266. 關於作者
  267. 出版記事

Product information

  • Title: JAVA網路程式設計第四版
  • Author(s): Elliotte Rusty Harold
  • Release date: September 2014
  • Publisher(s): GoTop Information, Inc.
  • ISBN: None

You might also like

book

Java性能优化实践:JVM调优策略、工具与技巧

by Benjamin J. Evans, James Gough, Chris Newland

在当前的互联网开发模式下,系统访问量日增、代码臃肿,各种性能问题纷至沓来。性能优化作为一个常谈常新的话题,受到越来越多开发者的关注。而Java是一门使用广泛的语言,社区生态中积攒了大量宝贵的性能优化经验。 作为一本性能调优方面的实用指南,本书从实验科学的角度将JVM调优的技术原理与方法论相结合,并在此基础上提供了可选择的工具。通过对各方面的深入研究,本书能让使用复杂技术栈的中高级Java技术专家以量化和可验证的方法优化Java应用程序性能。 了解Java的原则和技术如何充分利用现代硬件和操作系统 探究一些性能测试以及困扰团队的常见反模式 理解测量Java性能数据的陷阱以及微基准测试的缺点 深入研究JVM垃圾收集日志、监控、调优和工具 探究JIT编译和Java语言性能技术 学习Java集合类API与性能有关的方面,从整体上理解Java并发

book

深入淺出代數

by Tracey Pilone, Dan Pilone

『本書從學生們的生活周遭取材,設計了許多優異的範例。所有的範例與概念,全都搭配得恰到好處。』 —Herbert Tracey,羅耀拉大學數學系講師 『《深入淺出代數》是一本極具有吸引力的書籍。在解釋觀念、帶領讀者循序漸進、一步一步解決問題等等方面,本書可說是做的非常出色。』 —Shannon Stewart,數學老師 『本書採用對話的方式來呈現訊息,效果十分具有吸引力,對學習的過程也很有幫助。這種感覺就好像是真的在跟作者直接對話似的。』 —Amanda Borcky 你將從本書學到什麼? 即使拼命用功成績還是不見好轉,你累了嗎?高中代數絕不能當掉,要不然你的手機就拿不回來了嗎?只要你有心學好代數,《深入淺出代數》這本書就是為你而設計的。本書到處充滿具有吸引力的故事劇情與實際練習,還有真實世界中會遇到的狀況說明。讀完本書之後,不管是自然數、指數、聯立方程式還是多項式圖形,再也沒有什麽能難得倒你了。 這本書為何如此與眾不同? 我們認為你的時間寶貴,不應該浪費在與新概念周旋不下的窘境之中。運用認知科學與學習理論的最新研究成果,我們精心建構出一段引發多重感知的學習體驗。《深入淺出代數》針對大腦運作而設計,採用了豐富的視覺化風格,至於那些令你昏昏欲睡的冗贅敘述?那就免了吧。

book

深入淺出程式設計

by David Griffiths, Paul Barry

易學易用的編程指南 ‧把至關緊要的編程概念深植於你的大腦 ‧為你的工具箱增添方法、函式與物件等法寶 ‧避免讓程式的輸入與輸出把你耍得團團轉 ‧奠基於Python語言的編程學習指南 ‧以職業手法處理你的資料 ‧建立功能齊備且引人入勝的圖形化應用程式 ‧學習如何自動化擾人的重複性工作 『《深入淺出程式設計》以反覆式開發的程序清楚明瞭地教導程式設計,一點一滴、循序漸進地逐步增加理論與解釋的深度和廣度,再據以進行實際的編程工作,讓程式獲得持續不斷的提升與改善。這正是編程工作在真實世界中的理想發展模式。同時,本書亦善用教學論壇的優點,讓這樣的教導方式發揮得更淋漓盡致。我將這本書推薦給想要開始探索編程世界卻又不知從何著手的人,也將這本書推薦給非編程新手但是對Python語言有興趣的人。就一般化程式設計與Python編程而言,這絕對是一本值得好好品味的書籍。』 — Jeremy Jones,《Python for Unix and Linux …

book

Think Data Structures|Java演算法實作和資料檢索

by Allen B. Downey

“一本極好又務實的資料結構入門書籍,讓讀者擁有剛好的理論知識以進行演算法分析,同時兼顧實際應用。” -Barry Wittman Associate Professor Elizabethtown College “經由閱讀本書,讀者進入Java collection framework的世界,使用Ant和JUnit,並建立一個有趣的網路搜尋引擎雛型,繼Think Java之後又一力作!” -Chris Mayfield Associate Professor James …