小弟目前想一個問題.以前在開發的時候通常將權限設定在表中,如:該表可能有的字段 用戶id,能夠訪問的畫面名稱(和菜單對應)..然後根據用戶id來顯示不同的菜單項,然後將用戶信息保存在session中,在web.xml配置一個監聽 對每次請求都盡心驗證session中是否為空,如果不為空則表示用戶已經登陸,否則就表示為登陸並轉到登陸畫面//
小弟目前專案在使用spring, 也是剛剛入門.現在理不清楚該如何進行權限的處理了...
目前我的想法是 一個登陸畫面如 login.jsp 對應一個servlet 在提交的時候進入剛剛定義的servlet進行數據驗證,通過則保存在session中,並且進入到主框架畫面..主框架是有三個jsp, 一個是head.jsp用來顯示標題,左邊是menu.jsp用來顯示樹結構.. 而main.jsp則顯示在右邊...還有一個就是index.html用來做frame的
我想問的是:
1.開始登陸進入畫面時候當獨用一個servlet來處理登陸操作
2.成功後進入主框架後左邊的樹應該在何時處理出來
3.對於權限處理有什麼比較好的方式
或著說 大家如果有相關的案子會如何處理呢,要求是一個登陸畫面進入一個主畫面,主畫面要是左邊顯示樹菜單,右邊為操作區域.如果登陸不成功則在登陸畫面提示,如果直接在瀏覽器中輸入xxx.do如果沒有進行登陸則直接回到登陸窗口

解决方案 »

  1.   

    我是这样做的:用户登录之后,从数据库生成这个用户的菜单(HTML)放到SESSION中。
    左边的菜单页面,比如menu.jsp从session中抓取这个HTML,把它显示出来。设置一个用户不登录也可以访问的页面列表(白名单),对于每个页面访问,都判断访问的地址是否在白名单中,如果不在,则看session中是否有用户登录信息,没有的话就强制跳转到登录页面。
      

  2.   

    今天上網看到可以增加一個過濾器,這個樣子在裡面驗證session中的用戶是否有值,如果沒有就直接回到login畫面,不知道是否可以呢???有什麼優點缺點呢???
    還有一個問題,我想問就是我現在如果進入主畫面了,在head.jsp上有一個註銷按鈕,點選後應該退回到登陸畫面,可奇怪的是我的登陸畫面出現在主mail.html上 而不是開始登陸的login.jsp畫面了,為什麼呢?
      

  3.   

    今天上網看到可以增加一個過濾器,這個樣子在裡面驗證session中的用戶是否有值,如果沒有就直接回到login畫面,不知道是否可以呢???有什麼優點缺點呢???
    ======
    可以这么做,很多人都是这么做的。還有一個問題,我想問就是我現在如果進入主畫面了,在head.jsp上有一個註銷按鈕,點選後應該退回到登陸畫面,可奇怪的是我的登陸畫面出現在主mail.html上 而不是開始登陸的login.jsp畫面了,為什麼呢?
    ==========
    你肯定用了framset
      

  4.   

    對啊 我是用了framset了..所以不知道該如何..請指教
      

  5.   

    看看www.Jdon.com上有一个不错的例子
    解决了权限认证问题