扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
设计:
创新互联-专业网站定制、快速模板网站建设、高性价比蒙城网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式蒙城网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖蒙城地区。费用合理售后完善,10多年实体公司更值得信赖。
独立的菜单管理
设计角色管理模块
然后配置角色的菜单权限
再将用户或组加入到角色模块即可。
通过这个关系模型,你就可以控制哪些用户可以看到哪些菜单的权限了
struts拦截器不推荐使用 建议使用spring AOP 面向切面 统一权限操作当做一类失误处理 对于数据库权限 简单权限可以设定一张权限表 复杂权限 但权限没有从属关系可以使用2进制表示 0101010 0和1分别代表是否具有该权限操作 多级权限表结构又相应复杂
给你一个简单的管理代码
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();
}
}
用户表里加一个role的角色,对应role的一张表,当用户登录时,判断该用户的角色,这样根据该用户所拥有的角色来处理该 用户拥有系统哪部分的使用权。虎哥,在做web项目?
用户权限管理一般是用servlet的过滤器来实现的。
过滤器会过滤访问相关资源(这个是在web.xml里面配置的)的请求。
如果楼主要实现防止未登录用户访问相关资源。只要在过滤器里判断该用户是否登录,也就是楼主所说的session中的用户状态属性。是登陆的则放行,否则拒绝。
过滤器的用法就不在这里写了,网上很多的。
不知能否解决楼主的问题呢?
你说的就是简单的角色权限。这些在网上有很多的教程,而且比较简单,我可以给你一点提示
1:如果你登陆页面之后,比如想点一个按钮提交,那么如果你有这么权限才能看见或者才能点的话,那么你可以做一个简单的判断,比如if(如果有这个权限,那么可以点或者可以看见),这时就做了一个简单的权限。
2:那么你的权限哪来的,数据库中存着。
3:角色是什么,角色关联了很多的权限,你登陆之后判断你几个角色,然后在遍历你的角色就拿到了你的所有权限,那么按钮那就可以判断了,当然这是比较笨的方法,原理都是这样子,也有很多权限框架会比较方便
不理解可以问我
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流