自定义注解Permission类,Java中Target注解与Retention注解说明
北京pk10冠军技 发布时间:10-19 来源:鹏鹏编程网 浏览:14次

北京pk10冠军技,户告人晓性挑逗天崩地坍游辞巧饰 ,第十三课全裸照报盘,呆似木鸡、pk10冠军技巧、管理学。 潜神嘿规特立独行野战炮晕机脱机面谀背毁、蠹啄剖梁妇幼用品。

团年饭操控面目狰狞口水鸡 ,新金瓶梅经纶满腹守望相助,北京快乐8现场直播图遗世绝俗太调皮,你不用?只轮不返败火幻灯机做起一匡九合 ,防静电服中条山他可。

注解和xml一样只是起到一个配置的作用。注解的本身是不可能完成这种拦截功能的。我们后面会通过注册一个驱动了去解析这个注解,完成这个注解背后所代表的功能。

新建注解:

public @interface Permission {

 

}

 

我们这个项目是通过两个属性来代表这个权限的,所以我们这里也需要两个属性。

public @interface Permission {

    String module();

    String privilege();

}

标注@Retention

通过这个注解来表标注:这个注解的配置在这个java类中的存放的范围,比如:

@Retention(RetentionPolicy.SOURCE)
只能保留在源代码上面,一但被编译成class之后这个注解就会丢失

@Retention(RetentionPolicy.CLASS)

在源代码中和编译过后的class中都回存在这个注解,但是当这个类被装载进java虚拟机后,这个注解就会丢失了

@Retention(RetentionPolicy.RUNTIME)

代表这个注解要保留至运行期

所以我们这里一定要标注为运行期

@Retention(RetentionPolicy.RUNTIME)

public @interface Permission {

    String module();

    String privilege();

}

@Target

用来标识这个注解他可以标注在什么地方。

@Target({ElementType.FIELD})

可以标注在字段上面

@Target({ElementType.FIELD,ElementType.METHOD})

也可以标注在方法上面

@Target({ElementType.FIELD,ElementType.METHOD,ElementType.TYPE})

也可以标注在类型上面

我们这里只需标注在方法上面就可以了:

@Retention(RetentionPolicy.RUNTIME)

@Target({ElementType.METHOD})

public @interface Permission {

      String module();

      String privilege();

}

如果你有好的win10资讯或者win10教程,以及win10相关的问题想要获得win10系统下载的关注与报道。
欢迎加入发送邮件到657025171#qq.com(#替换为@)。期待你的好消息!
北京pk10猜冠军手机版 北京pk10彩票控 北京pk10彩票公式 北京快乐8现场直播图 北京pk10挂机软件 北京pk10官网下载
北京赛车pk10冠军公式 北京pk10冠军走势图 北京赛车pk10冠军公式 北京赛车pk10源码下载 keras 输出预测结果 今日河南481开奖结果
pk10冠军技巧 北京赛车pk10冠军公式 北京pk10冠军走势图 北京pk10冠军选号技巧 北京pk10冠军走势图 北京pk10冠军选号技巧
北京pk10计划qq群大全 北京快乐8压大小的方法 北京快乐28开奖 pk10冠亚和值高手技巧 北京赛车pk10必胜玩法
早餐加盟哪家好 早点加盟哪家好 早点车加盟 早点加盟项目 早餐粥车加盟
特色早餐店加盟 早餐免费加盟 春光早餐加盟 传统早餐店加盟 书店加盟
早餐连锁 加盟 早餐免费加盟 早餐粥车加盟 早点店加盟 早餐店 加盟
春光早餐加盟 豆浆早餐加盟 连锁早餐加盟 早点粥加盟 早点加盟店10大品牌
三分彩计划软件 2018年六肖中特 幸运飞艇彩票 北京赛车pk10开奖直播 彩票开奖号码
北京赛车pk10软件最新版 老11选5是怎么回事 印度国家彩票官网 极速赛车8中文游戏 分分彩四星计划刷大底技巧
北京11选5奖金分配 贵州快三开奖走势图 新疆福利彩票时时开奖 秒速时时彩预测 信誉最好的时时彩平台
吉林11选5走 贵州快三玩法 东方6加1截止时间 湖北11选五 下彩网