首页 > 其他 > 详细

通过注解@做细粒度权限控制

时间:2016-04-14 14:01:33      阅读:225      评论:0      收藏:0      [点我收藏+]

先定义一个注解

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

@Retention(RetentionPolicy.RUNTIME)
public @interface AnnotationLimit {
    String mid();
    String pid();
}
public static void main(String[] args) throws NoSuchMethodException, SecurityException {
        Method method = TestExc.class.getDeclaredMethod("hehe", String.class);
        if(method.isAnnotationPresent(AnnotationLimit.class)){
            AnnotationLimit an = method.getAnnotation(AnnotationLimit.class);
            System.out.println(an.mid()+"#" + an.pid());
        }else{
            System.out.println("no limit");
        }
    }
    
    @AnnotationLimit(mid="1", pid="2")
    static void hehe(String s){
        System.out.println("nnn");
    }

粗粒度权限控制,一般是通过session进行,session的话因为用户登录后修改数据库状态后,用户不能通过数据库实时查询进行控制。

通过注解可以得到配置信息再结合用户id进行实时查询看是否能访问url所对应的方法达到细粒度权限控制。

通过注解@做细粒度权限控制

原文:http://www.cnblogs.com/tuifeideyouran/p/5390606.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!