1. 程式人生 > >ssm許可權管理的設計與實現(一)

ssm許可權管理的設計與實現(一)

介紹:

         畢業設計要做一個許可權管理系統,自己查了些資料,看了些不同的前臺框架,選單的同異步載入,資料庫設計也大不相同。蕩了兩個相關的專案,一直在讀程式碼。不知道怎麼下手,現在基本明白程式碼流程,自己前後臺略懂,這個模組又不大,說的不詳細的可以搜一下,很容易搜得到的

       先在網上查了一種rbac許可權,做了個簡單的,大致就是這樣的使用者(user),角色(role),資源(module),



(1)user即使用者表,關聯org組織表,不用管,系統將角色賦予使用者,使用者只有一個角色,建議建一箇中間表user_role,使用者跟角色形成多對多關係,使用者可以有多個角色

(2)role即角色表,角色與資源掛鉤,增刪查改許可權放到資源表上,操作比較頻繁,可以分離出來role_module中間表,實現增刪查改許可權

        (3)role_module表裡面的code是(增刪查改)(1,2,4,8)自己定義規則,可以簡單的自己或者應用BigInteger許可權判斷

示例:如果code為6,code.testBit(1)和code.testBit(2)為true拿到增刪,相當於2的一次冪加上2的二次冪

        (4)資源(module)相當於選單,建立選單的話如下圖:

             

           樹形選單的話前臺有很多外掛,jquerytree,easyui,extjs等等,有無限迴圈選單,非同步載入的等等前臺框架有的必須命名相同(用的很不爽),只要規範對了,又覺得很容易,根據不同的規範,對應不同的實體,

          還有一種就是自己弄的選單,如果最多隻是三、四級選單可以自己往裡面迭代(很麻煩,但是自己很清楚流程),這個以後我會總結寫出來的

           雖然有很多種實現方法,如果自己寫一遍,瞭解規則,就知道其實都一樣的,id,pid一對一,選單父子關係,text選單名稱,

leaf:設定為true表明本節點沒有子節點。 不會為本節點渲染展開圖示或箭頭,iconCls為圖示,url為超連結,有子選單的話,父選單設定為#就可以了,自己可以選擇一種試試