web伺服器模擬實現

2021-06-26 19:15:58 字數 875 閱讀 2328

本文源於51cto。

直接上**

/**

* 山寨 web伺服器

* 1: 支援多個 瀏覽器訪問 (多執行緒)

* 2: 如何提供服務 (socket)

* 3: 如何返回響應 (io)

* * @author phenix

* */

public class tomcatserver

// 服務啟動方法 建立socket伺服器

public void start(int port)

} catch (ioexception e) }}

/** * 專門處理不同的客戶端請求的 多執行緒類

* * @author phenix

* */

public class handlerrequestthread implements runnable catch (ioexception e)

} // 解析請求頭,獲得客戶端請求的資源名稱

private string parserequesthead(inputstream in) throws ioexception

// 根據 資源名稱獲取資源

private void getfile(string filename) throws ioexception else

} // 輸出錯誤資訊

private void senderror(string errornumber, string errormsg)

// 執行緒體方法

@override

public void run() catch (ioexception e)

}}

模擬Web伺服器

應用網路程式設計和io相關知識模擬web伺服器和相關流的解析,並使用該web伺服器結合html實現使用者註冊和登陸功能。要實現登陸和註冊功能,可以通過對請求資訊解析後,應用request類中定義getparameter string key 方法,用鍵來 從map集合獲取值 例如 key usern...

web伺服器 簡單web伺服器實現

三次握手 一般情況下是瀏覽器先傳送請求資料,c s ack 應答 三次握手成功後,才開始進行通訊資料的收發。四次揮手 一般情況下是客戶端先關閉,給瀏覽器傳送關閉資訊。如果瀏覽器傳送了關閉資訊,但是伺服器沒有回過去,較慢 那麼瀏覽器一直發是不是就會有問題?所以會等待 2msl的時間。一般為2 5分鐘。...

Java模擬實現伺服器(Version 1 0)

自己動手寫乙個伺服器,不能說水平會有多大的提公升,但是讓我知道servlet是如何與伺服器進行互動的。現在將簡單的模擬實現記錄下來。此處記錄的是伺服器模擬的簡易版本,以後還會寫乙個利用註解實現的伺服器版本 分析圖 判定引數 if paremter null 將引數放入map集合中 parsepare...