如何用Jackson库编写通用的Kotlin Json映射器?

问题描述

我尝试过Kotlin和泛型,并希望基于Jackson制作一个泛型JSON映射器,以实际上传递任何类并获取所需类的实例。

带有泛型的JsonConfig的示例:

@Component
class JsonConfig {

    private val logger = LoggerFactory.getLogger(JsonConfig::class.java)

    private val mapper = jacksonObjectMapper()

    init {
        mapper.registerModule(KotlinModule())
    }

    inline fun <reified T : Any> toType(json: String): T = json(T::class,json)

    fun <T: Any> json(cls: KClass<T>,json: String): T {
        return mapper.readValue<T::class>(json)
    }
}

示例中基于Kotlin generics docs代码

我无法使其正常运行,因此问题如下。

  • 我走对了吗?
  • 是否可以使用Kotlin和泛型来实现此解决方案?
  • 是否可以用Jackson来做,还是应该更换工具?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)