大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
struts拦截器不推荐使用 建议使用spring AOP 面向切面 统一权限操作当做一类失误处理 对于数据库权限 简单权限可以设定一张权限表 复杂权限 但权限没有从属关系可以使用2进制表示 0101010 0和1分别代表是否具有该权限操作 多级权限表结构又相应复杂
专注于为中小企业提供成都做网站、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业定襄免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000+企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
给你一个简单的管理代码
public class CheckIdAdvice implements MethodInterceptor {
protected final Log log = LogFactory.getLog(getClass());
public Object invoke(MethodInvocation invocation) throws Throwable {
String methodName = invocation.getMethod().getName();
for(int i=0;iConstant.levelOneMethod.length;i++)
{
if(Constant.levelOneMethod[i].equals(methodName))
{
Map map=(Map) ActionContext.getContext().get("session");
Admin admin=(Admin)map.get("admin");
if(admin.getQuanxian()!=nulladmin.getQuanxian()=1)
{
return invocation.proceed();
}
else
{
log.info("进入失败");
return false;
}
}
}
for(int i=0;iConstant.levelTwoMethod.length;i++)
{
if(Constant.levelTwoMethod[i].equals(methodName))
{
Map map=(Map) ActionContext.getContext().get("session");
Admin admin=(Admin)map.get("admin");
if(admin.getQuanxian()!=nulladmin.getQuanxian()=3)
{
return invocation.proceed();
}
else
{
log.info("进入失败");
return false;
}
}
}
for(int i=0;iConstant.levelThreeMethod.length;i++)
{
if(Constant.levelThreeMethod[i].equals(methodName))
{
Map map=(Map) ActionContext.getContext().get("session");
Admin admin=(Admin)map.get("admin");
if(admin!=nulladmin.getQuanxian()=5)
{
return invocation.proceed();
}
else
{
log.info("进入失败");
return false;
}
}
}
return invocation.proceed();
}
}
spring security可以实现。。不过spring要升级到3.0
tomcat6。7都能用,我有婉转班。。置于前台菜单用js隐藏也可以,用security判断角色都行,
如果按资源判断就要做acl。。这个很简单。。不过一般初学者要学会spring security至少要1,2个星期吧,如果楼主需要我可以把文档发给你,如果你直接要代码我也可以给你,但你看不懂。。建议还是看文档先把,你留个邮箱给我我发给你。。
很简单,用runas的方式来执行。
比如以administrator的身份来启动记事本:
Runtime.getRuntime().exec("cmd /C cmd.exe runAs /user:administrator notepad");