?? roleright.java
字號:
import java.util.*;
/**
* <p>Title: 哈希表操作</p>
* <p>Description: 這是一個權限認證的例子,使用了哈希表作為數據的存儲</p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Filename: RoleRight.java</p>
* @author 杜江
* @version 1.0
*/
public class RoleRight
{
private static Hashtable rightList = new Hashtable();
/**
*<br>方法說明:初始化數據
*<br>輸入參數:
*<br>返回類型:
*/
public void init()
{
String[] accRoleList = {"admin","satrap","manager","user","guest"};
String[] rightCodeList = {"10001","10011","10021","20011","24011"};
for(int i=0;i<accRoleList.length;i++)
{
rightList.put(accRoleList[i],rightCodeList[i]);
}
}
/**
*<br>方法說明:獲取角色權限代碼
*<br>輸入參數:String accRole 角色名稱
*<br>返回類型:String 權限代碼
*/
public String getRight(String accRole)
{
if(rightList.containsKey(accRole))
return (String)rightList.get(accRole);
else
return null;
}
/**
*<br>方法說明:添加角色和代碼信息
*<br>輸入參數:String accRole 角色名稱
*<br>輸入參數:String rightCode 角色權限代碼
*<br>返回類型:void (無)
*/
public void insert(String accRole,String rightCode)
{
rightList.put(accRole,rightCode);
}
/**
*<br>方法說明:刪除角色權限
*<br>輸入參數:String accRole 角色名稱
*<br>返回類型:void(無)
*/
public void delete(String accRole)
{
if(rightList.containsKey(accRole))
rightList.remove(accRole);
}
/**
*<br>方法說明:修改角色權限代碼
*<br>輸入參數:String accRole 角色名稱
*<br>輸入參數:String rightCode 角色權限代碼
*<br>返回類型:void(無)
*/
public void update(String accRole,String rightCode)
{
//this.delete(accRole);
this.insert(accRole,rightCode);
}
/**
*<br>方法說明:打印哈希表中角色和代碼對應表
*<br>輸入參數:無
*<br>返回類型:無
*/
public void print()
{
Enumeration RLKey = rightList.keys();
while(RLKey.hasMoreElements())
{
String accRole = RLKey.nextElement().toString();
print(accRole+"="+this.getRight(accRole));
}
}
/**
*<br>方法說明:打印信息(過載)
*<br>輸入參數:Object oPara 打印的信息內容
*<br>返回類型:無
*/
public void print(Object oPara)
{
System.out.println(oPara);
}
/**
*<br>方法說明:主方法,
*<br>輸入參數:
*<br>返回類型:
*/
public static void main(String[] args)
{
RoleRight RR = new RoleRight();
RR.init();
RR.print();
RR.print("___________________________");
RR.insert("presider","10110");
RR.print();
RR.print("___________________________");
RR.update("presider","10100");
RR.print();
RR.print("___________________________");
RR.delete("presider");
RR.print();
}
}//end:)~
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -