Monday, July 12, 2010

Servlet initiate parameter

Servlet在建立時,有一個生命週期
而在建立一個Servlet的一開始,會先做一些初始化的動作,
而這些動作,是在web.xml裡去設定的...


如下圖,我們要在初始時,就將要印出來的table border設為2,而顏色設為藍色,web container會在建立Servlet的一開始,就在:ServerletConfig做設定
------------------------------------------------------------------


當我們要攢寫一個新的Servlet時,我們必須要繼承HttpServlet。但是我們的初始化設定在HttpServlet的父父類別(ServletConfig), 也就是在"阿公"這一代,就已經設定了。
---------------------------------------------------------------------
init()方法,在Servlet建立的初時,只會被呼叫1次,僅1次。


原來我們不是只在web.xml做<init-param>設定就好,還要在我們新寫的Servlet裡,呼叫阿公的method:init(),並使用getInitParameter去把web.xml裡的值叫出來做對應,才算正式的完成初始化。

---------------------------------------------------------------------------
初始化完就結束了?
這個答案是否定的,因為你還沒下參數來"使用"。
下了
out.println("<table border='" + borderSize + "' bordercolor='" + borderColor + " ' >");
才算真的完成格式的載入。


No comments: