You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Kotlin中获取枚举值的Jackson JsonProperty注解值?

获取枚举值的JsonProperty注解值

我正在构建一个Schema生成器,想要获取枚举值的JsonProperty注解值。例如有如下枚举类:

enum class Size {
    @JsonProperty("really-tall") TALL,
    @JsonProperty("really-grande") GRANDE;
}

希望得到列表 "really-tall", "really-grande"。请问如何访问枚举的注解?感谢!


补充实现方案

基于相关思路实现的通用KType解决方案:

return (jvmErasure.java as Class<Enum<*>>)
  .enumConstants
  .map {
    // 优先获取JsonProperty注解的值,不存在则使用枚举名称
    it.javaClass.getField(it.name).getAnnotation(JsonProperty::class.java)?.value 
      ?: it.name
  }

内容的提问来源于stack exchange,提问作者Rani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 10:18:18