隨筆 - 303  文章 - 883  trackbacks - 0
          <2007年8月>
          2930311234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          歡迎光臨! 
          閑聊 QQ:1074961813

          隨筆分類(357)

          我管理的群

          公共blog

          • n維空間
          • Email : java3d@126.com 群 : 12999758

          參與管理的論壇

          好友的blog

          我的其他blog

          朋友的網站

          搜索

          •  

          最新評論

          啊!! 今天真是郁悶,寫一個簡單的struts登陸的時候,session老是去不掉;改程序分為以下幾個部分:

          login.jsp               登陸頁面(用戶名和密碼輸入)
          LoginActon.java Struts1.4.9中負責數(shù)據驗證驗證的servlet 我現(xiàn)在只用他的 execute 方法
          LoginFrom.java  Struts1.4.9中負責用戶數(shù)據存儲的bean     我用他的reset方法初始化我的username,password參數(shù)
          success.jsp          輸入正確的登陸頁面,帶退出

          當我寫完開始運行時,出現(xiàn)這些現(xiàn)象:
          1.   登陸驗證沒問題
          2.   各部分運行正常,web.xml和struts-config.xml 配置沒問題
          3.   當我點擊success.jsp里的退出時,我使用了一個退出的servlet 核心代碼為:

           HttpSession session=request.getSession(true);
                   session.invalidate();
                   response.sendRedirect(
          "webPage/login.jsp");

                退出 看起來也沒問題。

          呵呵,但是但我在退出之后,
          點瀏覽器上的返回按鈕,暈 我看到了 我的用戶信息 呵呵出問題了
          于是我去掉瀏覽器的緩存(這東西雖然提高效率但在目前這種情況下,他無疑降低了我這個程序的安全性)
          我在 execute 里加入:

          /*去除瀏覽器的緩存*/
                  response.setHeader(
          "Cache-Control","no-cache"); 
                  response.setHeader(
          "Cache-Control","no-store");
                  response.setDateHeader(
          "Expires"0);
                  response.setHeader(
          "Pragma","no-cache");

          看到這里 大家會想 呵呵 這下肯定沒問題 是的 當我再點返回的時候 我沒有看到我的信息

          但是無聊的我有做了一個實驗 我再次點退出,當我在地址欄里 輸入顯示用戶信息的地址時

          http://localhost/login.do

          哈哈 有出問題了 我又再次看到我的信息 悲哀 這又是什么緣故呢?

          弄了很久 我才想起
          LoginFrom.java  里的reset方法,啊 去掉之后就沒問題了

          什么原因呢? 我想了下 覺得是這樣的 當你訪問struts1.4.9里的一個actionFrom(servlet)的時候,不管你是通過什么方式(表單或者直接輸入地址) actionFrom都會去找From(也就是這里的LogingFrom.java)  看看他里面有沒有初始化參數(shù) 有的話 就直接拿來用,所以大家以后一定要注意這個東東了。

          哎 悲哀的我第一次就吃了番茄 閃人了 祝大家編程好運!!





           

          地震讓大伙知道:居安思危,才是生存之道。
          posted on 2007-08-01 16:08 小尋 閱讀(514) 評論(0)  編輯  收藏 所屬分類: j2se/j2ee/j2me
          主站蜘蛛池模板: 南郑县| 中超| 肥乡县| 绥芬河市| 克拉玛依市| 徐汇区| 沙坪坝区| 盐池县| 武威市| 谷城县| 文登市| 黑龙江省| 大同县| 同心县| 桂平市| 南雄市| 平泉县| 隆德县| 远安县| 木里| 淮滨县| 治多县| 利辛县| 安塞县| 光山县| 富平县| 瓦房店市| 湛江市| 巴中市| 大丰市| 锦屏县| 甘德县| 阜城县| 霸州市| 平潭县| 清水河县| 龙岩市| 临沂市| 吉林市| 石柱| 云南省|