深入剖析Tomcat 實現簡單的Web伺服器

2021-08-01 06:42:36 字數 1245 閱讀 3818

在深入剖析tomcat中,用socket實現了乙個簡單的伺服器,伺服器監聽80埠,接受瀏覽器的請求,如果請求了靜態資源,比如index.html,那麼會將webroot下的靜態檔案index.html通過socket傳送給瀏覽器

httpserver程式

}request類,解析請求的url

public

class request

public

void

parse()catch (exception e)

for(int j = 0; jout.print(request.tostring());

uri = parseuri(request.tostring());

}private string parseuri(string requeststring)

}return

null;

}public string geturi()

}

response類,返回資料到瀏覽器

public

class response

public

void

setrequest(request request)

public

void

sendstaticresource() throws ioexception

}else

}catch (exception e)finally }}

}

伺服器截圖

瀏覽器截圖

從上面的程式來看,瀏覽器傳送的資料最終也是通過socket傳送的,伺服器程式監聽埠,然後收到瀏覽器傳送的頭資訊。然後吧index.html的內容用outputstream流傳送到瀏覽器

虛函式的內部實現原理深入剖析

今天學c 多型時,對虛函式實現原理有些疑惑。然後爬了很多文,看了很多教程。經過一系列研究,以下是我的理解 多型是c 物件導向三大特性之一 多型分為兩類 靜態多型和動態多型區別 注意 請按照編號順序檢視 說明 include includeusing namespace std 動物類 class a...

深入剖析C 的多型

一 什麼是多型 物件導向程式設計中的另外乙個重要概念是多型性。在執行時,可以通過指向基類的指標,來呼叫實現 派生類中的方法。可以把一組物件放到乙個陣列中,然後呼叫它們的方法,在這種場合下,多型性作用就體現出來了,這些物件不必是相同型別的物件。當然,如果 它們都繼承自某個類,你可以把這些派生類,都放到...

深入剖析C 的多型

天雨 一 什麼是多型 物件導向程式設計中的另外乙個重要概念是多型性。在執行時,可以通過指向基類的指標,來呼叫實現派生類中的方法。可以把一組物件放到乙個陣列中,然後呼叫它們的方法,在這種場合下,多型性作用就體現出來了,這些物件不必是相同型別的物件。當然,如果它們都繼承自某個類,你可以把這些派生類,都放...