本文源於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...