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

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

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

    攔截器再應用學習

    攔截器
    如果用戶登錄后可以訪問action中的所有方法
    user.jsp{
    request.getSession().setAttribute(
    "user""itcast");
    //專門設置用戶是否登錄狀態,session來專門標注用戶是否登錄
    }
    退出登錄
    quit.jsp{
    request.getSession().removeAttribute(
    "user");
    //將session去掉就行了..
    }
    如果用戶沒有登錄不允許訪問action中的方法,并且提示

    1.定義攔截器
    1.1實現com.opensymphony.xwork2.ActionInvocation.Interceptor接口
        @Override
        
    public void destroy() {//當此類被摧毀的時候執行
            
        }

        @Override
        
    public void init() {//實例化自動執行
            
        }
    public String intercept(ActionInvocation invocation) throws Exception {
            
    // TODO Auto-generated method stub
            Object user = ActionContext.getContext().getSession().get("user");
            
    if(user!=null)//判斷用戶是否登錄
                invocation.invoke();//執行被攔截到的方法,不掉用,被攔截的action方法

    不會被執行
            ActionContext.getContext().put(
    "message""you have not right");
            
    return "success";//定義全局
        }//當攔擊到action就會執行此方法
    1.2注冊攔截器 在struts的package中注冊攔截器
    <package name="employee" namespace="/control/employee" extends="struts-default">
            
    <interceptors> <!-- 注冊攔截器 -->
                
    <interceptor name="permission" 

    class="cn.itcast.interceptor.PermissionInterceptor"></interceptor>
                
    <!-- 使用攔截器棧可以使用自定義攔截器,且 不失去系統自定義攔截器功能 

    -->
                
    <interceptor-stack name="permissionStack">
                    
    <!-- 系統默認攔截器 -->
                    
    <interceptor-ref name="defaultStack"></interceptor-ref>
                    
    <!-- 自定義攔截器的引入 -->
                    
    <interceptor-ref name="permission"></interceptor-ref>
                
    </interceptor-stack>
            
    </interceptors>
            
    <!--默認包里面全用此攔截器  1 與 @@對應-->
            
    <default-interceptor-ref name="permissionStack"></default-interceptor-ref>
            
    <global-results>
                
    <result name="success">/WEB-INF/page/message.jsp</result>
            
    </global-results>
            
            
            
    <action name="list_*" class="cn.itcast.action.HelloWorldAction" 

    method
    ="{1}">
                
    <!-- 使用攔截器 @@ -->
                
    <!-- <interceptor-ref name="permissionStack"></interceptor-ref>
                
    <interceptor-ref name="增加自定義新攔截器"></interceptor-ref> -->
            
    </action>
        
    </package>

    1.3 需要定義攔截器棧,否則自定義攔截器會覆蓋struts自帶的攔截器,使struts失去自身的攔截器功能
    /control/employee

    posted on 2012-06-07 11:55 youngturk 閱讀(171) 評論(0)  編輯  收藏 所屬分類: struts2

    <2012年6月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    1234567

    導航

    統計

    公告

    this year :
    1 jQuery
    2 freemarker
    3 框架結構
    4 口語英語

    常用鏈接

    留言簿(6)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    相冊

    EJB學習

    Flex學習

    learn English

    oracle

    spring MVC web service

    SQL

    Struts

    生活保健

    解析文件

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 一级白嫩美女毛片免费| 国产91色综合久久免费| 成人性生交视频免费观看| 亚洲精品狼友在线播放| MM1313亚洲国产精品| h视频在线免费看| 国产国拍精品亚洲AV片| 亚洲av中文无码字幕色不卡| 99在线视频免费| 在线a亚洲v天堂网2019无码| 亚洲精品无码mⅴ在线观看| 69视频在线观看免费| 亚洲日韩欧洲无码av夜夜摸| 亚洲Av永久无码精品黑人| 亚洲成人在线免费观看| 亚洲日韩小电影在线观看| 国产成人精品亚洲一区| 99精品全国免费观看视频| 亚洲三级电影网址| 中文字幕成人免费高清在线视频 | 亚洲精品国产啊女成拍色拍 | 久久国产乱子伦精品免费午夜 | 一级午夜免费视频| 免费毛片在线视频| 亚洲午夜久久久久久尤物| 无码免费一区二区三区免费播放 | 免费女人高潮流视频在线观看| 少妇亚洲免费精品| 欧洲亚洲国产精华液| 97无码免费人妻超级碰碰夜夜| 亚洲人成电影在线观看网| 99久久久国产精品免费蜜臀 | 中文字幕av无码无卡免费| 91亚洲一区二区在线观看不卡| 中国极品美軳免费观看| 亚洲精品97久久中文字幕无码| 亚洲AV第一成肉网| 国产精品麻豆免费版| 亚洲精品无码成人| 日韩高清免费观看| 亚洲精品无码日韩国产不卡av|