JSP試題1.jsp有哪些內建對象?作用分別是什麼?
答:JSP共有以下9種基本內建群組件(可與ASP的6種內部組件相對應):
request使用者端請求,此請求會包含來自GET/POST請求的參數
response網頁傳回使用者端的回應
pageContext網頁的屬性是在這裡管理
session與請求有關的會話期
applicationservlet正在執行的內容
out用來傳送回應的輸出
configservlet的構架組件
pageJSP網頁本身
exception針對錯誤網頁,未捕捉的例外
JSP試題2.jsp有哪些動作?作用分別是什麼?
答:JSP共有以下6種基本動作
jsp:include:在頁面被請求的時候引入一個檔案。
jsp:useBean:尋找或者執行個體化一個JavaBean。
jsp:setProperty:設定JavaBean的屬性。
jsp:getProperty:輸出某個JavaBean的屬性。
jsp:forward:把請求轉到一個新的頁面。
jsp:plugin:根據瀏覽器類型為Java外掛程式產生OBJECT或EMBED標記
JSP試題3.forward和redirect的區別
答:forward是伺服器請求資源,伺服器直接存取目標地址的URL,把那個URL的響應內容讀取過來,然後把這些內容再發給瀏覽器,瀏覽器根本不知道伺服器發送的內容是從哪兒來的,所以它的地址欄中還是原來的地址。 redirect就是服務端根據邏輯,發送一個狀態代碼,告訴瀏覽器重新去請求那個地址,一般來說瀏覽器會用剛才請求的所有參數重新請求,所以session,request參數都可以擷取。
JSP試題4.JSP中動態INCLUDE與靜態INCLUDE的區別?
答:動態INCLUDE用jsp:include動作實現<jsp:includepage="included.jsp"flush="true"/>它總是會檢查所含檔案中的變化,適合用於包含動態網頁面,並且可以帶參數靜態INCLUDE用include偽碼實現,定不會檢查所含檔案的變化,適用於包含靜態頁面
1 <%@includefile="included.htm"%> JSP試題5.兩種跳轉方式分別是什麼?有什麼區別?
答:有兩種,分別為:
1 <jsp:includepagejsp:includepage="included.jsp"flush="true">
2
3 <jsp:forwardpagejsp:forwardpage="nextpage.jsp"/>前者頁面不會轉向include所指的頁面,只是顯示該頁的結果,首頁面還是原來的頁面。執行完後還會回來,相當於函數調用。並且可以帶參數.後者完全轉向新頁面,不會再回來。相當於goto語句。
JSP試題6.JSP的內建對象及方法
答:request表示HttpServletRequest對象。它包含了有關瀏覽器請求的資訊,並且提供了幾個用於擷取cookie,header,和session資料的有用的方法。
response表示HttpServletResponse對象,並提供了幾個用於設定送回瀏覽器的響應的方法(如cookies,頭資訊等) out對象是javax.jsp.JspWriter的一個執行個體,並提供了幾個方法使你能用於向瀏覽器回送輸出結果。
pageContext表示一個javax.servlet.jsp.PageContext對象。它是用於方便存取各種範圍的名字空間、servlet相關的對象的API,並且封裝了通用的servlet相關功能的方法。
session表示一個請求的javax.servlet.http.HttpSession對象。Session可以存貯使用者的狀態資訊 applicaton表示一個javax.servle.ServletContext對象。這有助於尋找有關servlet引擎和servlet環境的資訊 config表示一個javax.servlet.ServletConfig對象。該對象用於存取servlet執行個體的初始化參數。 page表示從該頁面產生的一個servlet執行個體