<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Java Home

    Java技術(shù)修煉中...
    posts - 20, comments - 22, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理
    前段時間作了一個簡單的系統(tǒng),其中涉及到后臺管理,當然也就遇到了權(quán)限驗證的問題,由于初次做J2EE項目,所有這些東西懂我來說都是個開始。
    對于權(quán)限驗證,如果程序由目錄劃分,如管理員訪問的頁面都放在admin下,這樣我們可以寫一個權(quán)限驗證的過濾器,然后配置admin目錄都要經(jīng)過這個過濾器即可。這樣對于jsp頁面的權(quán)限驗證比較容易。但對于action(控制器類)就不好控制了,因為action是沒有目錄概念的,如我們訪問action的地址為:http://xxx/sample/ac1.action,同時如果使用http://xxx/sample/xx/xx/ac1.action同樣可以訪問,這是因為只要在這個項目目錄下,訪問的頁面如果為action則struts就會去查詢這個action名字對應的類,而不管前面的目錄結(jié)構(gòu)。因此我們不能再用過濾器對管理員部分的action進行驗證。經(jīng)過查看struts2的相關(guān)資料發(fā)現(xiàn)了攔截器這個有用的東西。通過struts2的配置文件的包管理功能和攔截器可以輕松的對指定的action做管理(攔截),如
    ===================================================
    <package name="user" extends="struts-default">
    ??<!-- 前臺用戶操作部分 -->
    ??<!-- 框架頁,顯示分類 -->
    ??<action name="queryCateForwardUI"
    ???class="com.topsoft.bookmanage.web.action.QueryCateForwardActionUI">
    ???<result>/mainPage.jsp</result>
    ??</action>
    ??? 。。。。。
    </package>
    <!-- 管理員操作部分 -->
    ?<package name="manager" extends="struts-default">
    ??<!-- 攔截器 -->
    ??<interceptors>
    ???<interceptor name="auth" class="com.topsoft.common.LogonInterceptor" />
    ???<interceptor-stack name="authStack">?
    ??????????????? <interceptor-ref name="auth"/>?
    ??????????????? <interceptor-ref name="paramsPrepareParamsStack"/>?
    ??????????? </interceptor-stack>?
    ??</interceptors>
    ??<!-- 默認執(zhí)行的攔截器 -->
    ??<default-interceptor-ref name="authStack"/>
    ??<!-- 全局Action映射 -->
    ??<global-results>
    ???<result name="login" type="redirect">/managerLoginUI.action</result>
    ??</global-results>
    ??
    ??<!-- 后臺管理首頁面UI -->
    ??<action name="managerIndexUI"
    ???class="com.topsoft.bookmanage.web.action.ManagerIndexActionUI">
    ???<result>/admin/index.jsp</result>
    ??</action>
    ?。。。。。。
    </package>
    =================================================

    通過使用攔截器+過濾器可以完美解決權(quán)限驗證的問題。

    評論

    # re: Struts2下的用戶權(quán)限驗證問題解決方法  回復  更多評論   

    2007-06-06 19:36 by 匿名
    不懂struts2,沒怎么看懂,權(quán)限是在哪個action里面實現(xiàn)的?

    # re: Struts2下的用戶權(quán)限驗證問題解決方法  回復  更多評論   

    2007-06-08 11:34 by yidishui
    沒有使用過struts2,但是一直用webwork 其實兩個我覺得一樣!

    # re: Struts2下的用戶權(quán)限驗證問題解決方法  回復  更多評論   

    2007-06-13 22:36 by somebody(莫多泡泡)
    沒有目錄的概念?
    你說的是namespace吧。只要你設(shè)置了namespace,就只有通過你設(shè)置的namespace來訪問了。eg namespace="/admin" ,action name="listUser"

    那就只能通過 /admin/listUser.action來訪問了。

    # re: Struts2下的用戶權(quán)限驗證問題解決方法  回復  更多評論   

    2008-07-28 14:00 by 葉依萱
    沒怎么看懂,你有實例代碼嗎,如果方便的話。我想看下,謝謝.
    qq:746273084

    # re: Struts2下的用戶權(quán)限驗證問題解決方法  回復  更多評論   

    2008-10-18 17:55 by adam
    interceptor 在那呀

    # re: Struts2下的用戶權(quán)限驗證問題解決方法[未登錄]  回復  更多評論   

    2008-11-20 22:05 by moonandsun
    可能你能幫我
    加我qq :815266787
    共同學習.
    互相幫助.

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導航:
     
    主站蜘蛛池模板: 一个人看的www在线观看免费| 四只虎免费永久观看| 国产无人区码卡二卡三卡免费 | 免费看一级一级人妻片| 久久精品无码免费不卡| 久久乐国产精品亚洲综合| 特级毛片在线大全免费播放| 亚洲成av人片不卡无码久久| eeuss免费影院| 亚洲精品高清无码视频| 久久久久国产精品免费网站| 亚洲日本在线看片| 1000部拍拍拍18勿入免费视频软件| 亚洲成a人片在线观看中文!!!| 韩国免费一级成人毛片| 亚洲精品9999久久久久无码| 无码人妻AV免费一区二区三区| 亚洲国产综合专区在线电影| 日本免费xxxx| 亚洲欧美成人一区二区三区 | 亚洲熟妇无码另类久久久| 日韩亚洲产在线观看| 在线播放免费人成视频在线观看| 亚洲成在人线aⅴ免费毛片| 亚洲?v无码国产在丝袜线观看| 亚洲另类春色校园小说| 国产一区二区三区免费观在线| 久久久久亚洲精品无码蜜桃| 好吊妞在线成人免费| eeuss在线兵区免费观看| 亚洲精品日韩专区silk| 国产成人免费ā片在线观看老同学| 免费人成激情视频| 视频免费在线观看| 亚洲av片不卡无码久久| 亚洲国产成人精品久久久国产成人一区二区三区综| 成人网站免费大全日韩国产 | 免费无码中文字幕A级毛片| 亚洲中久无码不卡永久在线观看| 免费av一区二区三区| 成人亚洲国产va天堂|