freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

[計算機軟件及應用]java教學ppt第九課網絡(參考版)

2024-10-22 04:03本頁面
  

【正文】 小結 下一講: JDBC ? JDBC基礎 ? JDBC驅動程序 ? JDBC編程 ? 示例 。 ? Socket通信要分別運行服務器和客戶程序。 ? Datagram適用于效率要求高的應用。 小結 ? 回繞地址( )可用于在本地機器上調試網絡程序。 ? URL適用于 Web應用,如訪問 服務器,是高層服務。 ? 網絡上的數據傳送是將網絡連接轉換成輸入輸出流。因此,如果想在這種環(huán)境下提供UDP網絡服務,就需要請求系統(tǒng)管理員重新配置防火墻和路由器,以允許 UDP數據報進入。 當前,廣播通信只能在應用程序中使用,不能在Applet中使用。 客戶端 服務器端 廣播組的 IP地址是一類特殊的 IP地址,它們沒有分配給網上的硬件資源使用,而是專門保留下來作為廣播通信使用的(就像 本機 IP一樣)。 DatagramPacket packet = new DatagramPacket(buf, , group, 4446)。 ()。 (group)。 繼承 DatagramSocket的方法 public void receive(DatagramPacket p):接收數據 public void send(DatagramPacket p):發(fā)送數據 public void connect(IAddress address, int port):與指定的機器通信 public void disconnect():關閉指定的連接 public void close():關閉 Socket 數據報通信 ——廣播通信 數據報通信 ——廣播通信 MulticastSocket socket = new MulticastSocket(4446)。 類 MulticastSocket:從 DatagramSocket繼承而來 構造方法 public MulticastSocket() public MulticastSocket(int port) :在指定的端口通信 這兩個方法都將拋出例外 IOException,程序中需要捕獲處理。 MulticastSocket,允許將數據報以廣播的方式發(fā)送到某個端口的所有客戶。 (received)。 (packet)。 (packet)。 port = parseInt(args[1])。 無須指定端口號,它會自動獲得一個可用的端口號。 byte[] sendBuf = new byte[256]。 DatagramSocket socket。 數據報通信 ——點到點通信 數據報通信 ——點到點通信 接收端(客戶端) 接收數據報的標準步驟: 1. 定義數據成員 int port。 9. 發(fā)送數據包 (packet)。 int port = ()。 在客戶的請求數據報到來之前一直等待。 用來從 socket接收數據,它只需要兩個參數。 存放從客戶端接收的請求信息。 }catch( e) {} socket 綁定到一個本地的可用端口,等待接收客戶端的請求。(用來存放接收方的地址 ) int port。 DatagramPacket packet。 最主要的方法 ——發(fā)送與接收數據報 public void receive(DatagramPacket p) public void send(DatagramPacket p) 這兩個方法都將拋出例外 IOException,程序中需要捕獲處理。 在 Java中,基于 UDP協(xié)議實現網絡通信的類有三個: ? 用于表達通信數據的數據報類 DatagramPacket ? 用于進行端到端通信的類 DatagramSocket ? 用于廣播通信的類 MulticastSocket。 UDP協(xié)議無需在發(fā)送方和接收方建立連接,但也可以先建立連接。數據報是一個在網絡上發(fā)送的獨立信息,它的到達、到達時間以及內容本身等都不能得到保證。 } public void run() { … } } Socket通信 ——支持多 Client 客戶 1 客戶 2 服務器 線程 1( ) 線程 2( ) Socket通信 ——Client之間通過 Server通信 可以在服務器端將與各客戶進行通信的 Socket和線程管理起來,從而各客戶之間可以在服務器端的協(xié)助下進行通信。 class MultiTalkServerThread extends Thread { public MultiTalkServerThread(Socket socket, int clientNumber) { = socket。 //記錄客戶數目 new MultiTalkServerThread(socket, clientNumber).start()。 socket = ()。 }end while Socket通信 ——支持多 Client Server client1 client2 serverthread2 serverthread1 …… Socket通信 ——支持多 Client serverSocket = new ServerSocket(4444)。 //主線程 while (true) { accept a connection 。 myserver1 myclient1 myserver2myclient2 Socket通信 ——支持多 Client ? 解決方案二: 將服務器寫成多線程的,不同的處理線程為不同的客戶服務。 ? 在運行時,服務器端程序一般應先行啟動。 ? 要控制好輸入 /輸出流和 Socket關閉的時間。 Socket通信 創(chuàng)建服務器 (端口號 ) 定義數據成員 服務器等待 網絡連接 建立 socket流 發(fā)送談話信息 接收用戶談話信息 創(chuàng)建 Socket實例 定義數據成員 建立 socket流 發(fā)送談話信息 接收服務器談話信息 關閉流 accept() 4444 結束談話 (Bye.) 結束談話 (Bye.) 關閉流 服務器端 客戶端 Socket通信 看看這個談話程序的運行效果: 客戶端 服務器端 Socket通信 ——簡單的 Client/Server ? 在本地機器上測試網絡程序用 回繞地址 Socket socket = new Socket(“”, 4444)。 為了便于讀寫數據,應在返回的輸入 /輸出流對象上建立過濾流,如DataInputStram/DataOutputStram、 BufferedInputStream/ BufferedOutputStream、PrintStream; InputStreamReader/ OutputStreamWriter、 BufferedReader/ BufferedWriter、 PrintWriter等。 BufferedWriter = new BufferedWriter( new InputStreamWriter( () ) )。 try{ socket = ()。 }catch(IOException e){} 在服務器端: try{ ServerSocket server = new ServerSocket(4444)。 通常,程序員的主要工作是針對所要完成的功能在第 3步進行編程,第 4步對所有的通信程序來說幾乎都是一樣的。 利用輸入 /輸出流,按照一定的協(xié)議對 Socket進行讀 /寫操作。 Socket通信 ——類 ServerSocket Socket通信 無論一個 Socket通信程序的功能多么齊全、程序多么復雜,其基本結構都是一樣的,都包括以下四個基本步驟: 在客戶方和服務器方創(chuàng)建 Socket/ServerSocket實例。 Socket通
點擊復制文檔內容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1