如何在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
相关产品推荐
相关产品推荐

