大多數情況下, jsp 文檔的大部分由靜態文本(html)構成, 為處理該頁面而建立的 servlet 只是將它們原封不動的傳遞給用戶端
原封不動的傳送給用戶端有兩個小例外:
1. 如果想傳送 , 由於它跟jsp的特殊符號一致, 所以必須使用逸出字元轉義, <% 或 %>
2. 如果想傳送注釋, 在 jsp 編輯頁面中出現, 而在產生的html文檔不出現, 那麼我們要使用 , 而 這種形式會原封不動的傳遞給用戶端.
jsp 調用動態代碼策略
使用 mvc, 由一個 servlet 負責處理最初的請求, 尋找資料, 並將結果儲存在 bean中, 然後將請求轉寄到 jsp 頁面來提交最後的結果, jsp 頁面使用 bean.
java 代碼位置
現在 jsp 頁面的 java 代碼量, 最好將一些 java 代碼放在類中, 然後將 java 類放在 WEB-INF/classes/directory/MachingPackageName, 然後使用 1或2行基於jsp的代碼調用它. 原因如下:
1. 開發, 我們一般在物件導向的開發環境編寫常規類(java), 在面向html環境中, 比如 dreadweaver, 編寫jsp.
2. 編譯, 要編譯常規的 java 類, 秩序在IDE中編譯即可, 要編譯JSP頁面, 則必須將它放到正確的目錄中, 啟動伺服器.
3. 調試, 單獨環境的 IDE 調試更加方便
4. 工作劃分, 精通java人員只關注java, 精通html人員關注html.
5. 測試, 可以單獨測試
6. 重用. 可以在多個jsp頁面利用相同的 java 類.
包是十分重要的, 將所有的類都放在保重.
jsp 運算式的使用
jsp 運算式用來將值直接插入到輸出中,
該運算式在求值, 轉換成字串後, 插入到頁面中, 求值是在運行期間執行(在頁面被請求時), 因此可以訪問到請求的所有資訊.
例如: Current time:
預定義變數, request, reponse, session, out, application