【前言】上班了,學習的時間幾乎沒有
【原文】http://blog.csdn.net/niexinblog/archive/2008/06/04/2510825.aspx
1. 頁面自動刷新
這裏,我們只有將i定義爲全局變量,才能看到自增效果。上例中,我們設置爲每一秒鐘自動刷新一次。
2. 頁面自動跳轉
在自動跳轉的過程中,可以將參數添加到URL的尾部用來傳遞參數值,例如:
index.jsp
common.jsp
跳轉後,地址欄顯示的是http://localhost/common.jsp?ref=aaa,即爲跳轉後的url
3. 頁面跳轉
index.jsp
common.jsp
index.jsp中的輸出語句沒有打印,地址欄顯示的是http://localhost/common.jsp,即爲跳轉後的url
【問題】
1)爲什麼上例中,index.jsp中的內容沒有輸出?
2)直接在setHeader中指定url,和用sendRedirect,有什麼區別?
4. 設置Cookie
cookie是客戶端保存的一種資源,常用來自動登錄網站等
index.jsp
index.jsp將name和password放在cookie中,訪問該jsp後,可以從本地的Temporary Internet Files目錄下看到生成的cookie:
name
aaa
localhost/
1024
3088572800
30108200
2492942800
30108200
*
password
111
localhost/
1024
3088572800
30108200
2493102800
30108200
*
在60秒之後,這個cookie文件會被自動刪除
common.jsp
先後執行上面的兩個頁面,我們可以看到,客戶端所保存的cookie會被服務器讀取。如果超過了cookie保存時間,則第二個頁面就會出錯。
另外,如果上面的兩個頁面是在同一窗口中執行,則我們會看到JSESSIONID,這是服務設置一個默認的cookie到客戶端。如果我們另外開窗口執行common.jsp,就不會看到它了,因爲session的ID號只對同一窗口有效。
common.jsp顯示的結果是:
JSESSIONID --> 17CB5CF0DA7A22661A273D6EC492C3E0
name --> aaa
password --> 111
5. 禁用頁面緩存
index.jsp
common.jsp
先運行這個例子,我們在同一窗口中先後執行這兩個網頁,會看到後臺(從tomcat的stdout_20101013.log中可以看出)輸出了時間字符串,且窗口停留在common.jsp上。然後我們點瀏覽器的後退按鈕,窗口會回到index.jsp,但是,我們觀察後臺,沒有新的字符串輸出了,這是怎麼回事呢?
這說明,我們通過後退按鈕雖然回到了index.jsp,但是頁面的代碼並沒有被執行,我們看到的是瀏覽器的緩存頁面。
在實際的項目開發工程中,往往會用到禁用緩存技術,即如果通過後退按鈕回到了某一頁,也必須從服務器上重新讀取,例如:
index.jsp
common.jsp
我們運行修改過後的這個例子,就會發現當我們點擊後退按鈕回到index.jsp時,頁面代碼都會被執行一次。