`
Rod_johnson
  • 浏览: 74166 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

用户,角色,权限常用实现方法

UP 
阅读更多
POJO 

import java.util.Set;

public class UserVo {
	private Integer id;
	private String uname;
	private String password;
	private Level level;
	
	
	
	public Level getLevel() {
		return level;
	}
	public void setLevel(Level level) {
		this.level = level;
	}
	public String getUname() {
		return uname;
	}
	public void setUname(String uname) {
		this.uname = uname;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}

}



public class Level {
	private Integer id;
	private String levelName;
	private Set<Quanxian> qx = new HashSet<Quanxian>(0);
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getLevelName() {
		return levelName;
	}
	public void setLevelName(String levelName) {
		this.levelName = levelName;
	}
	public Set<Quanxian> getQx() {
		return qx;
	}
	public void setQx(Set<Quanxian> qx) {
		this.qx = qx;
	}
}

public class Quanxian {
	private Integer id;
	private String quanxian;
	private Integer fatherid;
	private String url;
	public Integer getFatherid() {
		return fatherid;
	}
	public void setFatherid(Integer fatherid) {
		this.fatherid = fatherid;
	}
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getQuanxian() {
		return quanxian;
	}
	public void setQuanxian(String quanxian) {
		this.quanxian = quanxian;
	}
	public String getUrl() {
		return url;
	}
	public void setUrl(String url) {
		this.url = url;
	}

}


public class AdminLoginCheck extends HttpServlet implements Filter {

//通过 一个过滤器 Filter 进行权限控制
	   private FilterConfig filterConfig;
	    //Handle the passed-in FilterConfig
	    
	    public void init(FilterConfig filterConfig) throws ServletException {
	        this.filterConfig = filterConfig;

	    }

	    //Process the request/response pair
	    public void doFilter(ServletRequest request, ServletResponse response,
	                         FilterChain filterChain) {//System.out.println(this.getClass()+": doFilter()");
	    	HttpServletRequest req = (HttpServletRequest)request;
	    	//System.out.println(req.getServletPath());
            
	        HttpServletResponse res = (HttpServletResponse)response;
	        HttpSession ses = req.getSession();
Uservo uervo =ses.getAttribute("user")
	        try {//System.out.println("in Adminloginf........");
	            if(uervo ==null)
	            {
	            res.sendRedirect(req.getContextPath());
	            }else{
                 Boolean allow= false ;
                 Set<Quanxian> qxs = uservo.getLevel().getQx();
                 For(Quanxian o:qxs){
                    If(o.getUrl().equals(req.getServletPath())){
allow=true;
}
}
If(allow){
 filterChain.doFilter(request, response);}
	            }
	        } catch (ServletException sx) {
	            filterConfig.getServletContext().log(sx.getMessage());
	        } catch (IOException iox) {
	            filterConfig.getServletContext().log(iox.getMessage());
	        }
	    }

	    //Clean up resources
	    public void destroy() {
	    }
}

 

分享到:
评论

相关推荐

    SpringBoot + SpringSecurity + JPA 实现用户角色权限登录认证

    本项目结合了SpringBoot、SpringSecurity以及JPA(Java Persistence API),实现了用户角色权限的登录认证功能。以下是关于这些技术及实现过程的详细讲解。 1. **SpringBoot**:SpringBoot简化了Spring应用的初始...

    Asp.net中的用户角色权限设计

    下面将详细探讨Asp.net中实现用户角色权限设计的核心概念、技术和最佳实践。 首先,Asp.net提供了一个内置的安全框架,包括身份验证(Authentication)和授权(Authorization)两部分。身份验证用于确认用户身份,...

    用户角色权限重新开放下载

    在Java开发中,用户角色权限的实现通常涉及Spring Security或Apache Shiro等安全框架。这些框架提供了丰富的API和配置选项,帮助开发者轻松地实现认证(验证用户身份)和授权(决定用户是否可以执行特定操作)功能。...

    基于角色的权限管理数据库设计

    RBAC(Role-Based Access Control)是一种常用的安全管理机制,它通过定义不同的角色以及这些角色对应的权限来实现对系统的访问控制。 #### 数据库结构设计 ##### 用户表 (RBAC_User) 用户表用于存储系统中的所有...

    基于角色的权限管理系统视频教程

    很多初学者面对这样的需求不知道如何下手,特别是稍微复杂点的权限,更是找不到方向,为此我们夜鹰教程网特别推出了这套基于角色的权限管理视频教程,通过给用户分配角色,给角色分配权限,来实现权限管理。...

    ThinkPHP(RBAC)权限管理系统_第29讲_角色导航菜单加载

    RBAC是一种常用的权限管理模式,它通过角色来间接控制用户对系统的访问权限,简化了权限的管理。 首先,理解RBAC的基本概念是至关重要的。在RBAC模型中,用户通过扮演不同的角色来获得相应的权限。角色是一组预定义...

    GIS用户权限管理-基于角色的用户权限管理模块

    基于角色的用户权限管理(Role-Based Access Control, RBAC)是一种常用的方法,它将权限与特定的角色关联,而不是直接分配给单个用户。这种模式提高了系统的灵活性和可管理性,同时也降低了权限管理的复杂性。 ...

    SpringMVC实现用户角色管理

    在本项目中,我们将探讨如何利用SpringMVC来实现用户角色的管理。这个过程通常包括用户注册、登录验证、角色分配以及权限控制等多个环节。 首先,我们需要创建一个数据模型,用于存储用户和角色的信息。用户模型...

    C#通用权限

    3. 角色权限映射:为每个角色分配能访问的菜单ID集合,运行时比较用户角色和菜单ID。 三、方法权限 方法权限则是在业务逻辑层进行的,用于控制用户是否能够调用某个具体的方法。.NET提供了几种方法级别的权限控制:...

    【猿来入此】SSM框架角色权限管理系统脚手架源码

    这个“猿来入此”提供的SSM框架角色权限管理系统脚手架源码,是一个完整的开发基础,可以帮助开发者快速搭建一套具备用户角色权限管理功能的系统。 1. **Spring框架**:Spring作为核心容器,负责管理对象的生命周期...

    SSM框架实现一个用户系统(登录,用户列表,分页,增删改查,用户角色管理功能)

    这个项目实现了用户管理系统,包含了登录、用户列表展示、分页、增删改查以及用户角色管理等功能,适合初学者了解SSM框架的实际运用。 1. **Spring框架**:Spring作为核心容器,负责管理所有Bean的生命周期和依赖...

    c#实现如何树形管理权限

    在权限系统中,树形结构是一种常用的数据模型,它能够清晰地展示不同用户或角色的权限关系。每个节点代表一个权限项,节点间的层级关系则表示权限的包含与被包含关系。例如,一个父节点可能代表一个大的权限类别,而...

    修改普通用户权限

    接下来,我们将围绕“修改普通用户权限”这一主题进行深入探讨,内容将涵盖修改权限的重要性、常见操作方法、注意事项以及最佳实践等。 ### 一、修改权限的重要性 #### 1. 安全性提升 - **最小权限原则**:为用户...

    ssh2,easyui权限管理系统(人员、角色、权限)

    总结起来,这个SSH2和EasyUI权限管理系统通过Java后端和前端UI组件协同工作,实现了人员、角色和权限的高效管理,为用户提供了安全、便捷的访问控制。在实际项目中,这样的系统可以广泛应用于企业内部的信息化管理...

    java角色权限源码

    在实现角色权限管理时,通常会设计三个核心概念:用户(User)、角色(Role)和权限(Permission)。用户可以拥有多个角色,角色又可以包含多个权限。在SpringMVC和Hibernate的配合下,我们可以轻松地实现用户的登录...

    tp5开发网站,含auth权限角色管理,可以对角色的权限进行设置百度编辑器使用

    在网站开发中,权限管理是不可或缺的一部分,Auth组件在TP5中提供了灵活的角色权限控制。它允许我们定义不同的角色,并为每个角色分配不同的操作权限。通过使用Auth,可以实现如用户登录、权限验证、角色授权等功能...

    SpringBoot 集成 Shiro 实现动态uri权限

    在Web应用中,权限控制通常包括角色管理、菜单管理、操作权限(URI)管理等,而动态URI权限则允许在运行时根据用户角色动态分配和更新权限。 **SpringBoot** 是一个简化Spring应用初始搭建以及开发过程的框架,它...

    这是一个后台基础库,包括用户、机构、角色、权限等常用功能,并集成微信公众号、小程序支持.zip

    作为一款无需下载安装即可使用的应用,【小程序名称】依托于微信庞大的生态系统,让用户在微信内就能轻松实现各种功能操作。 【小程序名称】的核心功能主要集中在【具体服务领域】,例如在线购物、本地生活服务、...

    基于Web的角色的权限系统

    在构建基于Web的角色权限系统时,我们关注的核心是实现安全、高效且易于管理的用户访问控制。这样的系统允许管理员分配特定的角色给用户,每个角色拥有不同的权限,从而控制用户对系统资源的访问。以下是该系统涉及...

Global site tag (gtag.js) - Google Analytics