一、 篩檢程式案例
緩存:禁止流覽器緩存所有動態頁面
a.response.setDateHeader("Expires",-1);
b.response.setHeader("Cache-Control","no-cache");
c.response.setHeader("Pragma","no-cache");
強制流覽器緩存所有的靜態頁面
3. 實現用戶自動登陸功能示例
1)在用戶登陸成功後, 發送一個名稱為user的cookie給用戶端, cookie的值為用戶名和md5加密後的密碼
2)編寫篩檢程式檢查用戶是否帶名為user的cookie來, 如果有, 檢查用戶名和密碼做自動登陸
核心思路:
1.用戶登陸後找LoginServlet , LoginServlet中做登陸, 如果登陸成功, 獲得用戶選擇的自動登陸時間
2.創建一個新的cookie 將用戶名和密碼用 “_”連接作為value, autoLogin作為name
3.設置cookie 的有效路徑 request.getContextPath() 作用于整個web應用
4.設置cookie的有效時間為 autologintime
5.發送 cookie,寫一個篩檢程式, 對全站的資源進行攔截, 檢查用戶發送的cookie有沒有一個名為autologin的,如果有 取出用戶名和密碼 再次做登陸處理 如果登陸成功, 將 user 存入session , 放行出於安全性考慮, cookie 中的密碼應該進行 md5 加密.
4. 統一全站字元編碼功能示例
response和request的post的方式好辦, 只需要做以下操作即可。
response.setContentType("text/html;charset=utf-8");
request.setCharacterEncoding("utf-8");
對於request的get方式需要手工轉換,
5.怎樣發送壓縮後的回應資料, 思路示例
給 IE 流覽器會送的資料 需要進行gzip 壓縮 存取速度快 省點流覽, 在最後將資料打給流覽器的時候, 將 response 中的資料全部壓縮, 在篩檢程式放行的時候傳入一個 假的 response 提供緩衝區,
備註:j2se 提供了一個流GZIPOutputStream 用於 gzip壓縮, j2se 提供了一個流 ZIPOutputStream 用於 zip 壓縮。