Jsp注意事項彙總

1. Jsp的三大指令

Jsp指令用如下格式表示<%@ %>,有page,include和taglib三個,要注意的是並沒有import指令,這個很容易與include記混。

2. Jsp的生命週期

當Jsp頁面第一次執行時,會先執行jspInit()函數,將Jsp頁面轉換爲servlet,並編譯成字節碼文件,上述jspInit()函數的執行只有在Jsp頁面第一次運行時纔會被調用。當客戶端進行訪問時,執行jspService(),對客戶端的請求進行處理,對每一個請求會創建一個線程,如果同時有多個請求就會創建多個線程,由於servlet貯存於內存中,所以處理速度很快。

3. contentType與pageEncoding的區別

contentType和pageEncoding都是page指令的兩個屬性,這兩個屬性都是用來選取文件編碼的字符集,其中contentType中charset選擇的字符集表示是服務器發給客戶端時的內容編碼,而pageEncoding表示Jsp文件本身的編碼,其中contentType更常用。

4. Jsp表達式

Jsp表達式用<%= %>表示,注意的是第二個%前面不能加“;”分號。

5. out.println() 與System.out.println()區別

前者表示輸入到頁面,後者表示輸出到控制檯。

6. 表單的兩種提交方式

表單有兩種提交方式:get和post,其中get是以明文方式通過URL提交數據,數據可以在URL中看到,提交的數據最多不超過2KB,安全性較低但效率比post要高,適合提交數據量不大,安全性較低的數據,比如搜索或查詢的功能實現。post是將用戶提交的數據封裝到html header內,適合提交數據量大,安全性高的用戶信息,比如註冊,修改和上傳等功能的實現。

7. 請求轉發和請求重定向

請求重定向:客戶端行爲,response.sendRedirect(),本質上講等同於兩次兩次請求,前一次的請求對象不會保存,URL地址會發生改變

請求轉發:服務端行爲,request.getRequestDispatcher().forward(),是一次請求,轉發後請求對象會保存,URL地址不會發生改變。

8. session與cookie的對比

session:在服務端保存用戶信息(保存在內存中),session中保存的是Object類型,隨會話的結束而將其存儲的數據銷燬,一般用來保存重要信息。

cookie:在客戶端保存用戶信息,cookie保存的是Sring類型,cookie可以長期保存在客戶端,一般用來保存不重要的用戶信息。

session的安全性比cookie要高。

9. include指令和動作的區別


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章