熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

使用Java編寫B/S網絡通信程序

2013-11-23 18:52:58  來源: Java核心技術 
網絡上的系統結構多為客戶/服務器模式服務器端負責數據和圖像等的存儲維護治理以及傳遞客戶端則負責人機界面的操作送出需求及顯示收回的數據
  
  下面介紹一下如何使用Java來進行網絡編程
  
  ) 由於客戶端通過IE同服務器建立聯系所以客戶端使用Applet服務器端使用Application
  
  ) 服務器應設置成多線程應答多個客戶的請求
  
  ) 兩端通信使用SOCKET機制
  
  Java中輸入/輸出流概念
  
  過濾流DataInputStream 和DataOutputStream 除了分別作為FilterInputStream 和FilterOutputStream的子類外還分別實現了接口DataInput 和DataOutput接口DataInput 中定義的方法主要包括從流中讀取基本類型的數據讀取一行數據或者讀取指定長度的字節數如readBoolean() readInt()readLine()readFully()等接口DataOutput中定義的方法主要是向流中寫入基本類型的數據或者寫入一定長度的字節數組如writeChar()writeDouble() DataInputStream可以從所連接的輸入流中讀取與機器無關的基本類型數據用以實現一種獨立於具體平台的輸入方式DataInputStream 可以向所連接的輸出流寫入基本類型的數據
  
  Socket 機制
  

  Socket是面向客戶/服務器模型設計的網絡上的兩個程序通過一個雙向的通訊連接實現數據的交換這個雙向鏈路的一端稱為一個Socket Socket通常用來實現客戶方和服務方的連接客戶程序可以向Socket寫請求服務器將處理此請求然後通過Socket將結果返回給用戶
  
  Socket通信機制提供了兩種通訊方式有聯接和無聯接方式分別面向不同的應用需求使用有聯接方式時通信鏈路提供了可靠的全雙工的字節流服務在該方式下通信雙方必須創建一個聯接過程並建立一條通訊鏈路以後的網絡通信操作完全在這一對進程之間進行通信完畢關閉此聯接過程使用無聯接方式時其系統開銷比無聯接方式小但通信鏈路提供了不可靠的數據報服務不能保證信源所傳輸的數據一定能夠到達信宿在該方式下通信雙方不必創建一個聯接過程和建立一條通訊鏈路網絡通信操作在不同的主機和進程之間轉發進行
  
  Java語言簡介
  Java語言的優點主要表現在簡單面向對象多線程分布性體系結構中立安全性等方面
  
  () 簡單性
  
  Java與C++語言非常相近但Java比C++簡單它拋棄了C++中的一些不是絕對必要的功能如頭文件預處理文件指針結構運算符重載多重繼續以及自動強迫同型Java實現了自動的垃圾收集簡化了內存治理的工作這使程序設計更加簡便同時減少了出錯的可能
  
  () 面向對象
  
  Java提供了簡單的類機制和動態的構架模型對象中封裝了它的狀態變量和方法很好地實現了模塊化和信息隱藏而類則提供了一類對象的原型通過繼續和重載機制子類可以使用或重新定義父類或超類所提供的方法從而既實現了代碼的復用又提供了一種動態的解決方案
  
  Java是一種完全面向對象的程序設計語言它除了數組布爾和字符三個基本數據類型外的其它類都是對象它不再支持全局變量在Java中假如不創建新類就無法創建程序Java程序在運行時必須先創建一個類的實例然後才能提交運行
  
  Java同樣支持繼續特性Java的類可以從其它類中繼續行為但Java只支持類的單重繼續即每個類只能從一個類中繼續
  
  Java支持界面界面答應程序員定義方法但又不立即實現一個類可以實現多個界面利用界面可以得到多重繼續的許多優點而又沒有多重繼續的問題
  
  () 多線程
  
  多線程使應用程序可以同時進行不同的操作處理不同的事件在多線程機制中不同的線程處理不同的任務他們之間互不干涉不會由於一處等待影響其他部分這樣輕易實現網絡上的實時交互操作
  
  Java程序可以有多個執行線程如可以讓一個線程進行復雜的計算而讓另一個線程與用戶進行交互這樣用戶可以在不中斷計算線程的前提下與系統進行交互多線程保證了較高的執行效率
  
  () 分布性
  
  Java是面向網絡的語言通過它提供的類庫可以處理TCP/IP協議用戶可以通過URL地址在網絡上很方便的訪問其他對象
  
  () 體系結構中立
  
  Java是一種網絡語言為使Java程序能在網絡的任何地方運行Java解釋器生成與體系結構無關的字節碼結構的文件格式Java為了做到結構中立除生成機器無關的字節碼外還制定了完全統一的語言文本如Java的基本數據類型不會隨目標機的變化而變化一個整型總是一個長整型總是
  
  為了使Java的應用程序能不依靠於具體的系統Java語言環境還提供了用於訪問底層操作系統功能的類組成的包當程序使用這些包時可以確保它能運行在各種支持Java的平台上
From:http://tw.wingwit.com/Article/program/Java/hx/201311/25926.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.