注释默认“null”值

2024-03-06

是否可以指定默认为 null 的注释?

我想要实现的是类似可选注释属性的东西。

例如

public @interface Foo {

    Config value();

}


public @interface Config {

    boolean ignoreUnknown() default false;
    int steps() default 2;
}

我想使用 @Foo (不指定值,所以它应该是某种可选的),我也希望能够写这样的东西:

@Foo (
    @Config(
        ignoreUnknown = true,
        steps = 10
    )
)

是否可以通过注释来做类似的事情?

我不想做这样的事情

public @interface Foo {

   boolean ignoreUnknown() default false;
   int steps() default 2;
}

因为我希望能够区分属性是否已设置(以及是否具有默认值)。

描述起来有点复杂,但我正在开发一个生成 Java 代码的小型注释处理器。然而,在运行时,我想设置一个默认配置,该配置应该用于所有 @Foo,除了那些使用 @Config 设置自己的配置的人之外。

所以我想要的是这样的:

public @interface Foo {

       Config value() default null;

 }

但据我所知这是不可能的,对吧?有人知道这种可选属性的解决方法吗?


不,你不能使用null用于注释属性值。但是,您可以使用数组类型并提供一个空数组。

public @interface Foo {
    Config[] value();  
}
...
@Foo(value = {})

or

public @interface Foo {
    Config[] value() default {};  
}
...
@Foo
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

注释默认“null”值 的相关文章

  • 用于解析和构建逻辑表达式的 Java 库

    我正在寻找一个 Java 开源库来解析和构建类似 SQL 的表达式 例如评估表达式的有效性 例如 a x or y and b z 另外我想要一个用于构建或扩展表达式的 API 就像是 Expression exp new Expressi
  • 策略模式还是命令模式?

    假设我有一个金融交易列表 我需要针对这些交易执行一系列验证规则 一个例子是我有一笔购买产品的交易 但是首先我需要验证交易中的帐户是否有足够的可用资金 产品没有售完等 由于这些规则 交易将是标记为拒绝 并应指定错误代码 当然 我正在考虑用一个
  • 将构造函数作为参数传递给方法

    我是java新手 开始研究构造函数 我看到一些构造函数作为参数传递给方法的示例 请告诉我当构造函数作为参数传递给方法时会发生什么 或者建议我一些链接 我可以在其中获得有关使用构造函数的足够知识 根据您需要传递构造函数的目的 您可以考虑传递供
  • 如何在url请求中发送数组

    我的要求如下 我想给出演员姓名 开始日期 结束日期并获取他在该时期出演的所有电影 因此 我的服务请求是这样的 http localhost 8080 MovieDB GetJson name Actor startDate 20120101
  • 如何作为应用程序发布到页面?

    所以 我有一个应用程序 Facebook 应用程序实体 并且我有一个页面 我想使用应用程序通过java代码 通过restfb或任何其他建议 发布到页面 看起来我错过了页面授予应用程序发布权限的阶段 不知道该怎么做 谢谢你们 乌里 您只能 作
  • 最快的高斯模糊实现

    如何以最快的速度实施高斯模糊 http en wikipedia org wiki Gaussian blur算法 我要用Java来实现它 所以GPU http en wikipedia org wiki Graphics processi
  • 重写 getPreferredSize() 会破坏 LSP

    我总是在这个压倒一切的网站上看到建议getPreferredSize 而不是使用setPreferredSize 例如 如前面的线程所示 对于固定大小的组件 使用重写 getPreferredSize 而不是使用 setPreferredS
  • 本地开发的 Azure Functions 扩展包版本问题

    我有一个带有队列触发器的 Java 11 Azure 函数 该函数在部署到 Azure 时按预期工作 并正确从定义的服务总线主题中提取消息 但是 运行相同的功能locally除非我回滚版本 否则不起作用Azure Functions 绑定扩
  • 在java中将字符串日期转换为美国格式

    我有下面的代码 其中日期为字符串类型 我必须将其设置为美国格式 所以下面我已经展示了它 private static final SimpleDateFormat usOutputDate new SimpleDateFormat MM d
  • 如何在 HandlerInterceptorAdapter 中添加 HttpServletRequest 标头?

    我正在尝试将授权标头添加到我的请求中 作为我们切换环境时的临时解决方法 我试图在扩展 HandlerInterceptorAdapter 的拦截器中处理它 我使用 MutableHttpServletRequest 类制作here http
  • 如何在 JPA 和 Hibernate 中将数据库生成的列值定义为只读字段?

    使用 MariaDB 10 2 可以定义日期时间的默认值 例如创建和最后修改 我应该如何将此列作为只读字段访问 因为这个值应该只在数据库的控制之下 并且不应该从代码中修改 但我想在代码中读取这个属性 这很简单 只需设置insertable
  • 正确签名的 JNLP 应用程序无法在 Java 7 中运行

    我有一个 JNLP 应用程序 由于证书过期需要更新 我有一个经过 CA 验证的新证书 我已将新证书导入到我的密钥库中 我已导入完整的证书链 我的构建文件对构建中的 jar 进行签名和时间戳
  • 如何以编程方式创建 CardView

    我正在开发一个 Android 应用程序Java Android Studio 我想在活动中创建CardView以编程方式 我想将以下属性设置为CardView layout width wrap content layout row 0
  • 当底层连接是有状态时如何使用 Apache HttpClient?

    我在谷歌上搜索了很多关于如何使用 HttpClient 进行多线程处理的信息 他们中的大多数人建议使用 ThreadSafeClientConnManager 但我的应用程序必须登录某个主机 登录表单页面 以便 HttpClient 获得底
  • Android UnityPlayerActivity 操作栏

    我正在构建一个 Android 应用程序 其中包含 Unity 3d 交互体验 我已将 Unity 项目导入 Android Studio 但启动时该 Activity 是全屏的 并且不显示 Android 操作栏 我怎样才能做到这一点 整
  • java.lang.IllegalStateException - 提交响应后无法创建会话

    我在我的项目中使用 JSF PrimeFaces 我为此准备了一个Maven项目 当我编译项目并加载主页后 我收到以下异常 java lang IllegalStateException Cannot create a session af
  • Collections.sort(list) 和 list.sort(Comparator) 之间的区别

    有什么理由让我应该选择Collections sort list 方法而不是简单地调用list sort 内部Collections sort只是调用sort的方法List无论如何 上课 令人惊讶的是几乎每个人都告诉我使用Collectio
  • Axis2 错误:要输出的文本中的空白字符 (0x4) 无效

    我创建了一个 Java 客户端 使用 Axis2 1 7 6 作为代码生成器与 SOAP Web 服务进行交互 问题在于客户端的某些输入抛出异常并显示以下消息 org apache axis2 AxisFault Invalid white
  • spring data jpa复合键重复键记录插入导致更新

    我有一个具有复合键的实体 我试图通过使用 spring data jpa 存储库到 mysql 数据库来持久化它 如下所示 Embeddable public class MobileVerificationKey implements S
  • mybatis:使用带有 XML 配置的映射器接口作为全局参数

    我喜欢使用 XML 表示法来指定全局参数 例如连接字符串 我也喜欢 Mapper 注释 当我尝试将两者结合起来时 我得到这个例外 https stackoverflow com questions 4263832 type interfac

