Java注解在注解声明中执行一个方法(用于android)

标签 java android methods annotations

我对注释术语还很陌生。 我已经阅读了一些资料,得出的结论是没有回答我的问题。 也许我使用错误的搜索进行了谷歌搜索。也许我忽略了,或者我只是一无所知..

无论如何,这就是交易。

我正忙着编写一个需要“角色验证”的应用程序。

为此,我想使用注释。

所以一些事情是这样的:

@interface Validate (){

}

我的目标是实现以下目标:

public @interface Validate() {
   public Validate() {
      //Do validation stuff
     return true/false
   }
}

所以基本上我想在注释中定义方法。 我希望能够打电话

@Validate
public void methodThatRequiresAdminRole() {
  doStuff();
}

只有管理员才能进入此方法。否则会产生错误。

所以如果@validate返回true,该方法应该被执行

对不起,如果我真的不清楚。我不太确定如何正确地询问我想要什么。 所以我希望这些例子能说明问题。

希望能尽快阅读提示,甚至可能得到答案。 谢谢。

** 编辑 **

我需要强调一个事实,即代码必须在 android 应用程序上使用。 所以我宁愿不要使用不适用于 android 的奇怪框架。我可以毫无问题地添加自定义库,无需任何类型的应用程序框架即可提供功能。

最佳答案

注释是元数据。您需要编写的是注释处理器。注释本身无法完成验证逻辑。注释处理器将查看注释,然后进行验证并控制应用程序流程。这个 SO 答案有很好的解释 Can Java Annotations help me with this?

还需要给注解加上@Retention(RetentionPolicy.RUNTIME)注解,这样注解信息才会一直保留到运行时。

@Retention(RetentionPolicy.RUNTIME) 
public @interface Validate() {
}

关于Java注解在注解声明中执行一个方法(用于android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7513549/

相关文章:

java - 如何阻止 Apache httpd 拒绝 HTTP PATCH 请求?

java - 如何访问接收器类型参数的类型注释

java - 从构造函数调用抽象方法的安全替代方案

android - 运动布局不动画不是其直接子级的 View

javascript - 这在 javascript 私有(private)方法中指的是什么

java - 为 RESTful web 服务设置 MySQL 和 Apache

安卓导航 View : reduce space between icon and text and `itemBackground` not working

android - 使用 Xpath 在 Android 中解析 XMl

java - 方法重载与否?

Javascript setInterval 只运行一次