minicat 1.0我們實現了返回固定的字串"hello minicat"。
minicat 2.0封裝request和response物件,返回html靜態資源檔案。
minicat 3.0需求:
請求servlet動態資源
思路分析:
想實現servlet動態資源請求,就需要將servlet初始化在容器中(map)。
如何初始化呢?
配置web.xml之前,需要先自定義乙個demoservlet,需要有常見的doget和dopost方法。
進一步想平時寫servlet都需要繼承httpservlet抽象類,所以先自己定義乙個httpservlet抽象類,以便後續做容器初始化。
先定義servlet介面
public
inte***ce
servlet
httpservlet實現servlet
}}接下來就是常規的demoservlet編寫了
}demoservlet準備完成後,就可以配置web.xml了
<?xml version="1.0" encoding="utf-8" ?>
>
>
>
demoservlet-name
>
>
server.demoservletservlet-class
>
servlet
>
>
>
demoservlet-name
>
>
/demourl-pattern
>
>
>
public
void
start()
throws exception
/** * 載入解析web.xml,初始化servlet
*/private
void
loadservlet()
}catch
(documentexception
| classnotfoundexception e)
catch
(illegalacces***ception e)
catch
(instantiationexception e)
}
眼尖的同學估計看到了,這一步驟其實就是在loadservlet()方法中實現的
新增map容器
private map
servletmap =
newhashmap
();// 偽**
private
void
loadservlet()
已經初始化map容器了,那就需要在start方法中引用,start方法完整**如下
/**
* minicat啟動需要初始化展開的一些操作
*/public
void
start()
throws exception
// minicat 2.0 返回靜態資源html
// while (true)
// minicat 3.0 返回動態資源servlet
while
(true
)else
socket.
close();}}
效果演示
手寫實現乙個迷你版的Tomcat
tomcat,這只3腳貓,大學的時候就認識了,直到現在工作中,也常會和它打交道。這是乙隻神奇的貓,今天讓我來抽象你,實現你!tomcat是非常流行的web server,它還是乙個滿足servlet規範的容器。那麼想一想,tomcat和我們的web應用是什麼關係?從感性上來說,我們一般需要把web應...
實現乙個迷你版的vue
專案位址 其實vue1和vue2最大的區別就是vue2多了乙個虛擬dom,其他的區別都是很小的。所以理解了vue1的原始碼,就相當於理解了vue2,中間差了乙個虛擬dom的diff演算法 先來科普一下mvvm的概念及原理 mini vuex 全域性方法 繼承minivue 產生乙個新的子類建構函式 ...
Photoshop7 0 簡體中文迷你版
photoshop7.0 是影象處理軟體中的大哥大!我把photoshop7.0的幫助檔案 範例檔案 預設效果 拼寫檢查 網頁輸出等平時不大用得上的東西精減後做成了這個迷你版,希望能給大家帶來方便!photoshop7.0,是adobe公司photoshop系列產品中的王牌產品,它在圖形影象處理領域...