随机推荐

  • 为 Postgresql 安装 Npgsql.dll

    所以我在安装 npgsql dll 和 mono security dll 时遇到问题 我长期以来一直试图解决这个问题 请帮忙 这是我已完成的步骤 从以下位置下载 zip 文件https github com npgsql npgsql h
  • 在 ListView 数据模板 WPF 中绑定 UserControl

    所以我有这个问题 我创建了一个用户控件 基本上是一个文本框和标签 我可以使用依赖属性来绑定此用户控件 我有一个 ListView 可以在其中在数据模板中放置一个文本框并将 文本 属性绑定到绑定值 到目前为止 一切都很好 但现在 如果我尝试将
  • 重载解引用运算符

    我试图重载取消引用运算符 但编译以下代码会导致错误 initializing cannot convert from X to int struct X void f int operator const return 5 int main
  • 在 ASP.NET 服务器端验证 Recaptcha 2(无 CAPTCHA reCAPTCHA)

    新的验证码 2 http googleonlinesecurity blogspot com 2014 12 are you robot introducing no captcha html看起来很有希望 但我没有找到在 ASP NET
  • 在 Symfony 2.0.x 中自动加载非 PSR0 库

    The Symfony 2 0 Autoloader期望它可以处理的库遵循PSR0 or PEAR自动加载文件时的标准 如果您有一个不遵循这两个标准中任何一个的旧库 在我的例子中 类文件的命名类似于 name class php 您将如何处
  • 将 ui-router 与 Bootstrap-ui 模式结合使用

    我知道这已经被讨论过很多次了 大多数文章都引用了这段代码 AngularJS 中带有自定义 URL 的模态窗口 https stackoverflow com a 21213422 1031184 但我就是不明白 我觉得这根本不是很清楚 我
  • 如何在 Zend Framework 中的布局中包含页眉和页脚?

    我想让 Zend Layout 包含 header phtml 和 footer phtml 以及 layout name phtml 我怎么做 我尝试阅读Zend Layout Zend Layout Controller Plugin
  • 如何在 android 中制作具有自定义布局的 google plus 按钮?

    我想为我的 google plus 按钮创建自定义布局 有什么想法吗 我尝试调用 google plus 按钮的 OnClickEvent 这不起作用 并且尝试更改背景图像 源代码
  • Angular module().factory() 不是 concat (gulp) 之后的函数

    试图连接 丑化我的angular应用程序使用gulp在过去的几个小时里 我将整个过程简化为简单的 concat 甚至将角度文件从 concat 过程中删除到单独的
  • 如何使用 clang-format 3.9 忽略文件或目录

    我目前正在使用 travis ci 在补丁进入 github 时检查补丁 并试图找出 clang format 3 9 是否有 因为 travis ci 目前仅支持最新的 ubuntu 14 04 在扫描时忽略整个目录或文件变化 我的 tr
  • ASP.NET Web API 的不同返回类型

    我正在尝试使用 ASP NET MVC 4 Web API 通过 HTTP 编写真正的 RESTful Web 服务 我当前面临的挑战是根据我的状态代码返回不同的返回类型 实体主体 例如 对于资源 Hammer 我有一个 NET 模型类 H
  • 在 HTML 画布上为 T 恤填充颜色并相应地更改文本颜色

    我在画布上绘制了一件 T 恤 当前正在尝试当用户在上面的菜单上选择一种颜色时填充它 此外 我希望 T 恤上的文字相应地更改 例如 如果选择黑色 则 T 恤文字颜色应为白色 这可能吗 到目前为止的代码片段 T shirt color br
  • 如何使用 python Imaging 创建新的彩色图像?

    我想创建一个新图像 背景颜色 这个工作 img Image new RGB width height red 但我想定制颜色 当我将 红色 更改为 228 150 150 时 它不起作用 你有想法这样做吗 这对我有用 请注意 颜色元组不在引
  • 如何从 numpy.ndarray 中随机选择一些非零元素?

    我已经实现了一个矩阵分解模型 比如 R U V 现在我要训练和测试这个模型 为此 给定一个稀疏矩阵 R 缺失值为零 我想首先在训练中隐藏一些非零元素 并在稍后使用这些非零元素作为测试集 如何从 numpy ndarray 中随机选择一些非零
  • 标头已发送...哪里? [复制]

    这个问题在这里已经有答案了 有人知道如何在此脚本中发送标头吗 我正在使用此脚本来验证表单 因此 它导致发送标头 因此当我在实现此脚本后尝试引导用户时 它会导致正常的 警告 无法修改标头信息 标头已发送 消息 这是脚本
  • 使用 jQuery 作为依赖项而不用 RequireJS 加载 jQuery?

    考虑以下页面 当未加载 RequireJS 时 如何使用 jQuery 作为 RequireJS 模块的依赖项 我知道jQuery 暴露了自己 https github com jquery jquery blob 861a45b8fffc
  • 如何在CSS中对齐两列文本

    我在排列一些文本时遇到一些麻烦 我需要两列 一列包含数字 一列包含文本 如下所示 1 条目一2 条目二3 条目三4 条目五5 条目六 左栏是 Georgia 右栏是 Arial 字体大小略有不同 我可以为每一行设置一个容器 div 并将数字
  • Angular 2 - 如何使用配置文件

    在 ZF2 中工作时 我们使用的配置文件可能因开发人员 生产环境和登台环境而异 它非常方便 因此我想在 Angular 2 中复制它 它在 ZF2 中的工作原理 我们有一个配置文件夹 其中的配置名为 settings local php 和
  • Django 视图内的 BeautifulSoup 导致 WSGI 超时

    由于一个奇怪的原因 当我实例化一个美丽汤Django 视图中的对象 WSGI 超时 任何帮助都是值得赞赏的 因为我把头撞在墙上几个小时 却找不到这个问题的根源 风景 def index request soup BeautifulSoup
  • 注释默认“null”值

    是否可以指定默认为 null 的注释 我想要实现的是类似可选注释属性的东西 例如 public interface Foo Config value public interface Config boolean ignoreUnknown