检查注释是否属于特定类型

2024-04-27

我正在使用反射来查看附加到类属性的注释是否属于特定类型。目前我正在做的:

if("javax.validation.Valid".equals(annotation.annotationType().getName())) {
   ...
}

这让我觉得有点麻烦,因为它依赖于一个完全限定的类名字符串。如果命名空间将来发生变化,这可能会导致细微的错误。

我想要做:

if(Class.forName(annotation.annotationType().getName()).isInstance(
     new javax.validation.Valid()
)) {
   ...
}

But javax.validation.Valid是一个抽象类,不能被实例化。有没有办法模拟instanceof(或者基本上使用isInstance)针对接口或抽象类?


你只是在寻找

if (annotation.annotationType().equals(javax.validation.Valid.class)){}

?

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

检查注释是否属于特定类型 的相关文章

随机推荐

  • 如何从ContainerResponseFilter内部获取源地址/ip

    我正在编写一个日志过滤器 用于记录在 Jersey 中运行的 Web 应用程序的所有 HTTP 请求 响应 ContainerResponseFilter似乎是一个直接的解决方案 我已经设法让它发挥作用 下一步是记录请求的 IP 有没有办法
  • SQL持续时间计算

    我有一张给定时间的历史公交车位置表 每秒记录一次 该架构如下所示 BusID int not null BreadcrumbID int not null identity 1 1 BusStopID int null Timestamp
  • 是否有可能使用 XQuery 生成随机数? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我必须使用 XQuery 生成一系列
  • require_once 中的相对路径不起作用

    我有以下结构 otsg gt class gt authentication php gt database php gt user php gt include gt config inc php gt encryption php gt
  • DLLImport C++ 函数,以 char* 作为输入或输出参数

    我有两个想要 DllImport 的 C 函数 bool SendString const char pSendStr long strSize bool ReadString char pReadStr long readStrSize
  • JQuery .submit() 在 IE9 中失败

    下面是一个 Jsfiddle 和最近提出的问题的链接 如果您在 FF 或 Chrome 中进入 jsfiddle 页面并单击 Click Me 您可以选择一个文件 一旦确定该文件 页面将查找 php 脚本 在 IE 中 它不会查找 php
  • TOAuth2Authenticator:如何刷新过期的令牌?

    我一定是错过了什么 我一直在尝试使用新的 对我来说是新的 来自delphi xe2环境 TOAuth2Authenticator TRESTClient TRESTRequest TRESTResponse组件来刷新过期的OAUTH2令牌
  • junit-vintage-engine 和 junit-jupiter-engine 之间的区别?

    这是一个双重问题 有什么区别junit vintage engine and junit jupiter engine Spring Boot 入门项目排除了junit vintage engine 是强制使用junit jupiter e
  • SpringBoot - 无法解析@RunWith - 找不到符号

    Spring Boot 项目 在 build gradle 中 dependencies implementation com google code gson gson 2 7 implementation com h2database
  • gulp-sass 可以解决 load_path 支持吗?

    问题 我正在使用 gulp sass 并想定义一个 load path 这样我就不必有很长的 import 规则 voor Bower 依赖项 例如 import normalize 代替 import bower components b
  • .net/C# 的 Html 解析器和对象模型

    我希望使用 net 来解析 html 以测试或断言其内容 IE HtmlDocument doc GetDocument 一些 html 列表表单 doc Forms 链接 link doc GetLinkByText 新客户 这个想法是允
  • 如何将一个目录中的所有文件移动到多个具有给定文件数量的目录中?

    我有一个包含超过 27000 张图像的目录 我想将这些文件分成文件夹 每个文件夹包含大约 500 张图像 它们如何排序并不重要 我只是想将它们分开 一个 简单 的 find xargs 就可以了 find maxdepth 1 type f
  • 关于 GK 成就的完成百分比

    经过测试 我发现GKAchievement的percentComplete类型虽然是double 但在苹果的帮助文档中合法值是在0 0到100 0之间 但是如果你向苹果服务器报告percentComplete 1 5 下次你将得到值perc
  • Visual Studio 编辑器边距中的蓝线

    使用 Visual Studio 时 我在页边空白处看到这些蓝线 我知道黄线和绿线表示编辑 但在蓝线上找不到任何内容 有谁知道他们的意思吗 Visual Studio 使用三种颜色来跟踪变化 yellow 保存前进行更改 green 保存后
  • Windows 7 SDK安装失败

    我好像完全无法安装Windows 7 SDK http en wikipedia org wiki Microsoft Windows SDK到我的机器上 我在网上找到的唯一解决方案是进行一系列注册表更改 我已经这样做了 仍然没有成功 这是
  • 部分类继承

    我正在为 Windows Phone 制作一个单位转换器 但我在类继承方面遇到了一些问题 我有课Measurement这应该是我的程序中图形内容的顶级 public class Measurement PhoneApplicationPag
  • matplotlib:Humor Sans 无法正确显示重音

    如果我选择 Humor Sans 这就是我从 matplotlib 得到的结果 因此 DIST NCIA 显示为 DIST NCIA 与其他字体一起显示效果很好 代码在这里 coding utf 8 from matplotlib impo
  • 序列化 - 如何保护序列化的 JAVA 对象?

    如果通过网络发送序列化对象 如何保护序列化对象的安全 我怀疑黑客可能会中断 破解我的数据 谁能详细讲述如何实现这一点 本演示介绍了攻击者如何有效地篡改 Java 序列化流 https www owasp org images e eb OW
  • Numpy 逐元素点积

    有没有一种优雅的 numpy 的方法来按元素应用点积 或者如何将下面的代码翻译成更好的版本 m0 shape 5 3 2 2 m1 shape 5 2 2 r np empty 5 3 2 2 for i in range 5 for j
  • 检查注释是否属于特定类型

    我正在使用反射来查看附加到类属性的注释是否属于特定类型 目前我正在做的 if javax validation Valid equals annotation annotationType getName 这让我觉得有点麻烦 因为它依赖于一