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

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

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

    itkui

    年少為何不輕狂!

    利用Filter限制用戶瀏覽權限

    在一個系統中通常有多個權限的用戶。不同權限用戶的可以瀏覽不同的頁面。使用Filter進行判斷不僅省下了代碼量,而且如果要更改的話只需要在Filter文件里動下就可以。
    以下是Filter文件代碼:

    package cn.itkui.filter;

    import java.io.IOException;

    import javax.servlet.Filter;
    import javax.servlet.FilterChain;
    import javax.servlet.FilterConfig;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    import javax.servlet.http.HttpServletRequest;

    public class RightFilter implements Filter {

        
    public void destroy() {
            
        }


        
    public void doFilter(ServletRequest sreq, ServletResponse sres, FilterChain arg2) throws IOException, ServletException {
            
    // 獲取uri地址
            HttpServletRequest request=(HttpServletRequest)sreq;
            String uri 
    = request.getRequestURI();
            String ctx
    =request.getContextPath();
            uri 
    = uri.substring(ctx.length());
            
    //判斷admin級別網頁的瀏覽權限
            if(uri.startsWith("/admin")) {
                
    if(request.getSession().getAttribute("admin")==null{
                    request.setAttribute(
    "message","您沒有這個權限");
                    request.getRequestDispatcher(
    "/login.jsp").forward(sreq,sres);
                    
    return;
                }

            }

            
    //判斷manage級別網頁的瀏覽權限
            if(uri.startsWith("/manage")) {
                
    //這里省去
                }

            }

            
    //下面還可以添加其他的用戶權限,省去。

        }


        
    public void init(FilterConfig arg0) throws ServletException {
            
        }


    }
    以下是在web.xml需要加入的代碼
     <!-- 判斷頁面的訪問權限 -->
      
    <filter>
         
    <filter-name>RightFilter</filter-name>
          
    <filter-class>cn.itkui.filter.RightFilter</filter-class>
      
    </filter>
      
    <filter-mapping>
          
    <filter-name>RightFilter</filter-name>
          
    <url-pattern>/admin/*</url-pattern>
      
    </filter-mapping>
      
    <filter-mapping>
          
    <filter-name>RightFilter</filter-name>
          
    <url-pattern>/manage/*</url-pattern>
      
    </filter-mapping>

    posted on 2007-07-18 17:35 itkui 閱讀(2443) 評論(10)  編輯  收藏 所屬分類: Java

    評論

    # re: 利用Filter限制用戶瀏覽權限 2007-07-18 22:24 Hmilyld

    這個方法挺爽,
    特別是對多用戶管理的時候,權限分配上感覺蠻好。  回復  更多評論   

    # re: 利用Filter限制用戶瀏覽權限 2007-07-18 23:41 go

    不錯...  回復  更多評論   

    # re: 利用Filter限制用戶瀏覽權限 2007-07-19 08:07 demo

    這里面存在比較嚴重的問題,首先權限變更需要通過變更代碼來實現,這是問題一;其二,若是需要配置成百上千的權限,那你都要在代碼里面編寫一遍,工作量太大;其三,若是遇到需要中途變更權限的話,不知道你準備怎么處理?其四,用戶若是想控制權限的全過程,你怎么能釋放這個權限讓用戶能夠做到完整控制。  回復  更多評論   

    # re: 利用Filter限制用戶瀏覽權限 2007-07-19 09:38 cresposhi

    有理有理,簡單的限制一下能訪問的路徑還是比較優雅的,但是如果上升到權限的話這種方式就不夠用了。  回復  更多評論   

    # re: 利用Filter限制用戶瀏覽權限 2007-07-19 10:26 itkui

    @demo
    呵呵,相關權限只要在Filter文件里稍微更改下就可以了.
    沒有做過太大的程序,所以暫時沒法考慮太多.
    不知道仁兄有何高見?  回復  更多評論   

    # re: 利用Filter限制用戶瀏覽權限 2007-07-19 10:28 itkui

    Filter能做的很好多,比如限制用戶重復登陸等等...
    善用它可以減少很多的代碼量,
    需求修改的話修改也比較簡單.  回復  更多評論   

    # re: 利用Filter限制用戶瀏覽權限 2007-07-19 14:32 BeanSoft

    BS 冒充高人, 無非就是手熟, 早學了幾天而已. 你跟EA的人比比就知道自己是個什么水平:
    http://img3.pcgames.com.cn/pcgames/0703/10/870528_pcgamesCryEngine2_06.jpg
    再跟 Java 領域的 Netbeans 支持的 SOA 比比:
    http://www.netbeans.org/kb/55/loanprocessing.html

    做人要謙虛.  回復  更多評論   

    # re: 利用Filter限制用戶瀏覽權限 2007-07-19 17:20 小雪飛刀

    以前項目中一直在用這種方法實現權限控制,一般的小項目就夠用了。如果是比較大的項目,會有很多功能強大的權限控制方式。demo的說法不無道理。  回復  更多評論   

    # re: 利用Filter限制用戶瀏覽權限 2007-07-19 19:21 itkui

    @小雪飛刀
    當然知道他說的有道理啦。
    可是我只是在學習階段,真正的項目也沒做過。
    不知道公司里面一般用什么來做權限驗證呀?  回復  更多評論   

    # re: 利用Filter限制用戶瀏覽權限 2007-07-23 08:48 濟南筆記本專賣

    Servlet的功能之一,寫的好  回復  更多評論   

    導航

    統計

    留言簿(1)

    隨筆檔案(24)

    收藏夾(15)

    好站珍藏

    學習資源

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲国产日韩在线视频| 最近最新的免费中文字幕| 国产精品亚洲mnbav网站 | 最新免费jlzzjlzz在线播放| 亚洲精品视频久久| 亚洲人成免费电影| 亚洲婷婷综合色高清在线| 国内精品免费麻豆网站91麻豆| 亚洲白色白色永久观看| 999国内精品永久免费视频| 亚洲国产理论片在线播放| 成年人网站免费视频| 精品亚洲456在线播放| 日韩精品视频免费在线观看| 一级做a毛片免费视频| 成人午夜免费福利视频| 亚洲最大黄色网址| 成全视频免费高清| 黄色毛片免费网站| 亚洲精品卡2卡3卡4卡5卡区| 三年片在线观看免费观看大全动漫 | 亚洲毛片αv无线播放一区| 成人无码视频97免费| 亚洲av色影在线| 免费无码AV片在线观看软件| 亚洲国产成人久久精品软件| 亚洲AV无码成H人在线观看| 国产一区二区三区免费观看在线| 久久国产亚洲精品无码| 成人免费777777| 国产乱妇高清无乱码免费| 亚洲视频一区网站| 四虎永久成人免费影院域名| 在线免费观看h片| 亚洲中文字幕日本无线码| 亚洲国产精品自产在线播放 | 在线综合亚洲中文精品| 亚洲国产电影av在线网址| 热久久这里是精品6免费观看| 亚洲无成人网77777| 亚洲成AV人网址|