基于科林地图的属性和jackson不工作 – 委托点不同的地图,即地图属性

我试图通过使用委托属性将一些结构引入到我们当前的模型中,并且发现了这种奇怪的行为

为了简单,可以说我们有这个类:

class Test{ val data:MutableMap = mutableMapOf() var classProp:String by data } 

和这个字符串"{\"data\":{\"classProp\":\"propValue\"}}"

在调试中使用jackson映射器(带或不带kotlin模块和kotlinreflection ) 调试variableswatch

你可以看到属性数据指向了一个不同的对象,然后是classProp的委托

  1. 你能告诉我做错了什么吗?
  2. jackson如何将一个新对象设置为已经初始化的val
  3. 我可以命令jackson使用现有的地图,而不是创建一个新的地图

谢谢